diff options
author | Brad King <brad.king@kitware.com> | 2009-02-02 14:36:53 -0500 |
---|---|---|
committer | Brad King <brad.king@kitware.com> | 2009-02-02 14:36:53 -0500 |
commit | 084e5a5e9e2886e2e4f7929e1d6f9fec87bdbc03 (patch) | |
tree | 37e54bea573516e6ec2f69567d16978df8371f47 /Source/cmMakefileTargetGenerator.cxx | |
parent | fd40f274201e59ab9ee96f9f20d8923229e437dd (diff) | |
download | cmake-084e5a5e9e2886e2e4f7929e1d6f9fec87bdbc03.tar.gz |
BUG: Fix preprocess and assembly rule expansion
The recent change to avoid expanding rule variables in informational and
'cd' commands broke the logical order in generation of preprocess and
assembly rules. This corrects the order.
Diffstat (limited to 'Source/cmMakefileTargetGenerator.cxx')
-rw-r--r-- | Source/cmMakefileTargetGenerator.cxx | 24 |
1 files changed, 12 insertions, 12 deletions
diff --git a/Source/cmMakefileTargetGenerator.cxx b/Source/cmMakefileTargetGenerator.cxx index 14f1a3de21..4e71b2c0d5 100644 --- a/Source/cmMakefileTargetGenerator.cxx +++ b/Source/cmMakefileTargetGenerator.cxx @@ -724,6 +724,12 @@ cmMakefileTargetGenerator std::vector<std::string> preprocessCommands; cmSystemTools::ExpandListArgument(preprocessRule, preprocessCommands); + std::string shellObjI = + this->Convert(objI.c_str(), + cmLocalGenerator::NONE, + cmLocalGenerator::SHELL).c_str(); + vars.PreprocessedSource = shellObjI.c_str(); + // Expand placeholders in the commands. for(std::vector<std::string>::iterator i = preprocessCommands.begin(); i != preprocessCommands.end(); ++i) @@ -738,12 +744,6 @@ cmMakefileTargetGenerator commands.insert(commands.end(), preprocessCommands.begin(), preprocessCommands.end()); - - std::string shellObjI = - this->Convert(objI.c_str(), - cmLocalGenerator::NONE, - cmLocalGenerator::SHELL).c_str(); - vars.PreprocessedSource = shellObjI.c_str(); } else { @@ -781,6 +781,12 @@ cmMakefileTargetGenerator std::vector<std::string> assemblyCommands; cmSystemTools::ExpandListArgument(assemblyRule, assemblyCommands); + std::string shellObjS = + this->Convert(objS.c_str(), + cmLocalGenerator::NONE, + cmLocalGenerator::SHELL).c_str(); + vars.AssemblySource = shellObjS.c_str(); + // Expand placeholders in the commands. for(std::vector<std::string>::iterator i = assemblyCommands.begin(); i != assemblyCommands.end(); ++i) @@ -795,12 +801,6 @@ cmMakefileTargetGenerator commands.insert(commands.end(), assemblyCommands.begin(), assemblyCommands.end()); - - std::string shellObjS = - this->Convert(objS.c_str(), - cmLocalGenerator::NONE, - cmLocalGenerator::SHELL).c_str(); - vars.AssemblySource = shellObjS.c_str(); } else { |