Ninja: fix usage of cldeps with ctest launchers

This commit is contained in:
Mathias Gaunard 2012-11-30 03:38:25 +01:00
parent 965358fcf6
commit 9fc2e20244
1 changed files with 9 additions and 7 deletions

View File

@ -423,17 +423,19 @@ cmNinjaTargetGenerator
std::vector<std::string> compileCmds; std::vector<std::string> compileCmds;
cmSystemTools::ExpandListArgument(compileCmd, compileCmds); cmSystemTools::ExpandListArgument(compileCmd, compileCmds);
if(useClDeps)
{
std::string cmdPrefix = clDepsBinary + lang + " $in \"$DEP_FILE\" $out " +
clShowPrefix + clBinary;
compileCmds.front().insert(0, cmdPrefix);
}
for (std::vector<std::string>::iterator i = compileCmds.begin(); for (std::vector<std::string>::iterator i = compileCmds.begin();
i != compileCmds.end(); ++i) i != compileCmds.end(); ++i)
this->GetLocalGenerator()->ExpandRuleVariables(*i, vars); this->GetLocalGenerator()->ExpandRuleVariables(*i, vars);
std::string cmdLine; std::string cmdLine =
if(useClDeps) this->GetLocalGenerator()->BuildCommandLine(compileCmds);
{
cmdLine = clDepsBinary + lang + " $in \"$DEP_FILE\" $out " +
clShowPrefix + clBinary;
}
cmdLine += this->GetLocalGenerator()->BuildCommandLine(compileCmds);
// Write the rule for compiling file of the given language. // Write the rule for compiling file of the given language.