summaryrefslogtreecommitdiff
path: root/Tests/RunCMake/CheckSourceRuns
diff options
context:
space:
mode:
authorBrad King <brad.king@kitware.com>2022-10-06 09:46:42 -0400
committerBrad King <brad.king@kitware.com>2022-10-06 10:29:42 -0400
commit90aa0bb30543cde2c3f58a090735904e17092c44 (patch)
tree8d19578f1df8747652e5ffcfe19ab57b7f5f5a1b /Tests/RunCMake/CheckSourceRuns
parent64ac01451dad389bb4ca00019a38fbb8bd68308e (diff)
downloadcmake-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')
-rw-r--r--Tests/RunCMake/CheckSourceRuns/CheckCSourceRuns.cmake15
-rw-r--r--Tests/RunCMake/CheckSourceRuns/CheckCXXSourceRuns.cmake22
-rw-r--r--Tests/RunCMake/CheckSourceRuns/CheckOBJCSourceRuns.cmake21
-rw-r--r--Tests/RunCMake/CheckSourceRuns/CheckOBJCXXSourceRuns.cmake24
-rw-r--r--Tests/RunCMake/CheckSourceRuns/RunCMakeTest.cmake4
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()