[cmake-commits] king committed Windows-bcc32.cmake 1.41 1.42 Windows-wcl386.cmake 1.4 1.5

cmake-commits at cmake.org cmake-commits at cmake.org
Thu Mar 22 08:45:27 EST 2007


Update of /cvsroot/CMake/CMake/Modules/Platform
In directory public:/mounts/ram/cvs-serv10697/Modules/Platform

Modified Files:
	Windows-bcc32.cmake Windows-wcl386.cmake 
Log Message:
ENH: Added target property ENABLE_EXPORTS for executable targets.  It enables the executables for linking by loadable modules that import symbols from the executable.  This finishes the executable import library support mentioned in bug #4210.


Index: Windows-wcl386.cmake
===================================================================
RCS file: /cvsroot/CMake/CMake/Modules/Platform/Windows-wcl386.cmake,v
retrieving revision 1.4
retrieving revision 1.5
diff -u -d -r1.4 -r1.5
--- Windows-wcl386.cmake	10 Mar 2007 12:49:47 -0000	1.4
+++ Windows-wcl386.cmake	22 Mar 2007 13:45:25 -0000	1.5
@@ -25,6 +25,10 @@
 SET (CMAKE_C_STANDARD_LIBRARIES_INIT "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")
 SET (CMAKE_CXX_STANDARD_LIBRARIES_INIT "${CMAKE_C_STANDARD_LIBRARIES_INIT}")
 
+SET(CMAKE_C_CREATE_IMPORT_LIBRARY
+  "wlib -q -n -b <TARGET_IMPLIB> +<TARGET>")
+SET(CMAKE_CXX_CREATE_IMPORT_LIBRARY ${CMAKE_C_CREATE_IMPORT_LIBRARY})
+
 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}")
 
@@ -39,9 +43,10 @@
     "<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_MODULE
- "wlink ${CMAKE_START_TEMP_FILE} system nt_dll  ${CMAKE_WLINK_QUIET} name <TARGET> option caseexact  file {<OBJECTS>} <LINK_LIBRARIES>")
-SET(CMAKE_CXX_CREATE_SHARED_LIBRARY ${CMAKE_CXX_CREATE_SHARED_MODULE}
- "wlib -q -n -b <TARGET_IMPLIB> +<TARGET> ${CMAKE_END_TEMP_FILE}")
+ "wlink ${CMAKE_START_TEMP_FILE} system nt_dll  ${CMAKE_WLINK_QUIET} name <TARGET> option caseexact  file {<OBJECTS>} <LINK_LIBRARIES> ${CMAKE_END_TEMP_FILE}")
+SET(CMAKE_CXX_CREATE_SHARED_LIBRARY
+  ${CMAKE_CXX_CREATE_SHARED_MODULE}
+  ${CMAKE_CXX_CREATE_IMPORT_LIBRARY})
 
 # create a C shared library
 SET(CMAKE_C_CREATE_SHARED_LIBRARY ${CMAKE_CXX_CREATE_SHARED_LIBRARY})

Index: Windows-bcc32.cmake
===================================================================
RCS file: /cvsroot/CMake/CMake/Modules/Platform/Windows-bcc32.cmake,v
retrieving revision 1.41
retrieving revision 1.42
diff -u -d -r1.41 -r1.42
--- Windows-bcc32.cmake	20 Mar 2007 13:14:27 -0000	1.41
+++ Windows-bcc32.cmake	22 Mar 2007 13:45:25 -0000	1.42
@@ -26,6 +26,11 @@
 # Borland cannot handle + in the file name, so mangle object file name
 SET (CMAKE_MANGLE_OBJECT_FILE_NAMES "ON")
 
+# Create an import library for another target.
+SET(CMAKE_CXX_CREATE_IMPORT_LIBRARY
+  "implib -c -w <TARGET_IMPLIB> <TARGET>"
+  )
+
 # Create a C++ module library.
 SET(CMAKE_CXX_CREATE_SHARED_MODULE
  "<CMAKE_CXX_COMPILER>  ${CMAKE_START_TEMP_FILE}-e<TARGET>  -tWD  <LINK_FLAGS> -tWR <LINK_LIBRARIES> <OBJECTS>${CMAKE_END_TEMP_FILE}"
@@ -33,9 +38,12 @@
 
 # Create a C++ shared library.
 # First create a module and then its import library.
-SET(CMAKE_CXX_CREATE_SHARED_LIBRARY ${CMAKE_CXX_CREATE_SHARED_MODULE}
- "implib -c -w <TARGET_IMPLIB> <TARGET>"
-  )
+SET(CMAKE_CXX_CREATE_SHARED_LIBRARY
+  ${CMAKE_CXX_CREATE_SHARED_MODULE}
+  ${CMAKE_CXX_CREATE_IMPORT_LIBRARY})
+
+# Create an import library for another target.
+SET(CMAKE_C_CREATE_IMPORT_LIBRARY ${CMAKE_CXX_CREATE_IMPORT_LIBRARY})
 
 # Create a C module library.
 SET(CMAKE_C_CREATE_SHARED_MODULE
@@ -44,9 +52,9 @@
 
 # Create a C shared library.
 # First create a module and then its import library.
-SET(CMAKE_C_CREATE_SHARED_LIBRARY ${CMAKE_C_CREATE_SHARED_MODULE}
- "implib -c -w <TARGET_IMPLIB> <TARGET>"
-  )
+SET(CMAKE_C_CREATE_SHARED_LIBRARY
+  ${CMAKE_C_CREATE_SHARED_MODULE}
+  ${CMAKE_C_CREATE_IMPORT_LIBRARY})
 
 # create a C++ static library
 SET(CMAKE_CXX_CREATE_STATIC_LIBRARY  "tlib ${CMAKE_START_TEMP_FILE}/p512 <LINK_FLAGS> /a <TARGET_QUOTED> <OBJECTS_QUOTED>${CMAKE_END_TEMP_FILE}")



More information about the Cmake-commits mailing list