Merge topic 'post-rel-dev'
9a48012f93
Configure CMake itself with policies through CMake 3.22a5a9687799
export: Increase maximum policy version in exported files to 3.22a9ffded98c
Add deprecation warnings for policies CMP0097 and below Acked-by: Kitware Robot <kwrobot@kitware.com> Tested-by: buildbot <buildbot@kitware.com> Merge-request: !6948
This commit is contained in:
commit
f84dcbd496
@ -1,7 +1,7 @@
|
||||
# Distributed under the OSI-approved BSD 3-Clause License. See accompanying
|
||||
# file Copyright.txt or https://cmake.org/licensing for details.
|
||||
|
||||
cmake_minimum_required(VERSION 3.1...3.21 FATAL_ERROR)
|
||||
cmake_minimum_required(VERSION 3.1...3.22 FATAL_ERROR)
|
||||
set(CMAKE_USER_MAKE_RULES_OVERRIDE_C ${CMAKE_CURRENT_SOURCE_DIR}/Source/Modules/OverrideC.cmake)
|
||||
set(CMAKE_USER_MAKE_RULES_OVERRIDE_CXX ${CMAKE_CURRENT_SOURCE_DIR}/Source/Modules/OverrideCXX.cmake)
|
||||
|
||||
|
@ -933,13 +933,13 @@ void cmExportFileGenerator::GeneratePolicyHeaderCode(std::ostream& os)
|
||||
|
||||
// Isolate the file policy level.
|
||||
// Support CMake versions as far back as 2.6 but also support using NEW
|
||||
// policy settings for up to CMake 3.21 (this upper limit may be reviewed
|
||||
// policy settings for up to CMake 3.22 (this upper limit may be reviewed
|
||||
// and increased from time to time). This reduces the opportunity for CMake
|
||||
// warnings when an older export file is later used with newer CMake
|
||||
// versions.
|
||||
/* clang-format off */
|
||||
os << "cmake_policy(PUSH)\n"
|
||||
<< "cmake_policy(VERSION 2.6...3.21)\n";
|
||||
<< "cmake_policy(VERSION 2.6...3.22)\n";
|
||||
/* clang-format on */
|
||||
}
|
||||
|
||||
|
@ -4395,12 +4395,14 @@ bool cmMakefile::SetPolicy(cmPolicies::PolicyID id,
|
||||
}
|
||||
|
||||
// Deprecate old policies.
|
||||
if (status == cmPolicies::OLD && id <= cmPolicies::CMP0094 &&
|
||||
if (status == cmPolicies::OLD && id <= cmPolicies::CMP0097 &&
|
||||
!(this->GetCMakeInstance()->GetIsInTryCompile() &&
|
||||
(
|
||||
// Policies set by cmCoreTryCompile::TryCompileCode.
|
||||
id == cmPolicies::CMP0065 || id == cmPolicies::CMP0083 ||
|
||||
id == cmPolicies::CMP0091))) {
|
||||
id == cmPolicies::CMP0091)) &&
|
||||
(!this->IsSet("CMAKE_WARN_DEPRECATED") ||
|
||||
this->IsOn("CMAKE_WARN_DEPRECATED"))) {
|
||||
this->IssueMessage(MessageType::DEPRECATION_WARNING,
|
||||
cmPolicies::GetPolicyDeprecatedWarning(id));
|
||||
}
|
||||
|
@ -444,7 +444,9 @@ if(do_git_tests)
|
||||
set_property(TARGET ${proj} PROPERTY FOLDER "GIT")
|
||||
|
||||
set(proj TS1-GIT-all-GIT_SUBMODULES-via-CMP0097-OLD)
|
||||
set(CMAKE_WARN_DEPRECATED FALSE) # we are testing CMP0097 OLD behavior
|
||||
cmake_policy(SET CMP0097 OLD)
|
||||
unset(CMAKE_WARN_DEPRECATED)
|
||||
ExternalProject_Add(${proj}
|
||||
GIT_REPOSITORY "${local_git_repo}"
|
||||
GIT_SUBMODULES ""
|
||||
|
@ -1,3 +1,15 @@
|
||||
^CMake Deprecation Warning at TARGETS-FILE_RPATH_CHANGE-new_rpath.cmake:[0-9]+ \(cmake_policy\):
|
||||
The OLD behavior for policy CMP0095 will be removed from a future version
|
||||
of CMake.
|
||||
|
||||
The cmake-policies\(7\) manual explains that the OLD behaviors of all
|
||||
policies are deprecated and that a policy should be set to OLD only under
|
||||
specific short-term circumstances. Projects should be ported to the NEW
|
||||
behavior and not rely on setting a policy to OLD.
|
||||
Call Stack \(most recent call first\):
|
||||
TARGETS-FILE_RPATH_CHANGE-new_rpath.cmake:[0-9]+ \(A_CMP0095\)
|
||||
CMakeLists.txt:[0-9]+ \(include\)(
|
||||
+
|
||||
CMake Warning \(dev\) at TARGETS-FILE_RPATH_CHANGE-new_rpath\.cmake:[0-9]+ \(install\):
|
||||
Policy CMP0095 is not set: RPATH entries are properly escaped in the
|
||||
intermediary CMake install script\. Run "cmake --help-policy CMP0095" for
|
||||
@ -8,8 +20,8 @@ CMake Warning \(dev\) at TARGETS-FILE_RPATH_CHANGE-new_rpath\.cmake:[0-9]+ \(ins
|
||||
intermediary cmake_install\.cmake script\.
|
||||
Call Stack \(most recent call first\):
|
||||
CMakeLists\.txt:[0-9]+ \(include\)
|
||||
This warning is for project developers\. Use -Wno-dev to suppress it\.
|
||||
|
||||
This warning is for project developers\. Use -Wno-dev to suppress it\.)+(
|
||||
+
|
||||
CMake Warning \(dev\) at TARGETS-FILE_RPATH_CHANGE-new_rpath\.cmake:[0-9]+ \(install\):
|
||||
Policy CMP0095 is not set: RPATH entries are properly escaped in the
|
||||
intermediary CMake install script\. Run "cmake --help-policy CMP0095" for
|
||||
@ -20,4 +32,4 @@ CMake Warning \(dev\) at TARGETS-FILE_RPATH_CHANGE-new_rpath\.cmake:[0-9]+ \(ins
|
||||
intermediary cmake_install\.cmake script\.
|
||||
Call Stack \(most recent call first\):
|
||||
CMakeLists\.txt:[0-9]+ \(include\)
|
||||
This warning is for project developers\. Use -Wno-dev to suppress it\.
|
||||
This warning is for project developers\. Use -Wno-dev to suppress it\.)+$
|
||||
|
10
Tests/RunCMake/project/CMP0096-OLD-stderr.txt
Normal file
10
Tests/RunCMake/project/CMP0096-OLD-stderr.txt
Normal file
@ -0,0 +1,10 @@
|
||||
^CMake Deprecation Warning at CMP0096-OLD.cmake:[0-9]+ \(cmake_policy\):
|
||||
The OLD behavior for policy CMP0096 will be removed from a future version
|
||||
of CMake.
|
||||
|
||||
The cmake-policies\(7\) manual explains that the OLD behaviors of all
|
||||
policies are deprecated and that a policy should be set to OLD only under
|
||||
specific short-term circumstances. Projects should be ported to the NEW
|
||||
behavior and not rely on setting a policy to OLD.
|
||||
Call Stack \(most recent call first\):
|
||||
CMakeLists.txt:[0-9]+ \(include\)$
|
10
Tests/RunCMake/project/VersionMax-stderr.txt
Normal file
10
Tests/RunCMake/project/VersionMax-stderr.txt
Normal file
@ -0,0 +1,10 @@
|
||||
^CMake Deprecation Warning at VersionMax.cmake:[0-9]+ \(cmake_policy\):
|
||||
The OLD behavior for policy CMP0096 will be removed from a future version
|
||||
of CMake.
|
||||
|
||||
The cmake-policies\(7\) manual explains that the OLD behaviors of all
|
||||
policies are deprecated and that a policy should be set to OLD only under
|
||||
specific short-term circumstances. Projects should be ported to the NEW
|
||||
behavior and not rely on setting a policy to OLD.
|
||||
Call Stack \(most recent call first\):
|
||||
CMakeLists.txt:[0-9]+ \(include\)$
|
@ -3,7 +3,7 @@
|
||||
|
||||
if(NOT CMake_SOURCE_DIR)
|
||||
set(CMakeDeveloperReference_STANDALONE 1)
|
||||
cmake_minimum_required(VERSION 3.1...3.21 FATAL_ERROR)
|
||||
cmake_minimum_required(VERSION 3.1...3.22 FATAL_ERROR)
|
||||
get_filename_component(tmp "${CMAKE_CURRENT_SOURCE_DIR}" PATH)
|
||||
get_filename_component(CMake_SOURCE_DIR "${tmp}" PATH)
|
||||
include(${CMake_SOURCE_DIR}/Modules/CTestUseLaunchers.cmake)
|
||||
|
@ -3,7 +3,7 @@
|
||||
|
||||
if(NOT CMake_SOURCE_DIR)
|
||||
set(CMakeHelp_STANDALONE 1)
|
||||
cmake_minimum_required(VERSION 3.1...3.21 FATAL_ERROR)
|
||||
cmake_minimum_required(VERSION 3.1...3.22 FATAL_ERROR)
|
||||
get_filename_component(tmp "${CMAKE_CURRENT_SOURCE_DIR}" PATH)
|
||||
get_filename_component(CMake_SOURCE_DIR "${tmp}" PATH)
|
||||
include(${CMake_SOURCE_DIR}/Modules/CTestUseLaunchers.cmake)
|
||||
|
Loading…
Reference in New Issue
Block a user