diff --git a/Source/cmSourceFilesCommand.cxx b/Source/cmSourceFilesCommand.cxx index 0d0f36996..0655c2078 100644 --- a/Source/cmSourceFilesCommand.cxx +++ b/Source/cmSourceFilesCommand.cxx @@ -17,16 +17,21 @@ #include "cmSourceFilesCommand.h" #include // required for atof +bool cmSourceFilesCommand::IsDeprecated(int major, int minor) +{ + if ( major >= 1 && minor >= 4 ) + { + this->SetError("The SOURCE_FILES command was deprecated in CMake version 1.4 and will be removed in later versions of CMake. You should modify your CMakeLists.txt files to use the SET command instead, or set the cache value of CMAKE_BACKWARDS_COMPATIBILITY to 1.2 or less.\n"); + return true; + } + return false; +} + // cmSourceFilesCommand bool cmSourceFilesCommand::InitialPass(std::vector const& args) { const char* versionValue = m_Makefile->GetDefinition("CMAKE_BACKWARDS_COMPATIBILITY"); - if (atof(versionValue) > 1.4) - { - this->SetError("The SOURCE_FILES command was deprecated in CMake version 1.4 and will be removed in later versions of CMake. You should modify your CMakeLists.txt files to use the SET command instead, or set the cache value of CMAKE_BACKWARDS_COMPATIBILITY to 1.2 or less.\n"); - return false; - } if (atof(versionValue) > 1.2) { cmSystemTools::Message("The SOURCE_FILES command was deprecated in CMake version 1.4 and will be removed in later versions. You should modify your CMakeLists.txt files to use the SET command instead, or set the cache value of CMAKE_BACKWARDS_COMPATIBILITY to 1.2 or less.\n","Warning"); diff --git a/Source/cmSourceFilesCommand.h b/Source/cmSourceFilesCommand.h index 6d5c3fd7a..c2fd6f365 100644 --- a/Source/cmSourceFilesCommand.h +++ b/Source/cmSourceFilesCommand.h @@ -69,7 +69,12 @@ public: { return "Deprecated. Use SET to list sources in a variable."; } - + + /** + * This determines if the method is deprecated or not + */ + virtual bool IsDeprecated(int major, int minor); + /** * More documentation. */