From cd4d2acbe654ca57a9ffc7ca34dcf4835bfc77c3 Mon Sep 17 00:00:00 2001 From: Ken Martin Date: Tue, 4 Mar 2008 14:51:25 -0500 Subject: [PATCH] ENH: more policy changes --- Source/cmCMakeMinimumRequired.cxx | 3 +++ Source/cmPolicies.cxx | 16 +++++++++++++++- Source/cmake.cxx | 26 -------------------------- 3 files changed, 18 insertions(+), 27 deletions(-) diff --git a/Source/cmCMakeMinimumRequired.cxx b/Source/cmCMakeMinimumRequired.cxx index 9a1417f9c..f20c06b1a 100644 --- a/Source/cmCMakeMinimumRequired.cxx +++ b/Source/cmCMakeMinimumRequired.cxx @@ -121,6 +121,9 @@ bool cmCMakeMinimumRequired } } + // set the policy version as well + this->Makefile->SetPolicyVersion(version_string.c_str()); + return true; } diff --git a/Source/cmPolicies.cxx b/Source/cmPolicies.cxx index 1f5da4789..b7e07e1c1 100644 --- a/Source/cmPolicies.cxx +++ b/Source/cmPolicies.cxx @@ -184,7 +184,21 @@ bool cmPolicies::ApplyPolicyVersion(cmMakefile *mf, { patchVer = atoi(patch.c_str()); } - + + // add in the old CMAKE_BACKWARDS_COMPATIBILITY var for old CMake compatibility + if ((majorVer == 2 && minorVer <= 4) || majorVer < 2) + { + if (!mf->GetCacheManager()->GetCacheValue("CMAKE_BACKWARDS_COMPATIBILITY")) + { + mf->AddCacheDefinition + ("CMAKE_BACKWARDS_COMPATIBILITY",version, + "For backwards compatibility, what version of CMake commands and " + "syntax should this version of CMake try to support.", + cmCacheManager::STRING); + } + } + + // now loop over all the policies and set them as appropriate std::map::iterator i = this->Policies.begin(); diff --git a/Source/cmake.cxx b/Source/cmake.cxx index 9950d2086..31693d25f 100644 --- a/Source/cmake.cxx +++ b/Source/cmake.cxx @@ -1899,19 +1899,6 @@ int cmake::ActualConfigure() cmCacheManager::INTERNAL); } - // set the default BACKWARDS compatibility to the current version - if(!this->CacheManager->GetCacheValue("CMAKE_BACKWARDS_COMPATIBILITY")) - { - char ver[256]; - sprintf(ver,"%i.%i",cmVersion::GetMajorVersion(), - cmVersion::GetMinorVersion()); - this->CacheManager->AddCacheEntry - ("CMAKE_BACKWARDS_COMPATIBILITY",ver, - "For backwards compatibility, what version of CMake commands and " - "syntax should this version of CMake allow.", - cmCacheManager::STRING); - } - // no generator specified on the command line if(!this->GlobalGenerator) { @@ -2393,19 +2380,6 @@ int cmake::LoadCache() return -3; } - // set the default BACKWARDS compatibility to the current version - if(!this->CacheManager->GetCacheValue("CMAKE_BACKWARDS_COMPATIBILITY")) - { - char ver[256]; - sprintf(ver,"%i.%i",cmVersion::GetMajorVersion(), - cmVersion::GetMinorVersion()); - this->CacheManager->AddCacheEntry - ("CMAKE_BACKWARDS_COMPATIBILITY",ver, - "For backwards compatibility, what version of CMake commands and " - "syntax should this version of CMake allow.", - cmCacheManager::STRING); - } - return 0; }