Tests: Add case showing CMP0048 warning on injected project command

Issue: #18202
This commit is contained in:
Brad King
2018-07-24 13:05:22 -04:00
parent f84c15ef2f
commit 08eb157c03
5 changed files with 28 additions and 0 deletions

View File

@@ -240,6 +240,7 @@ add_RunCMake_test(include_guard)
add_RunCMake_test(list)
add_RunCMake_test(message)
add_RunCMake_test(project -DCMake_TEST_RESOURCES=${CMake_TEST_RESOURCES})
add_RunCMake_test(project_injected)
add_RunCMake_test(return)
add_RunCMake_test(separate_arguments)
add_RunCMake_test(set_property)

View File

@@ -0,0 +1,12 @@
^CMake Warning \(dev\) in CMakeLists.txt:
Policy CMP0048 is not set: project\(\) command manages VERSION variables.
Run "cmake --help-policy CMP0048" for policy details. Use the cmake_policy
command to set the policy and suppress this warning.
The following variable\(s\) would be set to empty:
CMAKE_PROJECT_VERSION
CMAKE_PROJECT_VERSION_MAJOR
CMAKE_PROJECT_VERSION_MINOR
CMAKE_PROJECT_VERSION_PATCH
This warning is for project developers. Use -Wno-dev to suppress it.$

View File

@@ -0,0 +1,3 @@
cmake_minimum_required(VERSION 2.8.12.2) # old enough to not set CMP0048
# no project(${RunCMake_TEST} NONE)
include(${RunCMake_TEST}.cmake)

View File

@@ -0,0 +1,12 @@
include(RunCMake)
set(RunCMake_TEST_OPTIONS
# Simulate a previous CMake run that used `project(... VERSION ...)`
# in a non-injected call site.
-DCMAKE_PROJECT_VERSION:STATIC=1.2.3
-DCMAKE_PROJECT_VERSION_MAJOR:STATIC=1
-DCMAKE_PROJECT_VERSION_MINOR:STATIC=2
-DCMAKE_PROJECT_VERSION_PATCH:STATIC=3
)
run_cmake(CMP0048-WARN)
unset(RunCMake_TEST_OPTIONS)