summaryrefslogtreecommitdiffstats
diff options
context:
space:
mode:
authorBrad King <brad.king@kitware.com>2012-03-20 19:06:16 (GMT)
committerBrad King <brad.king@kitware.com>2012-03-20 19:09:57 (GMT)
commitfb7348f64455242dcbbb3837c697c9bf88414ae2 (patch)
treeb0be3651270c1944fb78ec938cf40c59d115faba
parent93d5509b5b1c208f3ed28daf35f9384ab6918441 (diff)
downloadCMake-fb7348f64455242dcbbb3837c697c9bf88414ae2.zip
CMake-fb7348f64455242dcbbb3837c697c9bf88414ae2.tar.gz
CMake-fb7348f64455242dcbbb3837c697c9bf88414ae2.tar.bz2
Fix ObjectLibrary test on Watcom
The Watcom compiler interprets "-DB" as option -db generate browsing information so define "A_DEF" and "B_DEF" instead of just "A" and "B". Skip CMAKE_SHARED_LIBRARY_C_FLAGS for Watcom because it is set to -bd build Dynamic link library which adds a DLL entry point to each object.
-rw-r--r--Tests/ObjectLibrary/A/CMakeLists.txt4
-rw-r--r--Tests/ObjectLibrary/A/a.h8
-rw-r--r--Tests/ObjectLibrary/B/CMakeLists.txt4
-rw-r--r--Tests/ObjectLibrary/B/b.h8
4 files changed, 12 insertions, 12 deletions
diff --git a/Tests/ObjectLibrary/A/CMakeLists.txt b/Tests/ObjectLibrary/A/CMakeLists.txt
index e0a620e..121a8ac 100644
--- a/Tests/ObjectLibrary/A/CMakeLists.txt
+++ b/Tests/ObjectLibrary/A/CMakeLists.txt
@@ -1,10 +1,10 @@
# Add -fPIC so objects can be used in shared libraries.
# TODO: Need property for this.
-if(CMAKE_SHARED_LIBRARY_C_FLAGS)
+if(CMAKE_SHARED_LIBRARY_C_FLAGS AND NOT WATCOM)
set(CMAKE_C_FLAGS "${CMAKE_SHARED_LIBRARY_C_FLAGS} ${CMAKE_C_FLAGS}")
endif()
-add_definitions(-DA)
+add_definitions(-DA_DEF)
add_custom_command(
OUTPUT a1.c
diff --git a/Tests/ObjectLibrary/A/a.h b/Tests/ObjectLibrary/A/a.h
index 6bfbc82..7259f98 100644
--- a/Tests/ObjectLibrary/A/a.h
+++ b/Tests/ObjectLibrary/A/a.h
@@ -1,6 +1,6 @@
-#ifndef A
-# error "A not defined"
+#ifndef A_DEF
+# error "A_DEF not defined"
#endif
-#ifdef B
-# error "B must not be defined"
+#ifdef B_DEF
+# error "B_DEF must not be defined"
#endif
diff --git a/Tests/ObjectLibrary/B/CMakeLists.txt b/Tests/ObjectLibrary/B/CMakeLists.txt
index 498d45d..67172d1 100644
--- a/Tests/ObjectLibrary/B/CMakeLists.txt
+++ b/Tests/ObjectLibrary/B/CMakeLists.txt
@@ -5,11 +5,11 @@ endif()
# Add -fPIC so objects can be used in shared libraries.
# TODO: Need property for this.
-if(CMAKE_SHARED_LIBRARY_C_FLAGS)
+if(CMAKE_SHARED_LIBRARY_C_FLAGS AND NOT WATCOM)
set(CMAKE_C_FLAGS "${CMAKE_SHARED_LIBRARY_C_FLAGS} ${CMAKE_C_FLAGS}")
endif()
-add_definitions(-DB)
+add_definitions(-DB_DEF)
add_library(B OBJECT b1.c b2.c)
add_library(Bexport OBJECT b1${vs6}.c b2${vs6}.c)
set_property(TARGET Bexport PROPERTY COMPILE_DEFINITIONS Bexport)
diff --git a/Tests/ObjectLibrary/B/b.h b/Tests/ObjectLibrary/B/b.h
index 632004d..11b22f4 100644
--- a/Tests/ObjectLibrary/B/b.h
+++ b/Tests/ObjectLibrary/B/b.h
@@ -1,8 +1,8 @@
-#ifdef A
-# error "A must not be defined"
+#ifdef A_DEF
+# error "A_DEF must not be defined"
#endif
-#ifndef B
-# error "B not defined"
+#ifndef B_DEF
+# error "B_DEF not defined"
#endif
#if defined(_WIN32) && defined(Bexport)
# define EXPORT_B __declspec(dllexport)