Make Toolchain::makeCommand return a full path to the make command

Requires passing in the environment to use. Also now the mingw toolchain
has a fall back to make.exe on windows. And the msvc toolchain falls
back to nmake even if the "use Jom" option is used.

Task-number: QTCREATORBUG-7831

Change-Id: I850a96da41a380eef8c6992e27a72fb63958c456
Reviewed-by: Orgad Shaneh <orgads@gmail.com>
Reviewed-by: Peter Kümmel <syntheticpp@gmx.net>
This commit is contained in:
Daniel Teske
2012-09-11 15:59:17 +02:00
parent f89352d7a8
commit d3c0557444
14 changed files with 89 additions and 58 deletions

View File

@@ -189,7 +189,7 @@ bool MakeStep::init()
pp->setMacroExpander(bc->macroExpander());
pp->setEnvironment(bc->environment());
pp->setWorkingDirectory(bc->buildDirectory());
pp->setCommand(tc ? tc->makeCommand() : QLatin1String("make"));
pp->setCommand(tc ? tc->makeCommand(bc->environment()) : QLatin1String("make"));
pp->setArguments(arguments);
setOutputParser(new GnuMakeParser());
@@ -295,6 +295,7 @@ MakeStepConfigWidget::MakeStepConfigWidget(MakeStep *makeStep) :
makeStep, SLOT(setAdditionalArguments(QString)));
connect(makeStep, SIGNAL(additionalArgumentsChanged(QString)),
this, SLOT(updateDetails()));
connect(m_makeStep->project(), SIGNAL(environmentChanged()), this, SLOT(updateDetails()));
}
QString MakeStepConfigWidget::displayName() const
@@ -320,7 +321,7 @@ void MakeStepConfigWidget::updateDetails()
param.setMacroExpander(bc->macroExpander());
param.setEnvironment(bc->environment());
param.setWorkingDirectory(bc->buildDirectory());
param.setCommand(tc->makeCommand());
param.setCommand(tc->makeCommand(bc->environment()));
param.setArguments(arguments);
m_summaryText = param.summary(displayName());
} else {