[Cmake-commits] [cmake-commits] king committed CYGWIN-GNU.cmake 1.2 1.3

cmake-commits at cmake.org cmake-commits at cmake.org
Thu Jan 21 15:03:38 EST 2010


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

Modified Files:
	CYGWIN-GNU.cmake 
Log Message:
Do not export all symbols from DLLs on Cygwin

In commit "use export all symbols on cygwin" (2003-01-21) we started
passing -Wl,--export-all-symbols when linking shared libraries.  Now
cygwin exports all symbols automatically if no symbols are explicitly
exported.  When symbols are explicitly exported we want to honor that
narrow interface.  Therefore this flag should not be passed.

Change based on patch from issue #10122.


Index: CYGWIN-GNU.cmake
===================================================================
RCS file: /cvsroot/CMake/CMake/Modules/Platform/CYGWIN-GNU.cmake,v
retrieving revision 1.2
retrieving revision 1.3
diff -C 2 -d -r1.2 -r1.3
*** CYGWIN-GNU.cmake	21 Jan 2010 20:03:17 -0000	1.2
--- CYGWIN-GNU.cmake	21 Jan 2010 20:03:32 -0000	1.3
***************
*** 19,22 ****
--- 19,23 ----
  set(__CYGWIN_COMPILER_GNU 1)
  
+ # TODO: Is -Wl,--enable-auto-import now always default?
  set(CMAKE_EXE_LINKER_FLAGS_INIT "-Wl,--enable-auto-import")
  set(CMAKE_CREATE_WIN32_EXE  "-mwindows")
***************
*** 45,50 ****
    ENDFOREACH(type)
  
!   # To simulate UNIX shared libs we export/import all DLL symbols.
!   set(CMAKE_SHARED_LIBRARY_CREATE_${lang}_FLAGS "${CMAKE_SHARED_LIBRARY_CREATE_${lang}_FLAGS} -Wl,--export-all-symbols -Wl,--enable-auto-import")
    set(CMAKE_SHARED_MODULE_CREATE_${lang}_FLAGS "${CMAKE_SHARED_LIBRARY_CREATE_${lang}_FLAGS}")
  endmacro()
--- 46,51 ----
    ENDFOREACH(type)
  
!   # TODO: Is -Wl,--enable-auto-import now always default?
!   set(CMAKE_SHARED_LIBRARY_CREATE_${lang}_FLAGS "${CMAKE_SHARED_LIBRARY_CREATE_${lang}_FLAGS} -Wl,--enable-auto-import")
    set(CMAKE_SHARED_MODULE_CREATE_${lang}_FLAGS "${CMAKE_SHARED_LIBRARY_CREATE_${lang}_FLAGS}")
  endmacro()



More information about the Cmake-commits mailing list