diff options
author | Michael Scott <michael.scott250@gmail.com> | 2015-11-29 13:34:07 (GMT) |
---|---|---|
committer | Brad King <brad.king@kitware.com> | 2015-12-01 15:22:51 (GMT) |
commit | aac633d5e5765bb6b51e31364325ae7d916f021c (patch) | |
tree | e7cd3773e3936f6af088416645cb6cde7992fc2d /Source/cmake.cxx | |
parent | e8974b62d7883adf100d4c6ad90a0fbf682aaa91 (diff) | |
download | CMake-aac633d5e5765bb6b51e31364325ae7d916f021c.zip CMake-aac633d5e5765bb6b51e31364325ae7d916f021c.tar.gz CMake-aac633d5e5765bb6b51e31364325ae7d916f021c.tar.bz2 |
Explicitly enable deprecated warnings by default.
Explicitly enable deprecated warnings by default, via the
cmake::GetSuppressDeprecatedWarnings method, which signals
suppression is turned off unless the CMake variables are set
as required.
Add tests and update the documentation for the new
functionality.
Diffstat (limited to 'Source/cmake.cxx')
-rw-r--r-- | Source/cmake.cxx | 24 |
1 files changed, 20 insertions, 4 deletions
diff --git a/Source/cmake.cxx b/Source/cmake.cxx index 6481c78..c0a1196 100644 --- a/Source/cmake.cxx +++ b/Source/cmake.cxx @@ -2581,10 +2581,7 @@ bool cmake::IsMessageTypeVisible(cmake::MessageType t) } else if (t == cmake::DEPRECATION_WARNING) { - // if CMAKE_WARN_DEPRECATED is on, show the message, otherwise suppress it - const char* warnDeprecated = this->State->GetInitializedCacheValue( - "CMAKE_WARN_DEPRECATED"); - if(cmSystemTools::IsOff(warnDeprecated)) + if (this->GetSuppressDeprecatedWarnings()) { isVisible = false; } @@ -2916,3 +2913,22 @@ bool cmake::GetSuppressDevWarnings(cmMakefile const* mf) return cmSystemTools::IsOn(cacheEntryValue); } } + +bool cmake::GetSuppressDeprecatedWarnings(cmMakefile const* mf) +{ + /* + * The suppression CMake variable may be set in the CMake configuration file + * itself, so we have to check what its set to in the makefile if we can. + */ + if (mf) + { + return (mf->IsSet("CMAKE_WARN_DEPRECATED") && + !mf->IsOn("CMAKE_WARN_DEPRECATED")); + } + else + { + const char* cacheEntryValue = this->State->GetCacheEntryValue( + "CMAKE_WARN_DEPRECATED"); + return cacheEntryValue && cmSystemTools::IsOff(cacheEntryValue); + } +} |