aboutsummaryrefslogtreecommitdiff
path: root/contrib/puff
diff options
context:
space:
mode:
Diffstat (limited to 'contrib/puff')
-rw-r--r--contrib/puff/CMakeLists.txt61
1 files changed, 60 insertions, 1 deletions
diff --git a/contrib/puff/CMakeLists.txt b/contrib/puff/CMakeLists.txt
index f7418fd7..1696c76a 100644
--- a/contrib/puff/CMakeLists.txt
+++ b/contrib/puff/CMakeLists.txt
@@ -1,7 +1,7 @@
1cmake_minimum_required(VERSION 3.12...3.31) 1cmake_minimum_required(VERSION 3.12...3.31)
2 2
3project( 3project(
4 iostreamsV3 4 puff
5 VERSION 1.0.0 5 VERSION 1.0.0
6 LANGUAGES C 6 LANGUAGES C
7 DESCRIPTION "A library for decompressing deflate with very little footprint" 7 DESCRIPTION "A library for decompressing deflate with very little footprint"
@@ -10,6 +10,10 @@ project(
10option(ZLIB_PUFF_BUILD_SHARED "Enable building blast shared library" ON) 10option(ZLIB_PUFF_BUILD_SHARED "Enable building blast shared library" ON)
11option(ZLIB_PUFF_BUILD_STATIC "Enable building blast static library" ON) 11option(ZLIB_PUFF_BUILD_STATIC "Enable building blast static library" ON)
12option(ZLIB_PUFF_BUILD_TESTING "Enable building tests for blast" ON) 12option(ZLIB_PUFF_BUILD_TESTING "Enable building tests for blast" ON)
13option(ZLIB_PUFF_INSTALL "Enable installation of puff" ON)
14
15include(GNUInstallDirs)
16include(CMakePackageConfigHelpers)
13 17
14if(NOT DEFINED ZLIB_BUILD_PUFF) 18if(NOT DEFINED ZLIB_BUILD_PUFF)
15 if(ZLIB_PUFF_BUILD_SHARED) 19 if(ZLIB_PUFF_BUILD_SHARED)
@@ -135,3 +139,58 @@ if(ZLIB_PUFF_BUILD_STATIC)
135 endif(GCOV_EXECUTABLE) 139 endif(GCOV_EXECUTABLE)
136 endif(ZLIB_PUFF_BUILD_TESTING) 140 endif(ZLIB_PUFF_BUILD_TESTING)
137endif(ZLIB_PUFF_BUILD_STATIC) 141endif(ZLIB_PUFF_BUILD_STATIC)
142
143if(ZLIB_PUFF_INSTALL)
144 if(ZLIB_PUFF_BUILD_SHARED)
145 install(
146 TARGETS zlib_puff_puff
147 COMPONENT Runtime
148 EXPORT puffSharedExport
149 RUNTIME DESTINATION "${CMAKE_INSTALL_BINDIR}")
150 install(
151 EXPORT puffSharedExport
152 FILE puff-shared.cmake
153 NAMESPACE PUFF::
154 DESTINATION ${CMAKE_INSTALL_LIBDIR}/cmake/puff)
155
156 if(MSVC)
157 install(
158 FILES $<TARGET_PDB_FILE:zlib_puff_puff>
159 COMPONENT Development
160 DESTINATION ${CMAKE_INSTALL_BINDIR}
161 CONFIGURATIONS Debug OR RelWithDebInfo
162 OPTIONAL)
163 endif(MSVC)
164 endif(ZLIB_PUFF_BUILD_SHARED)
165
166 if(ZLIB_PUFF_BUILD_STATIC)
167 install(
168 TARGETS zlib_puff_puffStatic
169 COMPONENT Development
170 EXPORT puffStaticExport
171 ARCHIVE DESTINATION "${CMAKE_INSTALL_LIBDIR}")
172 install(
173 EXPORT puffStaticExport
174 FILE puff-static.cmake
175 NAMESPACE PUFF::
176 DESTINATION ${CMAKE_INSTALL_LIBDIR}/cmake/puff)
177 endif(ZLIB_PUFF_BUILD_STATIC)
178
179 configure_package_config_file(
180 ${puff_SOURCE_DIR}/puffConfig.cmake.in
181 ${puff_BINARY_DIR}/puffConfig.cmake
182 INSTALL_DESTINATION ${CMAKE_INSTALL_LIBDIR}/cmake/puff)
183
184 write_basic_package_version_file(
185 "${puff_BINARY_DIR}/puffConfigVersion.cmake"
186 VERSION "${puff_VERSION}"
187 COMPATIBILITY AnyNewerVersion)
188
189 install(FILES ${puff_BINARY_DIR}/puffConfig.cmake
190 ${puff_BINARY_DIR}/puffConfigVersion.cmake
191 DESTINATION ${CMAKE_INSTALL_LIBDIR}/cmake/puff)
192 install(
193 FILES puff.h
194 COMPONENT Development
195 DESTINATION "${CMAKE_INSTALL_INCLUDEDIR}")
196endif(ZLIB_PUFF_INSTALL)