diff options
author | Brad King <brad.king@kitware.com> | 2015-03-20 20:43:21 (GMT) |
---|---|---|
committer | Brad King <brad.king@kitware.com> | 2015-03-20 21:40:12 (GMT) |
commit | bd9c7f9b2c788f9bf69c2ce4eb93d27212a6dfaa (patch) | |
tree | 8b089b3e0b7a47ed5adfc0c7a1b3a9abc8a175b0 /Source/cmPolicies.cxx | |
parent | ed8e30b00d032594fbb67d62f8bd4319ae6e5907 (diff) | |
download | CMake-bd9c7f9b2c788f9bf69c2ce4eb93d27212a6dfaa.zip CMake-bd9c7f9b2c788f9bf69c2ce4eb93d27212a6dfaa.tar.gz CMake-bd9c7f9b2c788f9bf69c2ce4eb93d27212a6dfaa.tar.bz2 |
Ninja: Add policy to require explicit custom command byproducts
Add policy CMP0058 to avoid generating 'phony' ninja rules for unknown
custom command dependencies. This requires projects to specify their
custom command byproducts explicitly. With this requirement we no
longer have to assume that unknown custom command dependencies are
generated and can instead simply assume they are source files expected
to exist when the build starts. This is particularly important in
in-source builds. It is also helpful for out-of-source builds to allow
Ninja to diagnose missing files before running custom command rules that
depend on them.
Diffstat (limited to 'Source/cmPolicies.cxx')
-rw-r--r-- | Source/cmPolicies.cxx | 5 |
1 files changed, 5 insertions, 0 deletions
diff --git a/Source/cmPolicies.cxx b/Source/cmPolicies.cxx index 720030b..592df8f 100644 --- a/Source/cmPolicies.cxx +++ b/Source/cmPolicies.cxx @@ -380,6 +380,11 @@ cmPolicies::cmPolicies() CMP0057, "CMP0057", "Disallow multiple MAIN_DEPENDENCY specifications for the same file.", 3,3,0, cmPolicies::WARN); + + this->DefinePolicy( + CMP0058, "CMP0058", + "Ninja requires custom command byproducts to be explicit.", + 3,3,0, cmPolicies::WARN); } cmPolicies::~cmPolicies() |