summaryrefslogtreecommitdiff
path: root/Tests/CompileOptions
diff options
context:
space:
mode:
authorStephen Kelly <steveire@gmail.com>2013-05-16 15:15:28 +0200
committerStephen Kelly <steveire@gmail.com>2013-06-02 11:56:37 +0200
commit80ca9c4b41ecdce069a6c3f4c1b558084a748876 (patch)
treee96eb29cd532378cd79c3e3ea4bb975ffbc2e285 /Tests/CompileOptions
parent7cb23084b2595d06aea46cead0e077b5f13aeddb (diff)
downloadcmake-80ca9c4b41ecdce069a6c3f4c1b558084a748876.tar.gz
Add COMPILE_OPTIONS target property.
This method reads generator expressions from the COMPILE_OPTIONS target property, as well as INTERFACE_COMPILE_OPTIONS from linked dependents.
Diffstat (limited to 'Tests/CompileOptions')
-rw-r--r--Tests/CompileOptions/CMakeLists.txt16
-rw-r--r--Tests/CompileOptions/main.cpp11
-rw-r--r--Tests/CompileOptions/other.cpp5
3 files changed, 32 insertions, 0 deletions
diff --git a/Tests/CompileOptions/CMakeLists.txt b/Tests/CompileOptions/CMakeLists.txt
new file mode 100644
index 0000000000..6d8a96a668
--- /dev/null
+++ b/Tests/CompileOptions/CMakeLists.txt
@@ -0,0 +1,16 @@
+cmake_minimum_required(VERSION 2.8)
+
+project(CompileOptions)
+
+add_library(testlib other.cpp)
+
+add_executable(CompileOptions main.cpp)
+set_property(TARGET CompileOptions PROPERTY COMPILE_OPTIONS "$<$<CXX_COMPILER_ID:GNU>:-DTEST_DEFINE>")
+target_link_libraries(CompileOptions testlib)
+
+if(CMAKE_CXX_COMPILER_ID MATCHES "GNU")
+ target_compile_definitions(CompileOptions
+ PRIVATE
+ "DO_GNU_TESTS"
+ )
+endif()
diff --git a/Tests/CompileOptions/main.cpp b/Tests/CompileOptions/main.cpp
new file mode 100644
index 0000000000..0d390503f8
--- /dev/null
+++ b/Tests/CompileOptions/main.cpp
@@ -0,0 +1,11 @@
+
+#ifdef DO_GNU_TESTS
+# ifndef TEST_DEFINE
+# error Expected TEST_DEFINE
+# endif
+#endif
+
+int main(int argc, char **argv)
+{
+ return 0;
+}
diff --git a/Tests/CompileOptions/other.cpp b/Tests/CompileOptions/other.cpp
new file mode 100644
index 0000000000..0e34375791
--- /dev/null
+++ b/Tests/CompileOptions/other.cpp
@@ -0,0 +1,5 @@
+
+void foo(void)
+{
+
+}