4 SET(CMAKE_SHARED_LIBRARY_CREATE_C_FLAGS "-shared -Wl,--export-all-symbols -Wl,--enable-auto-import")
5 SET(CMAKE_SHARED_MODULE_CREATE_C_FLAGS ${CMAKE_SHARED_LIBRARY_CREATE_C_FLAGS})
6 SET(CMAKE_DL_LIBS "-lgdi32" )
7 SET(CMAKE_SHARED_LIBRARY_PREFIX "cyg")
8 SET(CMAKE_SHARED_LIBRARY_SUFFIX ".dll")
9 SET(CMAKE_SHARED_MODULE_PREFIX "lib")
10 SET(CMAKE_SHARED_MODULE_SUFFIX ".dll")
11 SET(CMAKE_IMPORT_LIBRARY_PREFIX "lib")
12 SET(CMAKE_IMPORT_LIBRARY_SUFFIX ".dll.a")
13 # no pic for gcc on cygwin
14 SET(CMAKE_SHARED_LIBRARY_C_FLAGS "")
15 SET(CMAKE_SHARED_LIBRARY_CXX_FLAGS "")
16 SET(CMAKE_EXECUTABLE_SUFFIX ".exe") # .exe
17 SET(CMAKE_CREATE_WIN32_EXE "-mwindows")
18 # Modules have a different default prefix that shared libs.
19 SET(CMAKE_MODULE_EXISTS 1)
21 SET(CMAKE_FIND_LIBRARY_PREFIXES "cyg" "lib")
22 SET(CMAKE_FIND_LIBRARY_SUFFIXES ".dll" ".dll.a" ".a")
24 SET(CMAKE_GNULD_IMAGE_VERSION
25 "-Wl,--major-image-version,<TARGET_VERSION_MAJOR>,--minor-image-version,<TARGET_VERSION_MINOR>")
27 SET(CMAKE_C_CREATE_SHARED_MODULE
28 "<CMAKE_C_COMPILER> <LANGUAGE_COMPILE_FLAGS> <CMAKE_SHARED_MODULE_C_FLAGS> <LINK_FLAGS> <CMAKE_SHARED_MODULE_CREATE_C_FLAGS> -o <TARGET> ${CMAKE_GNULD_IMAGE_VERSION} <OBJECTS> <LINK_LIBRARIES>")
29 SET(CMAKE_CXX_CREATE_SHARED_MODULE
30 "<CMAKE_CXX_COMPILER> <LANGUAGE_COMPILE_FLAGS> <CMAKE_SHARED_MODULE_CXX_FLAGS> <LINK_FLAGS> <CMAKE_SHARED_MODULE_CREATE_CXX_FLAGS> -o <TARGET> ${CMAKE_GNULD_IMAGE_VERSION} <OBJECTS> <LINK_LIBRARIES>")
32 SET(CMAKE_C_CREATE_SHARED_LIBRARY
33 "<CMAKE_C_COMPILER> <LANGUAGE_COMPILE_FLAGS> <CMAKE_SHARED_LIBRARY_C_FLAGS> <LINK_FLAGS> <CMAKE_SHARED_LIBRARY_CREATE_C_FLAGS> -o <TARGET> -Wl,--out-implib,<TARGET_IMPLIB> ${CMAKE_GNULD_IMAGE_VERSION} <OBJECTS> <LINK_LIBRARIES>")
34 SET(CMAKE_CXX_CREATE_SHARED_LIBRARY
35 "<CMAKE_CXX_COMPILER> <LANGUAGE_COMPILE_FLAGS> <CMAKE_SHARED_LIBRARY_CXX_FLAGS> <LINK_FLAGS> <CMAKE_SHARED_LIBRARY_CREATE_CXX_FLAGS> -o <TARGET> -Wl,--out-implib,<TARGET_IMPLIB> ${CMAKE_GNULD_IMAGE_VERSION} <OBJECTS> <LINK_LIBRARIES>")
37 SET(CMAKE_C_LINK_EXECUTABLE
38 "<CMAKE_C_COMPILER> <FLAGS> <CMAKE_C_LINK_FLAGS> <LINK_FLAGS> <OBJECTS> -o <TARGET> -Wl,--out-implib,<TARGET_IMPLIB> ${CMAKE_GNULD_IMAGE_VERSION} <LINK_LIBRARIES>")
39 SET(CMAKE_CXX_LINK_EXECUTABLE
40 "<CMAKE_CXX_COMPILER> <FLAGS> <CMAKE_CXX_LINK_FLAGS> <LINK_FLAGS> <OBJECTS> -o <TARGET> -Wl,--out-implib,<TARGET_IMPLIB> ${CMAKE_GNULD_IMAGE_VERSION} <LINK_LIBRARIES>")
42 # Shared libraries on cygwin can be named with their version number.
43 SET(CMAKE_SHARED_LIBRARY_NAME_WITH_VERSION 1)
45 # Initialize C link type selection flags. These flags are used when
46 # building a shared library, shared module, or executable that links
47 # to other libraries to select whether to use the static or shared
48 # versions of the libraries.
49 FOREACH(type SHARED_LIBRARY SHARED_MODULE EXE)
50 SET(CMAKE_${type}_LINK_STATIC_C_FLAGS "-Wl,-Bstatic")
51 SET(CMAKE_${type}_LINK_DYNAMIC_C_FLAGS "-Wl,-Bdynamic")
54 INCLUDE(Platform/UnixPaths)