summaryrefslogtreecommitdiffstats
path: root/Tests/RunCMake/target_compile_definitions
diff options
context:
space:
mode:
authorBen Boeckel <ben.boeckel@kitware.com>2018-10-26 13:11:42 (GMT)
committerBen Boeckel <ben.boeckel@kitware.com>2018-10-26 16:08:05 (GMT)
commit4201a11c2b5a5bdb442f99f88a5f17d6ae7c4a4c (patch)
treeecf5018aede6ad380f97b640300d607ce9878b29 /Tests/RunCMake/target_compile_definitions
parent9e78be8065f6c9c9f363b3e495017715abf9303b (diff)
downloadCMake-4201a11c2b5a5bdb442f99f88a5f17d6ae7c4a4c.zip
CMake-4201a11c2b5a5bdb442f99f88a5f17d6ae7c4a4c.tar.gz
CMake-4201a11c2b5a5bdb442f99f88a5f17d6ae7c4a4c.tar.bz2
Tests: add tests for empty-value keyword arguments in target_*
Not all of these commands accept non-compilable (i.e., IMPORTED) targets, so those calls are currently just commented out. If they ever do start to accept them, the tests should be enabled.
Diffstat (limited to 'Tests/RunCMake/target_compile_definitions')
-rw-r--r--Tests/RunCMake/target_compile_definitions/CMakeLists.txt5
-rw-r--r--Tests/RunCMake/target_compile_definitions/RunCMakeTest.cmake3
-rw-r--r--Tests/RunCMake/target_compile_definitions/empty_keyword_args-result.txt1
-rw-r--r--Tests/RunCMake/target_compile_definitions/empty_keyword_args-stderr.txt5
-rw-r--r--Tests/RunCMake/target_compile_definitions/empty_keyword_args.cmake5
5 files changed, 19 insertions, 0 deletions
diff --git a/Tests/RunCMake/target_compile_definitions/CMakeLists.txt b/Tests/RunCMake/target_compile_definitions/CMakeLists.txt
new file mode 100644
index 0000000..14ef56e
--- /dev/null
+++ b/Tests/RunCMake/target_compile_definitions/CMakeLists.txt
@@ -0,0 +1,5 @@
+cmake_minimum_required(VERSION 3.11)
+
+project(${RunCMake_TEST} LANGUAGES NONE)
+
+include(${RunCMake_TEST}.cmake)
diff --git a/Tests/RunCMake/target_compile_definitions/RunCMakeTest.cmake b/Tests/RunCMake/target_compile_definitions/RunCMakeTest.cmake
new file mode 100644
index 0000000..b67c598
--- /dev/null
+++ b/Tests/RunCMake/target_compile_definitions/RunCMakeTest.cmake
@@ -0,0 +1,3 @@
+include(RunCMake)
+
+run_cmake(empty_keyword_args)
diff --git a/Tests/RunCMake/target_compile_definitions/empty_keyword_args-result.txt b/Tests/RunCMake/target_compile_definitions/empty_keyword_args-result.txt
new file mode 100644
index 0000000..d00491f
--- /dev/null
+++ b/Tests/RunCMake/target_compile_definitions/empty_keyword_args-result.txt
@@ -0,0 +1 @@
+1
diff --git a/Tests/RunCMake/target_compile_definitions/empty_keyword_args-stderr.txt b/Tests/RunCMake/target_compile_definitions/empty_keyword_args-stderr.txt
new file mode 100644
index 0000000..d8fb3ba
--- /dev/null
+++ b/Tests/RunCMake/target_compile_definitions/empty_keyword_args-stderr.txt
@@ -0,0 +1,5 @@
+CMake Error at empty_keyword_args.cmake:2 \(target_compile_definitions\):
+ target_compile_definitions may only set INTERFACE properties on INTERFACE
+ targets
+Call Stack \(most recent call first\):
+ CMakeLists.txt:5 \(include\)
diff --git a/Tests/RunCMake/target_compile_definitions/empty_keyword_args.cmake b/Tests/RunCMake/target_compile_definitions/empty_keyword_args.cmake
new file mode 100644
index 0000000..cb94e87
--- /dev/null
+++ b/Tests/RunCMake/target_compile_definitions/empty_keyword_args.cmake
@@ -0,0 +1,5 @@
+add_library(iface INTERFACE)
+target_compile_definitions(iface PUBLIC PRIVATE INTERFACE)
+# Cannot be called with non-compilable targets.
+#add_library(imported UNKNOWN IMPORTED)
+#target_compile_definitions(imported PUBLIC PRIVATE INTERFACE)