diff options
author | Brad King <brad.king@kitware.com> | 2017-04-21 18:29:27 (GMT) |
---|---|---|
committer | Brad King <brad.king@kitware.com> | 2017-04-21 19:04:33 (GMT) |
commit | 4f5bbbeab9bbe7dd3aa3bd9be5d201ed2447bad1 (patch) | |
tree | 5b9afb2c7559f9a69137cbdcace548e9540c16bb /Source/cmPolicies.cxx | |
parent | 294cf948dc37799e1980685afbf1fa585ad5b0fb (diff) | |
download | CMake-4f5bbbeab9bbe7dd3aa3bd9be5d201ed2447bad1.zip CMake-4f5bbbeab9bbe7dd3aa3bd9be5d201ed2447bad1.tar.gz CMake-4f5bbbeab9bbe7dd3aa3bd9be5d201ed2447bad1.tar.bz2 |
Add deprecation warnings for policies CMP0036 and below
The OLD behaviors of all policies are deprecated, but only by
documentation. Add an explicit deprecation diagnostic for some policies
to encourage projects to port away from setting policies to OLD.
Diffstat (limited to 'Source/cmPolicies.cxx')
-rw-r--r-- | Source/cmPolicies.cxx | 16 |
1 files changed, 16 insertions, 0 deletions
diff --git a/Source/cmPolicies.cxx b/Source/cmPolicies.cxx index 837557b..da3edd4 100644 --- a/Source/cmPolicies.cxx +++ b/Source/cmPolicies.cxx @@ -275,6 +275,22 @@ std::string cmPolicies::GetPolicyWarning(cmPolicies::PolicyID id) return msg.str(); } +std::string cmPolicies::GetPolicyDeprecatedWarning(cmPolicies::PolicyID id) +{ + std::ostringstream msg; + /* clang-format off */ + msg << + "The OLD behavior for policy " << idToString(id) << " " + "will be removed from a future version of CMake.\n" + "The cmake-policies(7) manual explains that the OLD behaviors of all " + "policies are deprecated and that a policy should be set to OLD only " + "under specific short-term circumstances. Projects should be ported " + "to the NEW behavior and not rely on setting a policy to OLD." + ; + /* clang-format on */ + return msg.str(); +} + ///! return an error string for when a required policy is unspecified std::string cmPolicies::GetRequiredPolicyError(cmPolicies::PolicyID id) { |