diff options
author | Bill Hoffman <bill.hoffman@kitware.com> | 2008-03-12 02:50:35 (GMT) |
---|---|---|
committer | Bill Hoffman <bill.hoffman@kitware.com> | 2008-03-12 02:50:35 (GMT) |
commit | fc26c1459caa61c79b9076e3ca85905e45bbcbc9 (patch) | |
tree | a2182bd4f0250b73b8913b7fb9b4e8f334c9fc1a /Source | |
parent | b78997d71ddd68247f021bb258f6ffd1e344057b (diff) | |
download | CMake-fc26c1459caa61c79b9076e3ca85905e45bbcbc9.zip CMake-fc26c1459caa61c79b9076e3ca85905e45bbcbc9.tar.gz CMake-fc26c1459caa61c79b9076e3ca85905e45bbcbc9.tar.bz2 |
ENH: add ability to suppress dev warnings to gui code
Diffstat (limited to 'Source')
-rw-r--r-- | Source/cmake.cxx | 32 | ||||
-rw-r--r-- | Source/cmake.h | 6 |
2 files changed, 25 insertions, 13 deletions
diff --git a/Source/cmake.cxx b/Source/cmake.cxx index e4d2ead..c6b4052 100644 --- a/Source/cmake.cxx +++ b/Source/cmake.cxx @@ -139,6 +139,7 @@ void cmNeedBackwardsCompatibility(const std::string& variable, cmake::cmake() { + this->SuppressDevWarnings = false; this->DebugOutput = false; this->DebugTryCompile = false; this->ClearBuildSystem = false; @@ -376,20 +377,11 @@ bool cmake::SetCacheArgs(const std::vector<std::string>& args) } else if(arg.find("-Wno-dev",0) == 0) { - this->CacheManager-> - AddCacheEntry("CMAKE_SUPPRESS_DEVELOPER_WARNINGS", "TRUE", - "Suppress Warnings that are meant for" - " the author of the CMakeLists.txt files.", - cmCacheManager::INTERNAL); + this->SuppressDevWarnings = true; } else if(arg.find("-Wdev",0) == 0) { - this->CacheManager-> - AddCacheEntry("CMAKE_SUPPRESS_DEVELOPER_WARNINGS", "FALSE", - "Suppress Warnings that are meant for" - " the author of the CMakeLists.txt files.", - cmCacheManager::INTERNAL); - + this->SuppressDevWarnings = false; } else if(arg.find("-U",0) == 0) { @@ -1885,6 +1877,23 @@ int cmake::HandleDeleteCacheVariables(const char* var) int cmake::Configure() { + if(this->SuppressDevWarnings) + { + this->CacheManager-> + AddCacheEntry("CMAKE_SUPPRESS_DEVELOPER_WARNINGS", "TRUE", + "Suppress Warnings that are meant for" + " the author of the CMakeLists.txt files.", + cmCacheManager::INTERNAL); + } + else + { + this->CacheManager-> + AddCacheEntry("CMAKE_SUPPRESS_DEVELOPER_WARNINGS", "FALSE", + "Suppress Warnings that are meant for" + " the author of the CMakeLists.txt files.", + cmCacheManager::INTERNAL); + } + int ret = this->ActualConfigure(); const char* delCacheVars = this->GetProperty("__CMAKE_DELETE_CACHE_CHANGE_VARS_"); @@ -2185,7 +2194,6 @@ int cmake::Run(const std::vector<std::string>& args, bool noconfigure) { this->AddCMakePaths(); } - // Add any cache args if ( !this->SetCacheArgs(args) ) { diff --git a/Source/cmake.h b/Source/cmake.h index b4d6036..416db7f 100644 --- a/Source/cmake.h +++ b/Source/cmake.h @@ -344,6 +344,10 @@ class cmake { this->CMakeEditCommand = s; } + void SetSuppressDevWarnings(bool v) + { + this->SuppressDevWarnings = v; + } protected: int HandleDeleteCacheVariables(const char* var); cmPropertyMap Properties; @@ -376,7 +380,7 @@ protected: std::string HomeOutputDirectory; std::string cmStartDirectory; std::string StartOutputDirectory; - + bool SuppressDevWarnings; std::set<cmStdString> WrittenFiles; ///! return true if the same cmake was used to make the cache. |