summaryrefslogtreecommitdiffstats
path: root/Tests/CMakeCommands/target_compile_options
diff options
context:
space:
mode:
authorRobert Maynard <robert.maynard@kitware.com>2019-05-30 14:00:19 (GMT)
committerBrad King <brad.king@kitware.com>2019-06-03 14:20:23 (GMT)
commit808b8180632aef06e7a3644fb4d3957722abc3f3 (patch)
tree5379256750380540b9a09e62d5e6ae0070b9787b /Tests/CMakeCommands/target_compile_options
parent9fd602bfd33479b1acecd40e5c1b76ce37d59798 (diff)
downloadCMake-808b8180632aef06e7a3644fb4d3957722abc3f3.zip
CMake-808b8180632aef06e7a3644fb4d3957722abc3f3.tar.gz
CMake-808b8180632aef06e7a3644fb4d3957722abc3f3.tar.bz2
Genex: CompileLang and CompileLangAndId now match against a list of ids
This allows for expressions such as: $<COMPILE_LANG_AND_ID, CXX, GNU, Clang>
Diffstat (limited to 'Tests/CMakeCommands/target_compile_options')
-rw-r--r--Tests/CMakeCommands/target_compile_options/CMakeLists.txt1
-rw-r--r--Tests/CMakeCommands/target_compile_options/consumer.cpp8
-rw-r--r--Tests/CMakeCommands/target_compile_options/main.cpp8
3 files changed, 17 insertions, 0 deletions
diff --git a/Tests/CMakeCommands/target_compile_options/CMakeLists.txt b/Tests/CMakeCommands/target_compile_options/CMakeLists.txt
index ee187f5..a7055b1 100644
--- a/Tests/CMakeCommands/target_compile_options/CMakeLists.txt
+++ b/Tests/CMakeCommands/target_compile_options/CMakeLists.txt
@@ -9,6 +9,7 @@ add_executable(target_compile_options
target_compile_options(target_compile_options
PRIVATE $<$<CXX_COMPILER_ID:AppleClang,Clang,GNU>:-DMY_PRIVATE_DEFINE>
PUBLIC $<$<COMPILE_LANG_AND_ID:CXX,GNU>:-DMY_PUBLIC_DEFINE>
+ PUBLIC $<$<COMPILE_LANG_AND_ID:CXX,GNU,Clang,AppleClang>:-DMY_MUTLI_COMP_PUBLIC_DEFINE>
INTERFACE $<$<CXX_COMPILER_ID:GNU>:-DMY_INTERFACE_DEFINE>
INTERFACE $<$<CXX_COMPILER_ID:GNU,Clang,AppleClang>:-DMY_MULTI_COMP_INTERFACE_DEFINE>
)
diff --git a/Tests/CMakeCommands/target_compile_options/consumer.cpp b/Tests/CMakeCommands/target_compile_options/consumer.cpp
index 5cbe049..78928b4 100644
--- a/Tests/CMakeCommands/target_compile_options/consumer.cpp
+++ b/Tests/CMakeCommands/target_compile_options/consumer.cpp
@@ -17,6 +17,10 @@
# error Expected MY_MULTI_COMP_INTERFACE_DEFINE
# endif
+# ifndef MY_MUTLI_COMP_PUBLIC_DEFINE
+# error Expected MY_MUTLI_COMP_PUBLIC_DEFINE
+# endif
+
#endif
#ifdef DO_CLANG_TESTS
@@ -29,6 +33,10 @@
# error Expected MY_MULTI_COMP_INTERFACE_DEFINE
# endif
+# ifndef MY_MUTLI_COMP_PUBLIC_DEFINE
+# error Expected MY_MUTLI_COMP_PUBLIC_DEFINE
+# endif
+
#endif
#ifndef CONSUMER_LANG_CXX
diff --git a/Tests/CMakeCommands/target_compile_options/main.cpp b/Tests/CMakeCommands/target_compile_options/main.cpp
index edefdf2..7608400 100644
--- a/Tests/CMakeCommands/target_compile_options/main.cpp
+++ b/Tests/CMakeCommands/target_compile_options/main.cpp
@@ -9,6 +9,10 @@
# error Expected MY_PUBLIC_DEFINE
# endif
+# ifndef MY_MUTLI_COMP_PUBLIC_DEFINE
+# error Expected MY_MUTLI_COMP_PUBLIC_DEFINE
+# endif
+
# ifdef MY_INTERFACE_DEFINE
# error Unexpected MY_INTERFACE_DEFINE
# endif
@@ -25,6 +29,10 @@
# error Unexpected MY_PUBLIC_DEFINE
# endif
+# ifndef MY_MUTLI_COMP_PUBLIC_DEFINE
+# error Expected MY_MUTLI_COMP_PUBLIC_DEFINE
+# endif
+
#endif
int main()