summaryrefslogtreecommitdiffstats
path: root/Source/cmMakefileTargetGenerator.cxx
diff options
context:
space:
mode:
authorBrad King <brad.king@kitware.com>2008-05-14 15:38:47 (GMT)
committerBrad King <brad.king@kitware.com>2008-05-14 15:38:47 (GMT)
commit600e5e274ea5e78989c9355685e97d6f4d6f28ec (patch)
treed101d1d699fbbdb3a2e36a581228cd0c56d2b72a /Source/cmMakefileTargetGenerator.cxx
parent3fb5602e547b4ae23ae9bdcc36be09bbc5f6fbea (diff)
downloadCMake-600e5e274ea5e78989c9355685e97d6f4d6f28ec.zip
CMake-600e5e274ea5e78989c9355685e97d6f4d6f28ec.tar.gz
CMake-600e5e274ea5e78989c9355685e97d6f4d6f28ec.tar.bz2
ENH: Add SKIP_RULE_DEPENDS option for add_custom_command()
- Allows make rules to be created with no dependencies. - Such rules will not re-run even if the commands themselves change. - Useful to create rules that run only if the output is missing.
Diffstat (limited to 'Source/cmMakefileTargetGenerator.cxx')
-rw-r--r--Source/cmMakefileTargetGenerator.cxx7
1 files changed, 5 insertions, 2 deletions
diff --git a/Source/cmMakefileTargetGenerator.cxx b/Source/cmMakefileTargetGenerator.cxx
index 3f4b866..05efc77 100644
--- a/Source/cmMakefileTargetGenerator.cxx
+++ b/Source/cmMakefileTargetGenerator.cxx
@@ -1122,8 +1122,11 @@ void cmMakefileTargetGenerator
this->LocalGenerator->AppendCustomDepend(depends, cc);
// Add a dependency on the rule file itself.
- this->LocalGenerator->AppendRuleDepend(depends,
- this->BuildFileNameFull.c_str());
+ if(!cc.GetSkipRuleDepends())
+ {
+ this->LocalGenerator->AppendRuleDepend(depends,
+ this->BuildFileNameFull.c_str());
+ }
// Check whether we need to bother checking for a symbolic output.
bool need_symbolic = this->GlobalGenerator->GetNeedSymbolicMark();