Resync
[CMakeLuaTailorHgBridge.git] / CMakeLua / Modules / Platform / Windows-icl.cmake
blobdc40c87c1f710944b1659f641b2735f3b6b0f247
1 SET(CMAKE_LIBRARY_PATH_FLAG "-LIBPATH:")
2 SET(CMAKE_LINK_LIBRARY_FLAG "")
3 SET(WIN32 1)
4 IF(CMAKE_VERBOSE_MAKEFILE)
5   SET(CMAKE_CL_NOLOGO)
6 ELSE(CMAKE_VERBOSE_MAKEFILE)
7   SET(CMAKE_CL_NOLOGO "/nologo")
8 ENDIF(CMAKE_VERBOSE_MAKEFILE)
9 # create a shared C++ library
10 SET(CMAKE_CXX_CREATE_SHARED_LIBRARY 
11  "xilink ${CMAKE_CL_NOLOGO} ${CMAKE_START_TEMP_FILE}  /out:<TARGET> /dll  <LINK_FLAGS> <OBJECTS> <LINK_LIBRARIES> ${CMAKE_END_TEMP_FILE}")
13 SET(CMAKE_CXX_CREATE_SHARED_MODULE ${CMAKE_CXX_CREATE_SHARED_LIBRARY})
15 # create a C shared library
16 SET(CMAKE_C_CREATE_SHARED_LIBRARY ${CMAKE_CXX_CREATE_SHARED_LIBRARY})
18 # create a C shared module just copy the shared library rule
19 SET(CMAKE_C_CREATE_SHARED_MODULE ${CMAKE_C_CREATE_SHARED_LIBRARY})
22 # create a C++ static library
23 SET(CMAKE_CXX_CREATE_STATIC_LIBRARY  "lib ${CMAKE_CL_NOLOGO} <LINK_FLAGS> /out:<TARGET> <OBJECTS> ")
25 # create a C static library
26 SET(CMAKE_C_CREATE_STATIC_LIBRARY ${CMAKE_CXX_CREATE_STATIC_LIBRARY})
28 # compile a C++ file into an object file
29 SET(CMAKE_CXX_COMPILE_OBJECT
30     "<CMAKE_CXX_COMPILER>  ${CMAKE_START_TEMP_FILE} ${CMAKE_CL_NOLOGO} /TP -DWIN32 /Fo<OBJECT> <DEFINES> <FLAGS> -c <SOURCE>${CMAKE_END_TEMP_FILE}")
32 # compile a C file into an object file
33 SET(CMAKE_C_COMPILE_OBJECT
34     "<CMAKE_C_COMPILER> ${CMAKE_START_TEMP_FILE} ${CMAKE_CL_NOLOGO} -DWIN32 /Fo<OBJECT> <DEFINES> <FLAGS> -c <SOURCE>${CMAKE_END_TEMP_FILE}")
37 SET(CMAKE_C_LINK_EXECUTABLE
38     "<CMAKE_C_COMPILER> ${CMAKE_CL_NOLOGO} ${CMAKE_START_TEMP_FILE} <FLAGS> <OBJECTS> /Fe<TARGET> -link <CMAKE_C_LINK_FLAGS> <LINK_FLAGS> <LINK_LIBRARIES>${CMAKE_END_TEMP_FILE}")
40 SET(CMAKE_COMPILE_RESOURCE "rc <FLAGS> /fo<OBJECT> <SOURCE>")
42 SET(CMAKE_CXX_LINK_EXECUTABLE
43     "<CMAKE_CXX_COMPILER> ${CMAKE_CL_NOLOGO} ${CMAKE_START_TEMP_FILE} <FLAGS> <OBJECTS> /Fe<TARGET> -link <CMAKE_CXX_LINK_FLAGS> <LINK_FLAGS> <LINK_LIBRARIES>${CMAKE_END_TEMP_FILE}")
45 SET(CMAKE_CREATE_WIN32_EXE /subsystem:windows)
46 SET(CMAKE_CREATE_CONSOLE_EXE /subsystem:console)
48 # default to Debug builds
49 #SET(CMAKE_BUILD_TYPE_INIT Debug)
50 SET(CMAKE_BUILD_TYPE_INIT Release)
51 SET (CMAKE_CXX_FLAGS_INIT "/W3 /Zm1000 /GX /GR")
52 SET (CMAKE_CXX_FLAGS_DEBUG_INIT "/MDd /Zi /Od /GZ")
53 SET (CMAKE_CXX_FLAGS_MINSIZEREL_INIT "/MD /O1")
54 SET (CMAKE_CXX_FLAGS_RELEASE_INIT "/MD /O2")
55 SET (CMAKE_CXX_FLAGS_RELWITHDEBINFO_INIT "/MD /Zi /O2")
56 SET (CMAKE_C_FLAGS_INIT "/W3 /Zm1000")
57 SET (CMAKE_C_FLAGS_DEBUG_INIT "/MDd /Zi /Od /GZ")
58 SET (CMAKE_C_FLAGS_MINSIZEREL_INIT "/MD /O1")
59 SET (CMAKE_C_FLAGS_RELEASE_INIT "/MD /O2")
60 SET (CMAKE_C_FLAGS_RELWITHDEBINFO_INIT "/MD /Zi /O2")
63 SET(CMAKE_C_STANDARD_LIBRARIES_INIT "kernel32.lib user32.lib gdi32.lib winspool.lib comdlg32.lib advapi32.lib shell32.lib ole32.lib oleaut32.lib uuid.lib kernel32.lib user32.lib gdi32.lib winspool.lib comdlg32.lib advapi32.lib shell32.lib ole32.lib oleaut32.lib uuid.lib")
64 SET(CMAKE_CXX_STANDARD_LIBRARIES_INIT "${CMAKE_C_STANDARD_LIBRARIES_INIT}")
66 # executable linker flags
67 SET (CMAKE_LINK_DEF_FILE_FLAG "/DEF:")
68 SET (CMAKE_EXE_LINKER_FLAGS_INIT "/STACK:10000000 /INCREMENTAL:YES")
69 SET (CMAKE_EXE_LINKER_FLAGS_DEBUG_INIT "/debug")
70 SET (CMAKE_EXE_LINKER_FLAGS_RELWITHDEBINFO_INIT "/debug")
72 SET (CMAKE_SHARED_LINKER_FLAGS_INIT ${CMAKE_EXE_LINKER_FLAGS_INIT})
73 SET (CMAKE_SHARED_LINKER_FLAGS_DEBUG_INIT ${CMAKE_EXE_LINKER_FLAGS_DEBUG_INIT})
74 SET (CMAKE_SHARED_LINKER_FLAGS_RELWITHDEBINFO_INIT ${CMAKE_EXE_LINKER_FLAGS_DEBUG_INIT})
75 SET (CMAKE_MODULE_LINKER_FLAGS_INIT ${CMAKE_SHARED_LINKER_FLAGS_INIT})
76 SET (CMAKE_MODULE_LINKER_FLAGS_DEBUG_INIT ${CMAKE_SHARED_LINKER_FLAGS_DEBUG_INIT})
77 SET (CMAKE_MODULE_LINKER_FLAGS_RELWITHDEBINFO_INIT ${CMAKE_EXE_LINKER_FLAGS_RELWITHDEBINFO_INIT})