mirror of
https://github.com/Kitware/CMake.git
synced 2026-04-23 14:48:19 -05:00
Explicitly enable author (dev) warnings by default.
Explicitly enable author warnings by default, via the cmake::GetSuppressDevWarnings method, which signals suppression is turned off unless the CMake variables are set as required. Add test cases for author and deprecated messages displayed by default.
This commit is contained in:
@@ -43,7 +43,8 @@ bool cmMessageCommand
|
||||
}
|
||||
else if (*i == "AUTHOR_WARNING")
|
||||
{
|
||||
if (this->Makefile->IsOn("CMAKE_SUPPRESS_DEVELOPER_WARNINGS"))
|
||||
if (this->Makefile->GetCMakeInstance()->GetSuppressDevWarnings(
|
||||
this->Makefile))
|
||||
{
|
||||
return true;
|
||||
}
|
||||
|
||||
+20
-5
@@ -1580,6 +1580,7 @@ int cmake::Run(const std::vector<std::string>& args, bool noconfigure)
|
||||
{
|
||||
this->AddCMakePaths();
|
||||
}
|
||||
|
||||
// Add any cache args
|
||||
if ( !this->SetCacheArgs(args) )
|
||||
{
|
||||
@@ -2511,11 +2512,7 @@ bool cmake::IsMessageTypeVisible(cmake::MessageType t)
|
||||
}
|
||||
else if (t == cmake::AUTHOR_WARNING)
|
||||
{
|
||||
// if CMAKE_SUPPRESS_DEVELOPER_WARNINGS is on, suppress the message,
|
||||
// otherwise show it
|
||||
const char* suppressDevWarnings = this->State->GetCacheEntryValue(
|
||||
"CMAKE_SUPPRESS_DEVELOPER_WARNINGS");
|
||||
if(cmSystemTools::IsOn(suppressDevWarnings))
|
||||
if (this->GetSuppressDevWarnings())
|
||||
{
|
||||
isVisible = false;
|
||||
}
|
||||
@@ -2807,3 +2804,21 @@ void cmake::RunCheckForUnusedVariables()
|
||||
}
|
||||
#endif
|
||||
}
|
||||
|
||||
bool cmake::GetSuppressDevWarnings(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->IsOn("CMAKE_SUPPRESS_DEVELOPER_WARNINGS");
|
||||
}
|
||||
else
|
||||
{
|
||||
const char* cacheEntryValue = this->State->GetCacheEntryValue(
|
||||
"CMAKE_SUPPRESS_DEVELOPER_WARNINGS");
|
||||
return cmSystemTools::IsOn(cacheEntryValue);
|
||||
}
|
||||
}
|
||||
|
||||
@@ -308,6 +308,12 @@ class cmake
|
||||
this->SuppressDevWarnings = v;
|
||||
this->DoSuppressDevWarnings = true;
|
||||
}
|
||||
/*
|
||||
* Get the state of the suppression of developer (author) warnings.
|
||||
* Returns false, by default, if developer warnings should be shown, true
|
||||
* otherwise.
|
||||
*/
|
||||
bool GetSuppressDevWarnings(cmMakefile const* mf = NULL);
|
||||
|
||||
/** Display a message to the user. */
|
||||
void IssueMessage(cmake::MessageType t, std::string const& text,
|
||||
|
||||
Reference in New Issue
Block a user