aboutsummaryrefslogtreecommitdiff
diff options
context:
space:
mode:
-rw-r--r--CMakeLists.txt12
1 files changed, 4 insertions, 8 deletions
diff --git a/CMakeLists.txt b/CMakeLists.txt
index 26bb1d4..39d2104 100644
--- a/CMakeLists.txt
+++ b/CMakeLists.txt
@@ -9,10 +9,6 @@ set(INSTALL_INC_DIR "${CMAKE_INSTALL_PREFIX}/include" CACHE PATH "Installation d
9set(INSTALL_MAN_DIR "${CMAKE_INSTALL_PREFIX}/share/man" CACHE PATH "Installation directory for manual pages") 9set(INSTALL_MAN_DIR "${CMAKE_INSTALL_PREFIX}/share/man" CACHE PATH "Installation directory for manual pages")
10set(INSTALL_PKGCONFIG_DIR "${CMAKE_INSTALL_PREFIX}/share/pkgconfig" CACHE PATH "Installation directory for pkgconfig (.pc) files") 10set(INSTALL_PKGCONFIG_DIR "${CMAKE_INSTALL_PREFIX}/share/pkgconfig" CACHE PATH "Installation directory for pkgconfig (.pc) files")
11 11
12if(NOT DEFINED BUILD_SHARED_LIBS)
13 option(BUILD_SHARED_LIBS "Build a shared library form of zlib" ON)
14endif()
15
16include(CheckTypeSize) 12include(CheckTypeSize)
17include(CheckFunctionExists) 13include(CheckFunctionExists)
18include(CheckIncludeFile) 14include(CheckIncludeFile)
@@ -147,9 +143,9 @@ if(MINGW)
147 set(ZLIB_SRCS ${ZLIB_SRCS} ${CMAKE_CURRENT_BINARY_DIR}/zlib1rc.obj) 143 set(ZLIB_SRCS ${ZLIB_SRCS} ${CMAKE_CURRENT_BINARY_DIR}/zlib1rc.obj)
148endif(MINGW) 144endif(MINGW)
149 145
150add_library(zlib ${ZLIB_SRCS} ${ZLIB_PUBLIC_HDRS} ${ZLIB_PRIVATE_HDRS}) 146add_library(zlib SHARED ${ZLIB_SRCS} ${ZLIB_PUBLIC_HDRS} ${ZLIB_PRIVATE_HDRS})
147add_library(zlibstatic STATIC ${ZLIB_SRCS} ${ZLIB_PUBLIC_HDRS} ${ZLIB_PRIVATE_HDRS})
151set_target_properties(zlib PROPERTIES DEFINE_SYMBOL ZLIB_DLL) 148set_target_properties(zlib PROPERTIES DEFINE_SYMBOL ZLIB_DLL)
152
153set_target_properties(zlib PROPERTIES SOVERSION 1) 149set_target_properties(zlib PROPERTIES SOVERSION 1)
154 150
155if(NOT CYGWIN) 151if(NOT CYGWIN)
@@ -165,14 +161,14 @@ endif()
165 161
166if(UNIX) 162if(UNIX)
167 # On unix-like platforms the library is almost always called libz 163 # On unix-like platforms the library is almost always called libz
168 set_target_properties(zlib PROPERTIES OUTPUT_NAME z) 164 set_target_properties(zlib zlibstatic PROPERTIES OUTPUT_NAME z)
169elseif(BUILD_SHARED_LIBS AND WIN32) 165elseif(BUILD_SHARED_LIBS AND WIN32)
170 # Creates zlib1.dll when building shared library version 166 # Creates zlib1.dll when building shared library version
171 set_target_properties(zlib PROPERTIES SUFFIX "1.dll") 167 set_target_properties(zlib PROPERTIES SUFFIX "1.dll")
172endif() 168endif()
173 169
174if(NOT SKIP_INSTALL_LIBRARIES AND NOT SKIP_INSTALL_ALL ) 170if(NOT SKIP_INSTALL_LIBRARIES AND NOT SKIP_INSTALL_ALL )
175 install(TARGETS zlib 171 install(TARGETS zlib zlibstatic
176 RUNTIME DESTINATION "${INSTALL_BIN_DIR}" 172 RUNTIME DESTINATION "${INSTALL_BIN_DIR}"
177 ARCHIVE DESTINATION "${INSTALL_LIB_DIR}" 173 ARCHIVE DESTINATION "${INSTALL_LIB_DIR}"
178 LIBRARY DESTINATION "${INSTALL_LIB_DIR}" ) 174 LIBRARY DESTINATION "${INSTALL_LIB_DIR}" )