diff options
author | Brad King <brad.king@kitware.com> | 2015-08-06 13:38:24 (GMT) |
---|---|---|
committer | CMake Topic Stage <kwrobot@kitware.com> | 2015-08-06 13:38:24 (GMT) |
commit | 73e3de381d87a635e303e2076a46cb739466c1a4 (patch) | |
tree | a2e04b18092be4f780a0daf3c26337b126657d70 /Tests/RunCMake | |
parent | 370e2c6785ce9167c9945763505353816780326c (diff) | |
parent | 757a1f54085af4645ee1946329e24538162ac054 (diff) | |
download | CMake-73e3de381d87a635e303e2076a46cb739466c1a4.zip CMake-73e3de381d87a635e303e2076a46cb739466c1a4.tar.gz CMake-73e3de381d87a635e303e2076a46cb739466c1a4.tar.bz2 |
Merge topic 'cmState-policies'
757a1f54 cmState: Move PolicyState from cmMakefile.
52dbe654 cmState: Record the end position of each directory.
65a5e0c6 cmLinkedTree: Add Clear API.
34835433 cmState: Add Type for policy scope.
af0de01c cmState: Remove call stack parent tracking.
6ae8b30b cmMakefile: Move policy barriers inside cmState scopes.
a5fc17b5 cmMakefile: Re-order policy entries and barriers.
0a01e6c6 cmState: Add Snapshot Type accessor.
f0005bb4 Tests: Verify generate-time policy scope behavior.
Diffstat (limited to 'Tests/RunCMake')
11 files changed, 40 insertions, 0 deletions
diff --git a/Tests/RunCMake/CMakeLists.txt b/Tests/RunCMake/CMakeLists.txt index 78df603..c274d8f 100644 --- a/Tests/RunCMake/CMakeLists.txt +++ b/Tests/RunCMake/CMakeLists.txt @@ -146,6 +146,7 @@ add_RunCMake_test(TargetSources) add_RunCMake_test(find_dependency) add_RunCMake_test(CompileDefinitions) add_RunCMake_test(CompileFeatures) +add_RunCMake_test(PolicyScope) add_RunCMake_test(WriteCompilerDetectionHeader) if(NOT WIN32) add_RunCMake_test(PositionIndependentCode) diff --git a/Tests/RunCMake/PolicyScope/CMakeLists.txt b/Tests/RunCMake/PolicyScope/CMakeLists.txt new file mode 100644 index 0000000..667561e --- /dev/null +++ b/Tests/RunCMake/PolicyScope/CMakeLists.txt @@ -0,0 +1,3 @@ +cmake_minimum_required(VERSION 2.8.12) +project(${RunCMake_TEST} NONE) +include(${RunCMake_TEST}.cmake NO_POLICY_SCOPE) diff --git a/Tests/RunCMake/PolicyScope/RunCMakeTest.cmake b/Tests/RunCMake/PolicyScope/RunCMakeTest.cmake new file mode 100644 index 0000000..d6c021f --- /dev/null +++ b/Tests/RunCMake/PolicyScope/RunCMakeTest.cmake @@ -0,0 +1,4 @@ +include(RunCMake) + +run_cmake(parent-dir-generate-time) +run_cmake(dir-in-macro-generate-time) diff --git a/Tests/RunCMake/PolicyScope/dir-in-macro-generate-time-result.txt b/Tests/RunCMake/PolicyScope/dir-in-macro-generate-time-result.txt new file mode 100644 index 0000000..573541a --- /dev/null +++ b/Tests/RunCMake/PolicyScope/dir-in-macro-generate-time-result.txt @@ -0,0 +1 @@ +0 diff --git a/Tests/RunCMake/PolicyScope/dir-in-macro-generate-time-stderr.txt b/Tests/RunCMake/PolicyScope/dir-in-macro-generate-time-stderr.txt new file mode 100644 index 0000000..d223f42 --- /dev/null +++ b/Tests/RunCMake/PolicyScope/dir-in-macro-generate-time-stderr.txt @@ -0,0 +1,5 @@ +CMake Warning \(dev\) at dir1/CMakeLists.txt:5 \(target_compile_definitions\): + Policy CMP0044 is not set: Case sensitive <LANG>_COMPILER_ID generator + expressions. Run "cmake --help-policy CMP0044" for policy details. Use + the cmake_policy command to set the policy and suppress this warning. +This warning is for project developers. Use -Wno-dev to suppress it. diff --git a/Tests/RunCMake/PolicyScope/dir-in-macro-generate-time.cmake b/Tests/RunCMake/PolicyScope/dir-in-macro-generate-time.cmake new file mode 100644 index 0000000..04a7c2c --- /dev/null +++ b/Tests/RunCMake/PolicyScope/dir-in-macro-generate-time.cmake @@ -0,0 +1,2 @@ + +include(dir-in-macro-include.cmake) diff --git a/Tests/RunCMake/PolicyScope/dir-in-macro-include.cmake b/Tests/RunCMake/PolicyScope/dir-in-macro-include.cmake new file mode 100644 index 0000000..fd326f1 --- /dev/null +++ b/Tests/RunCMake/PolicyScope/dir-in-macro-include.cmake @@ -0,0 +1,6 @@ + +enable_language(CXX) + +# This does not affect dir1 despite being set before the add_subdirectory. +cmake_policy(SET CMP0044 NEW) +add_subdirectory(dir1) diff --git a/Tests/RunCMake/PolicyScope/dir1/CMakeLists.txt b/Tests/RunCMake/PolicyScope/dir1/CMakeLists.txt new file mode 100644 index 0000000..16bcb36 --- /dev/null +++ b/Tests/RunCMake/PolicyScope/dir1/CMakeLists.txt @@ -0,0 +1,5 @@ + + +add_library(foo STATIC foo.cpp) +string(TOLOWER ${CMAKE_CXX_COMPILER_ID} compiler_id) +target_compile_definitions(foo PRIVATE Foo=$<CXX_COMPILER_ID:${compiler_id}>) diff --git a/Tests/RunCMake/PolicyScope/dir1/foo.cpp b/Tests/RunCMake/PolicyScope/dir1/foo.cpp new file mode 100644 index 0000000..766b775 --- /dev/null +++ b/Tests/RunCMake/PolicyScope/dir1/foo.cpp @@ -0,0 +1,5 @@ + +int main() +{ + return 0; +} diff --git a/Tests/RunCMake/PolicyScope/parent-dir-generate-time-result.txt b/Tests/RunCMake/PolicyScope/parent-dir-generate-time-result.txt new file mode 100644 index 0000000..573541a --- /dev/null +++ b/Tests/RunCMake/PolicyScope/parent-dir-generate-time-result.txt @@ -0,0 +1 @@ +0 diff --git a/Tests/RunCMake/PolicyScope/parent-dir-generate-time.cmake b/Tests/RunCMake/PolicyScope/parent-dir-generate-time.cmake new file mode 100644 index 0000000..a0842f7 --- /dev/null +++ b/Tests/RunCMake/PolicyScope/parent-dir-generate-time.cmake @@ -0,0 +1,7 @@ + +enable_language(CXX) + +add_subdirectory(dir1) + +# This affects dir1 despite being set after the add_subdirectory. +cmake_policy(SET CMP0044 NEW) |