diff options
author | Robert Maynard <rmaynard@nvidia.com> | 2021-07-07 15:23:31 (GMT) |
---|---|---|
committer | Brad King <brad.king@kitware.com> | 2021-07-08 11:44:03 (GMT) |
commit | 018d300ca03c6ecea6b6b15d8c5caa7693eef84b (patch) | |
tree | acf2e8661fad01c364c785392e5dd0ac04a5d7dd /Tests/TryCompile | |
parent | c9b27dace7e4110b25d5889e9c6952d0f4a7ca58 (diff) | |
download | CMake-018d300ca03c6ecea6b6b15d8c5caa7693eef84b.zip CMake-018d300ca03c6ecea6b6b15d8c5caa7693eef84b.tar.gz CMake-018d300ca03c6ecea6b6b15d8c5caa7693eef84b.tar.bz2 |
Check*CompilerFlag: Do not set result as a normal variable too
This was previously fixed by commit d46590910c (Check*CompilerFlag: Do
not set result as a normal variable too, 2020-09-21, v3.18.3~1^2^2), but
was regressed by refactoring in commit 90dead024c (CheckCompilerFlag:
unified way to check compiler flags per language, 2020-09-25,
v3.19.0-rc1~88^2) due to the changes being developed concurrently.
Fix it again, and add a test case.
Fixes: #21207
Diffstat (limited to 'Tests/TryCompile')
-rw-r--r-- | Tests/TryCompile/CMakeLists.txt | 10 |
1 files changed, 10 insertions, 0 deletions
diff --git a/Tests/TryCompile/CMakeLists.txt b/Tests/TryCompile/CMakeLists.txt index 0c6b938..0d44f21 100644 --- a/Tests/TryCompile/CMakeLists.txt +++ b/Tests/TryCompile/CMakeLists.txt @@ -305,11 +305,21 @@ unset(C_BOGUS_FLAG CACHE) include(CheckCCompilerFlag) CHECK_C_COMPILER_FLAG(${C_DD}-_this_is_not_a_flag_ C_BOGUS_FLAG) TEST_FAIL(C_BOGUS_FLAG "CHECK_C_COMPILER_FLAG() succeeded, but should have failed") +unset(C_BOGUS_FLAG CACHE) +if(DEFINED C_BOGUS_FLAG) + # Verify that CHECK_C_COMPILER_FLAG didn't construct a normal variable + message(SEND_ERROR "CHECK_C_COMPILER_FLAG shouldn't construct C_BOGUS_FLAG as a normal variable") +endif() unset(CXX_BOGUS_FLAG CACHE) include(CheckCXXCompilerFlag) CHECK_CXX_COMPILER_FLAG(${CXX_DD}-_this_is_not_a_flag_ CXX_BOGUS_FLAG) TEST_FAIL(CXX_BOGUS_FLAG "CHECK_CXX_COMPILER_FLAG() succeeded, but should have failed") +unset(CXX_BOGUS_FLAG CACHE) +if(DEFINED CXX_BOGUS_FLAG) + # Verify that CHECK_C_COMPILER_FLAG didn't construct a normal variable + message(SEND_ERROR "CHECK_CXX_COMPILER_FLAG shouldn't construct CXX_BOGUS_FLAG as a normal variable") +endif() if(CMAKE_C_COMPILER_ID STREQUAL "GNU") unset(C_STRICT_PROTOTYPES CACHE) |