diff options
author | Brad King <brad.king@kitware.com> | 2008-06-03 13:55:28 (GMT) |
---|---|---|
committer | Brad King <brad.king@kitware.com> | 2008-06-03 13:55:28 (GMT) |
commit | e79b73d61f7523cf6ce4d989995ede808da212df (patch) | |
tree | 8bdccfa15bb84fe1e000ddc0915dc4dcbd85b29e /Source/cmMakefileTargetGenerator.cxx | |
parent | 4d5116c8a21c8fdaab13058dc039625bdab3d20d (diff) | |
download | CMake-e79b73d61f7523cf6ce4d989995ede808da212df.zip CMake-e79b73d61f7523cf6ce4d989995ede808da212df.tar.gz CMake-e79b73d61f7523cf6ce4d989995ede808da212df.tar.bz2 |
BUG: Include less content as input to "rule hash" computation.
- The rule hash should use only commands specified by the user.
- No make output (echo and progress) rules should be included.
- No outputs or dependencies need be included. The native build tool
will take care of them.
Diffstat (limited to 'Source/cmMakefileTargetGenerator.cxx')
-rw-r--r-- | Source/cmMakefileTargetGenerator.cxx | 8 |
1 files changed, 7 insertions, 1 deletions
diff --git a/Source/cmMakefileTargetGenerator.cxx b/Source/cmMakefileTargetGenerator.cxx index ea0d9b8..7d2450d 100644 --- a/Source/cmMakefileTargetGenerator.cxx +++ b/Source/cmMakefileTargetGenerator.cxx @@ -1116,6 +1116,10 @@ void cmMakefileTargetGenerator ->AppendEcho(commands, comment.c_str(), cmLocalUnixMakefileGenerator3::EchoGenerate); } + // Below we need to skip over the echo and progress commands. + unsigned int skip = static_cast<unsigned int>(commands.size()); + + // Now append the actual user-specified commands. this->LocalGenerator->AppendCustomCommand(commands, cc); // Collect the dependencies. @@ -1144,7 +1148,9 @@ void cmMakefileTargetGenerator // If the rule has changed make sure the output is rebuilt. if(!symbolic) { - this->GlobalGenerator->AddRuleHash(cc.GetOutputs(), depends, commands); + this->GlobalGenerator->AddRuleHash(cc.GetOutputs(), + commands.begin()+skip, + commands.end()); } } |