diff options
author | Brad King <brad.king@kitware.com> | 2016-11-22 15:08:45 (GMT) |
---|---|---|
committer | Brad King <brad.king@kitware.com> | 2016-11-22 15:17:20 (GMT) |
commit | 6d604c4972d744defe783e7a5f9fbf478eee2dfe (patch) | |
tree | 182754bf66de0c913a6dfc93e822333d29ae23e1 /Tests/RunCMake | |
parent | 74a0359ee6ef2aee60a9f9300817e6d9ef87bd57 (diff) | |
download | CMake-6d604c4972d744defe783e7a5f9fbf478eee2dfe.zip CMake-6d604c4972d744defe783e7a5f9fbf478eee2dfe.tar.gz CMake-6d604c4972d744defe783e7a5f9fbf478eee2dfe.tar.bz2 |
try_compile: Honor CMAKE_WARN_DEPRECATED in test project
This causes the `-Wno-deprecated` option to be honored even inside a
`try_compile` test project, which is needed to suppress all deprecation
warnings as the option documents.
Closes: #16446
Diffstat (limited to 'Tests/RunCMake')
-rw-r--r-- | Tests/RunCMake/try_compile/RunCMakeTest.cmake | 1 | ||||
-rw-r--r-- | Tests/RunCMake/try_compile/WarnDeprecated.cmake | 19 |
2 files changed, 20 insertions, 0 deletions
diff --git a/Tests/RunCMake/try_compile/RunCMakeTest.cmake b/Tests/RunCMake/try_compile/RunCMakeTest.cmake index 522433a..4934bcd 100644 --- a/Tests/RunCMake/try_compile/RunCMakeTest.cmake +++ b/Tests/RunCMake/try_compile/RunCMakeTest.cmake @@ -18,6 +18,7 @@ run_cmake(NonSourceCompileDefinitions) set(RunCMake_TEST_OPTIONS --debug-trycompile) run_cmake(PlatformVariables) +run_cmake(WarnDeprecated) unset(RunCMake_TEST_OPTIONS) run_cmake(TargetTypeExe) diff --git a/Tests/RunCMake/try_compile/WarnDeprecated.cmake b/Tests/RunCMake/try_compile/WarnDeprecated.cmake new file mode 100644 index 0000000..dfcb5f9 --- /dev/null +++ b/Tests/RunCMake/try_compile/WarnDeprecated.cmake @@ -0,0 +1,19 @@ +enable_language(C) + +set(CMAKE_WARN_DEPRECATED SOME_VALUE) + +try_compile(result ${CMAKE_CURRENT_BINARY_DIR} + SOURCES ${CMAKE_CURRENT_SOURCE_DIR}/src.c + OUTPUT_VARIABLE out + ) +if(NOT result) + message(FATAL_ERROR "try_compile failed:\n${out}") +endif() + +# Check that the cache was populated with our custom variable. +file(STRINGS ${CMAKE_BINARY_DIR}/CMakeFiles/CMakeTmp/CMakeCache.txt entries + REGEX CMAKE_WARN_DEPRECATED:UNINITIALIZED=${CMAKE_WARN_DEPRECATED} + ) +if(NOT entries) + message(FATAL_ERROR "try_compile did not populate cache as expected") +endif() |