ENH: Make CMAKE_MINIMUM_REQUIRED command FATAL_ERROR option implicit (always on). Accept but ignore the existing option.

This commit is contained in:
Brad King 2008-03-04 18:42:06 -05:00
parent 53e0ed3273
commit 2f922c6220
2 changed files with 9 additions and 21 deletions

View File

@ -25,7 +25,6 @@ bool cmCMakeMinimumRequired
// Process arguments.
std::string version_string;
bool doing_version = false;
bool fatal_error = false;
for(unsigned int i=0; i < args.size(); ++i)
{
if(args[i] == "VERSION")
@ -40,7 +39,6 @@ bool cmCMakeMinimumRequired
return false;
}
doing_version = false;
fatal_error = true;
}
else if(doing_version)
{
@ -101,24 +99,13 @@ bool cmCMakeMinimumRequired
{
// The current version is too low.
cmOStringStream e;
if(!fatal_error)
{
e << "WARNING: ";
}
e << "This project requires version " << version_string.c_str()
<< " of CMake. "
<< "You are running version "
<< current_major << "." << current_minor << "." << current_patch
<< ".\n";
if(fatal_error)
{
cmSystemTools::Error(e.str().c_str());
cmSystemTools::SetFatalErrorOccured();
}
else
{
cmSystemTools::Message(e.str().c_str());
}
cmSystemTools::Error(e.str().c_str());
cmSystemTools::SetFatalErrorOccured();
}
// set the policy version as well

View File

@ -66,12 +66,13 @@ public:
virtual const char* GetFullDocumentation()
{
return
" cmake_minimum_required(VERSION versionNumber [FATAL_ERROR])\n"
"Let cmake know that the project requires a certain version of a "
"cmake, or newer. CMake will also try to be backwards compatible to "
"the version of cmake specified, if a newer version of cmake is "
"running. If FATAL_ERROR is given then failure to meet the "
"requirements will be considered an error instead of a warning.";
" cmake_minimum_required(VERSION major[.minor[.patch]]\n"
" [FATAL_ERROR])\n"
"If the current version of CMake is lower than that required "
"it will stop processing the project and report an error.\n"
"The FATAL_ERROR option is accepted but ignored. It is left from "
"CMake versions 2.4 and lower in which failure to meet the minimum "
"version was a warning by default.";
}
cmTypeMacro(cmCMakeMinimumRequired, cmCommand);