summaryrefslogtreecommitdiff
path: root/Modules/Platform/Windows-wcl386.cmake
diff options
context:
space:
mode:
authorBill Hoffman <bill.hoffman@kitware.com>2006-01-17 10:21:45 -0500
committerBill Hoffman <bill.hoffman@kitware.com>2006-01-17 10:21:45 -0500
commit9891260a6dab66c9ea44b5c2e244f3128625baf5 (patch)
tree930651e4383fe1d904cc9c493bd859cb97b530af /Modules/Platform/Windows-wcl386.cmake
parent2694ad76c538333d3ff45613bd1201f97af003cd (diff)
downloadcmake-9891260a6dab66c9ea44b5c2e244f3128625baf5.tar.gz
ENH: add support for watcom wmake and wcl386
Diffstat (limited to 'Modules/Platform/Windows-wcl386.cmake')
-rw-r--r--Modules/Platform/Windows-wcl386.cmake56
1 files changed, 56 insertions, 0 deletions
diff --git a/Modules/Platform/Windows-wcl386.cmake b/Modules/Platform/Windows-wcl386.cmake
new file mode 100644
index 0000000000..fb81be5b6e
--- /dev/null
+++ b/Modules/Platform/Windows-wcl386.cmake
@@ -0,0 +1,56 @@
+SET(CMAKE_LIBRARY_PATH_FLAG "libpath ")
+SET(CMAKE_LINK_LIBRARY_FLAG "library ")
+
+IF(CMAKE_VERBOSE_MAKEFILE)
+ SET(CMAKE_WCL_QUIET)
+ SET(CMAKE_WLINK_QUIET)
+ SET(CMAKE_LIB_QUIET)
+ELSE(CMAKE_VERBOSE_MAKEFILE)
+ SET(CMAKE_WCL_QUIET "-zq")
+ SET(CMAKE_WLINK_QUIET "option quiet")
+ SET(CMAKE_LIB_QUIET "-q")
+ENDIF(CMAKE_VERBOSE_MAKEFILE)
+
+SET(CMAKE_BUILD_TYPE_INIT Debug)
+SET (CMAKE_CXX_FLAGS_INIT "-w=3 -xs")
+SET (CMAKE_CXX_FLAGS_DEBUG_INIT "-br -bm -d2")
+SET (CMAKE_CXX_FLAGS_MINSIZEREL_INIT "-br -bm -os -dNDEBUG")
+SET (CMAKE_CXX_FLAGS_RELEASE_INIT "-br -bm -ot -dNDEBUG")
+SET (CMAKE_CXX_FLAGS_RELWITHDEBINFO_INIT "-br -bm -d2 -ot -dNDEBUG")
+SET (CMAKE_C_FLAGS_INIT "-w=3 ")
+SET (CMAKE_C_FLAGS_DEBUG_INIT "-br -bm -od")
+SET (CMAKE_C_FLAGS_MINSIZEREL_INIT "-br -bm -os -dNDEBUG")
+SET (CMAKE_C_FLAGS_RELEASE_INIT "-br -bm -ot -dNDEBUG")
+SET (CMAKE_C_FLAGS_RELWITHDEBINFO_INIT "-br -bm -ot -dNDEBUG")
+SET (CMAKE_STANDARD_LIBRARIES "library clbrdll.lib library plbrdll.lib library kernel32.lib library user32.lib library gdi32.lib library winspool.lib library comdlg32.lib library advapi32.lib library shell32.lib library ole32.lib library oleaut32.lib library uuid.lib library odbc32.lib library odbccp32.lib" CACHE STRING
+ "Libraries linked by defalut with all applications.")
+
+SET(CMAKE_C_LINK_EXECUTABLE
+ "wlink ${CMAKE_START_TEMP_FILE} ${CMAKE_WLINK_QUIET} name <TARGET> option caseexact file {<OBJECTS>} <LINK_LIBRARIES> ${CMAKE_END_TEMP_FILE}")
+
+SET(CMAKE_CXX_LINK_EXECUTABLE ${CMAKE_C_LINK_EXECUTABLE})
+
+# compile a C++ file into an object file
+SET(CMAKE_CXX_COMPILE_OBJECT
+ "<CMAKE_CXX_COMPILER> ${CMAKE_START_TEMP_FILE} ${CMAKE_WCL_QUIET} <FLAGS> -dWIN32 -fo<OBJECT> -c -cc++ <SOURCE>${CMAKE_END_TEMP_FILE}")
+
+# compile a C file into an object file
+SET(CMAKE_C_COMPILE_OBJECT
+ "<CMAKE_C_COMPILER> ${CMAKE_START_TEMP_FILE} ${CMAKE_WCL_QUIET} <FLAGS> -dWIN32 -fo<OBJECT> -c -cc <SOURCE>${CMAKE_END_TEMP_FILE}")
+
+SET(CMAKE_CXX_CREATE_SHARED_LIBRARY
+ "wlink ${CMAKE_START_TEMP_FILE} system nt_dll ${CMAKE_WLINK_QUIET} name <TARGET> option caseexact file {<OBJECTS>} <LINK_LIBRARIES>"
+ "wlib -q -n -b <TARGET_BASE>.lib +<TARGET_BASE>.dll ${CMAKE_END_TEMP_FILE}")
+SET(CMAKE_CXX_CREATE_SHARED_MODULE ${CMAKE_CXX_CREATE_SHARED_LIBRARY})
+
+# create a C shared library
+SET(CMAKE_C_CREATE_SHARED_LIBRARY ${CMAKE_CXX_CREATE_SHARED_LIBRARY})
+
+# create a C shared module just copy the shared library rule
+SET(CMAKE_C_CREATE_SHARED_MODULE ${CMAKE_C_CREATE_SHARED_LIBRARY})
+
+# create a C++ static library
+SET(CMAKE_CXX_CREATE_STATIC_LIBRARY "wlib ${CMAKE_LIB_QUIET} -n -b <TARGET> <OBJECTS> ")
+
+# create a C static library
+SET(CMAKE_C_CREATE_STATIC_LIBRARY ${CMAKE_CXX_CREATE_STATIC_LIBRARY})