diff --git a/Help/command/DEPRECATED_POLICY_VERSIONS.txt b/Help/command/DEPRECATED_POLICY_VERSIONS.txt index effb09bf09..1b9f0d4d6d 100644 --- a/Help/command/DEPRECATED_POLICY_VERSIONS.txt +++ b/Help/command/DEPRECATED_POLICY_VERSIONS.txt @@ -1,9 +1,9 @@ .. versionchanged:: 4.0 - Compatibility with versions of CMake older than 3.3 is removed. + Compatibility with versions of CMake older than 3.5 is removed. Calls to :command:`cmake_minimum_required(VERSION)` or :command:`cmake_policy(VERSION)` that do not specify at least - 3.3 as their policy version (optionally via ``...``) + 3.5 as their policy version (optionally via ``...``) will produce an error in CMake 4.0 and above. .. versionchanged:: 3.31 diff --git a/Help/release/dev/remove-old-compatibility.rst b/Help/release/dev/remove-old-compatibility.rst index 01cccd63c9..7c8c39ace0 100644 --- a/Help/release/dev/remove-old-compatibility.rst +++ b/Help/release/dev/remove-old-compatibility.rst @@ -1,7 +1,7 @@ remove-old-compatibility ------------------------ -* Compatibility with versions of CMake older than 3.3 has been removed. +* Compatibility with versions of CMake older than 3.5 has been removed. Calls to :command:`cmake_minimum_required` or :command:`cmake_policy` that set the policy version to an older value now issue an error. Note that calls to those commands can still support older versions of diff --git a/Source/cmMakefile.cxx b/Source/cmMakefile.cxx index 535b62fb1f..581f2bb2d0 100644 --- a/Source/cmMakefile.cxx +++ b/Source/cmMakefile.cxx @@ -1593,7 +1593,7 @@ void cmMakefile::Configure() this->SetCheckCMP0000(true); // Implicitly set the version for the user. - cmPolicies::ApplyPolicyVersion(this, 3, 3, 0, + cmPolicies::ApplyPolicyVersion(this, 3, 5, 0, cmPolicies::WarnCompat::Off); } } diff --git a/Source/cmPolicies.cxx b/Source/cmPolicies.cxx index ba316ff9a1..36f1072fab 100644 --- a/Source/cmPolicies.cxx +++ b/Source/cmPolicies.cxx @@ -295,16 +295,16 @@ bool cmPolicies::ApplyPolicyVersion(cmMakefile* mf, unsigned int majorVer, WarnCompat warnCompat) { // Error on policy versions for which support has been removed. - if (majorVer < 3 || (majorVer == 3 && minorVer < 3)) { + if (majorVer < 3 || (majorVer == 3 && minorVer < 5)) { if (IsFromLegacyInstallEXPORT(mf, majorVer, minorVer, patchVer)) { // Silently tolerate cmake_policy calls generated by install(EXPORT) // in CMake versions prior to 3.18. majorVer = 3; - minorVer = 3; + minorVer = 5; patchVer = 0; } else { mf->IssueMessage(MessageType::FATAL_ERROR, - "Compatibility with CMake < 3.3 has been removed " + "Compatibility with CMake < 3.5 has been removed " "from CMake.\n" ADVICE_UPDATE_VERSION_ARGUMENT); cmSystemTools::SetFatalErrorOccurred(); return false; diff --git a/Tests/RunCMake/cmake_minimum_required/BeforeVersionRemoved-stderr.txt b/Tests/RunCMake/cmake_minimum_required/BeforeVersionRemoved-stderr.txt index f51dca9d21..62145e638b 100644 --- a/Tests/RunCMake/cmake_minimum_required/BeforeVersionRemoved-stderr.txt +++ b/Tests/RunCMake/cmake_minimum_required/BeforeVersionRemoved-stderr.txt @@ -1,5 +1,5 @@ ^CMake Error at BeforeVersionRemoved\.cmake:1 \(cmake_minimum_required\): - Compatibility with CMake < 3\.3 has been removed from CMake\. + Compatibility with CMake < 3\.5 has been removed from CMake\. Update the VERSION argument value\. Or, use the \.\.\. syntax to tell CMake that the project requires at least but has been updated diff --git a/Tests/RunCMake/cmake_minimum_required/BeforeVersionRemoved.cmake b/Tests/RunCMake/cmake_minimum_required/BeforeVersionRemoved.cmake index 319b1d9f2b..c530a1672e 100644 --- a/Tests/RunCMake/cmake_minimum_required/BeforeVersionRemoved.cmake +++ b/Tests/RunCMake/cmake_minimum_required/BeforeVersionRemoved.cmake @@ -1 +1 @@ -cmake_minimum_required(VERSION 3.2) +cmake_minimum_required(VERSION 3.4) diff --git a/Tests/RunCMake/cmake_minimum_required/PolicyBeforeVersionRemoved-stderr.txt b/Tests/RunCMake/cmake_minimum_required/PolicyBeforeVersionRemoved-stderr.txt index 9f31b80282..c9eba0fbd5 100644 --- a/Tests/RunCMake/cmake_minimum_required/PolicyBeforeVersionRemoved-stderr.txt +++ b/Tests/RunCMake/cmake_minimum_required/PolicyBeforeVersionRemoved-stderr.txt @@ -1,5 +1,5 @@ ^CMake Error at PolicyBeforeVersionRemoved\.cmake:1 \(cmake_policy\): - Compatibility with CMake < 3\.3 has been removed from CMake\. + Compatibility with CMake < 3\.5 has been removed from CMake\. Update the VERSION argument value\. Or, use the \.\.\. syntax to tell CMake that the project requires at least but has been updated diff --git a/Tests/RunCMake/cmake_minimum_required/PolicyBeforeVersionRemoved.cmake b/Tests/RunCMake/cmake_minimum_required/PolicyBeforeVersionRemoved.cmake index 33bafe83f5..a282b776af 100644 --- a/Tests/RunCMake/cmake_minimum_required/PolicyBeforeVersionRemoved.cmake +++ b/Tests/RunCMake/cmake_minimum_required/PolicyBeforeVersionRemoved.cmake @@ -1 +1 @@ -cmake_policy(VERSION 3.2) +cmake_policy(VERSION 3.4)