diff options
| author | Brad King <brad.king@kitware.com> | 2022-10-06 09:46:42 -0400 |
|---|---|---|
| committer | Brad King <brad.king@kitware.com> | 2022-10-06 10:29:42 -0400 |
| commit | 90aa0bb30543cde2c3f58a090735904e17092c44 (patch) | |
| tree | 8d19578f1df8747652e5ffcfe19ab57b7f5f5a1b /Tests/RunCMake/CheckSourceRuns | |
| parent | 64ac01451dad389bb4ca00019a38fbb8bd68308e (diff) | |
| download | cmake-90aa0bb30543cde2c3f58a090735904e17092c44.tar.gz | |
Tests: Move TryCompile check module cases to RunCMake.Check*
The latter already have similar checks for similar modules.
Diffstat (limited to 'Tests/RunCMake/CheckSourceRuns')
5 files changed, 86 insertions, 0 deletions
diff --git a/Tests/RunCMake/CheckSourceRuns/CheckCSourceRuns.cmake b/Tests/RunCMake/CheckSourceRuns/CheckCSourceRuns.cmake new file mode 100644 index 0000000000..c0f9463362 --- /dev/null +++ b/Tests/RunCMake/CheckSourceRuns/CheckCSourceRuns.cmake @@ -0,0 +1,15 @@ + +enable_language (C) +include(CheckCSourceRuns) + +set(C 1) # test that this is tolerated + +check_c_source_runs("int main() {return 2;}" SHOULD_FAIL) +if(SHOULD_FAIL) + message(SEND_ERROR "check_c_source_runs succeeded, but should have failed.") +endif() + +check_c_source_runs("int main() {return 0;}" SHOULD_RUN) +if(NOT SHOULD_RUN) + message(SEND_ERROR "check_c_source_runs failed for valid C executable.") +endif() diff --git a/Tests/RunCMake/CheckSourceRuns/CheckCXXSourceRuns.cmake b/Tests/RunCMake/CheckSourceRuns/CheckCXXSourceRuns.cmake new file mode 100644 index 0000000000..c4c9026c01 --- /dev/null +++ b/Tests/RunCMake/CheckSourceRuns/CheckCXXSourceRuns.cmake @@ -0,0 +1,22 @@ + +enable_language (CXX) +include(CheckCXXSourceRuns) + +set(CXX 1) # test that this is tolerated + +check_cxx_source_runs("int main() {return 2;}" SHOULD_FAIL) +if(SHOULD_FAIL) + message(SEND_ERROR "check_cxx_source_runs succeeded, but should have failed.") +endif() + +check_cxx_source_runs( +[=[ + #include <vector> + int main() { + return 0; + } +]=] + SHOULD_RUN) +if(NOT SHOULD_RUN) + message(SEND_ERROR "check_cxx_source_runs failed for valid C executable.") +endif() diff --git a/Tests/RunCMake/CheckSourceRuns/CheckOBJCSourceRuns.cmake b/Tests/RunCMake/CheckSourceRuns/CheckOBJCSourceRuns.cmake new file mode 100644 index 0000000000..604b2a1e45 --- /dev/null +++ b/Tests/RunCMake/CheckSourceRuns/CheckOBJCSourceRuns.cmake @@ -0,0 +1,21 @@ +enable_language (OBJC) +include(CheckOBJCSourceRuns) + +set(OBJC 1) # test that this is tolerated + +check_objc_source_runs("int main() {return 2;}" SHOULD_FAIL) +if(SHOULD_FAIL) + message(SEND_ERROR "check_objc_source_runs succeeded, but should have failed.") +endif() + +check_objc_source_runs([[ + #import <Foundation/Foundation.h> + int main() { + NSObject *foo; + return 0; + } +]] SHOULD_BUILD) + +if(NOT SHOULD_BUILD) + message(SEND_ERROR "Test fail for valid OBJC source.") +endif() diff --git a/Tests/RunCMake/CheckSourceRuns/CheckOBJCXXSourceRuns.cmake b/Tests/RunCMake/CheckSourceRuns/CheckOBJCXXSourceRuns.cmake new file mode 100644 index 0000000000..b220166665 --- /dev/null +++ b/Tests/RunCMake/CheckSourceRuns/CheckOBJCXXSourceRuns.cmake @@ -0,0 +1,24 @@ +enable_language (OBJCXX) +include(CheckOBJCXXSourceRuns) + +set(OBJCXX 1) # test that this is tolerated + +check_objcxx_source_runs("int main() {return 2;}" SHOULD_FAIL) +if(SHOULD_FAIL) + message(SEND_ERROR "check_objcxx_source_runs succeeded, but should have failed.") +endif() + +check_objcxx_source_runs([[ + #include <vector> + #import <Foundation/Foundation.h> + int main() { + std::vector<int> v; + NSObject *foo; + return 0; + } +]] SHOULD_BUILD) + + +if(NOT SHOULD_BUILD) + message(SEND_ERROR "Test fail for OBJCXX source.") +endif() diff --git a/Tests/RunCMake/CheckSourceRuns/RunCMakeTest.cmake b/Tests/RunCMake/CheckSourceRuns/RunCMakeTest.cmake index ee5ab22de2..64cecfc0e5 100644 --- a/Tests/RunCMake/CheckSourceRuns/RunCMakeTest.cmake +++ b/Tests/RunCMake/CheckSourceRuns/RunCMakeTest.cmake @@ -4,10 +4,14 @@ run_cmake(NotEnabledLanguage) run_cmake(NonExistentLanguage) run_cmake(UnknownArgument) +run_cmake(CheckCSourceRuns) +run_cmake(CheckCXXSourceRuns) run_cmake(CheckSourceRunsC) run_cmake(CheckSourceRunsCXX) if (APPLE) + run_cmake(CheckOBJCSourceRuns) + run_cmake(CheckOBJCXXSourceRuns) run_cmake(CheckSourceRunsOBJC) run_cmake(CheckSourceRunsOBJCXX) endif() |
