diff options
author | Evan Wilde <etceterawilde@gmail.com> | 2022-11-03 15:58:08 (GMT) |
---|---|---|
committer | Evan Wilde <etceterawilde@gmail.com> | 2022-11-04 16:32:06 (GMT) |
commit | 2d5403ecaa4faa5524902a6da86d62857e13c6bb (patch) | |
tree | 1c25d15c48459625ccb84965811c18462785daff /Tests/RunCMake/CheckCompilerFlag | |
parent | 4fc3f7e88ff7d5f734ed5d6cf43b6420e869ef19 (diff) | |
download | CMake-2d5403ecaa4faa5524902a6da86d62857e13c6bb.zip CMake-2d5403ecaa4faa5524902a6da86d62857e13c6bb.tar.gz CMake-2d5403ecaa4faa5524902a6da86d62857e13c6bb.tar.bz2 |
CheckCompilerFlag: Add Swift Support
Plumb through Swift `check_compiler_flag` support.
Add tests to check that valid flags work and invalid flags don't.
Diffstat (limited to 'Tests/RunCMake/CheckCompilerFlag')
-rw-r--r-- | Tests/RunCMake/CheckCompilerFlag/CheckCompilerFlagSwift.cmake | 21 | ||||
-rw-r--r-- | Tests/RunCMake/CheckCompilerFlag/RunCMakeTest.cmake | 4 |
2 files changed, 25 insertions, 0 deletions
diff --git a/Tests/RunCMake/CheckCompilerFlag/CheckCompilerFlagSwift.cmake b/Tests/RunCMake/CheckCompilerFlag/CheckCompilerFlagSwift.cmake new file mode 100644 index 0000000..23b3006 --- /dev/null +++ b/Tests/RunCMake/CheckCompilerFlag/CheckCompilerFlagSwift.cmake @@ -0,0 +1,21 @@ +enable_language (Swift) +include(CheckCompilerFlag) + +set(Swift 1) + +# test that the check uses an isolated locale +set(_env_LC_ALL "${LC_ALL}") +set(ENV{LC_ALL} "BAD") + +check_compiler_flag(Swift "-foo-as-blarpy" SHOULD_FAIL) +if(SHOULD_FAIL) + message(SEND_ERROR "invalid Swift compile flag didn't fail.") +endif() + +check_compiler_flag(Swift "-parseable-output" SHOULD_WORK) +if(NOT SHOULD_WORK) + message(SEND_ERROR "Swift compiler flag '-parseable-output' check failed") +endif() + +# Reset locale +set(ENV{LC_ALL} ${_env_LC_ALL}) diff --git a/Tests/RunCMake/CheckCompilerFlag/RunCMakeTest.cmake b/Tests/RunCMake/CheckCompilerFlag/RunCMakeTest.cmake index b0e025c..81429a6 100644 --- a/Tests/RunCMake/CheckCompilerFlag/RunCMakeTest.cmake +++ b/Tests/RunCMake/CheckCompilerFlag/RunCMakeTest.cmake @@ -32,3 +32,7 @@ endif() if(APPLE) run_cmake(HeaderpadWorkaround) endif() + +if(CMake_TEST_Swift) + run_cmake(CheckCompilerFlagSwift) +endif() |