Skip to content

Commit e98e0a6

Browse files
committed
Port CMake changes from libtommath for Debian packaging
Signed-off-by: Steffen Jaeckel <[email protected]>
1 parent ee24a31 commit e98e0a6

File tree

1 file changed

+18
-4
lines changed

1 file changed

+18
-4
lines changed

CMakeLists.txt

Lines changed: 18 additions & 4 deletions
Original file line numberDiff line numberDiff line change
@@ -153,6 +153,7 @@ if(WITH_LTM)
153153
target_link_libraries(${PROJECT_NAME} PUBLIC libtommath)
154154
list(APPEND LTC_MPI_PROVIDERS_CFLAGS -DLTM_DESC)
155155
list(APPEND LTC_MPI_PROVIDERS_LIBS -ltommath)
156+
list(APPEND LTC_DEBIAN_MPI_PROVIDER_DEPENDS libtommath-dev)
156157
endif()
157158
# tomsfastmath
158159
if(WITH_TFM)
@@ -165,6 +166,7 @@ if(WITH_TFM)
165166
target_link_libraries(${PROJECT_NAME} PUBLIC tomsfastmath)
166167
list(APPEND LTC_MPI_PROVIDERS_CFLAGS -DTFM_DESC)
167168
list(APPEND LTC_MPI_PROVIDERS_LIBS -ltfm)
169+
list(APPEND LTC_DEBIAN_MPI_PROVIDER_DEPENDS libtfm-dev)
168170
endif()
169171
# GNU MP
170172
if(WITH_GMP)
@@ -177,10 +179,12 @@ if(WITH_GMP)
177179
target_link_libraries(${PROJECT_NAME} PUBLIC ${GMP_LIBRARIES})
178180
list(APPEND LTC_MPI_PROVIDERS_CFLAGS -DGMP_DESC)
179181
list(APPEND LTC_MPI_PROVIDERS_LIBS -lgmp)
182+
list(APPEND LTC_DEBIAN_MPI_PROVIDER_DEPENDS libgmp-dev)
180183
endif()
181184

182185
list(JOIN LTC_MPI_PROVIDERS_CFLAGS " " MPI_PROVIDERS_CFLAGS)
183186
list(JOIN LTC_MPI_PROVIDERS_LIBS " " MPI_PROVIDERS_LIBS)
187+
list(JOIN LTC_DEBIAN_MPI_PROVIDER_DEPENDS " " DEBIAN_MPI_PROVIDER_DEPENDS)
184188

185189
#-----------------------------------------------------------------------------
186190
# demos&test targets
@@ -204,7 +208,7 @@ set(TARGETS_EXPORT_NAME "${PROJECT_NAME}Targets")
204208
install(TARGETS ${PROJECT_NAME}
205209
EXPORT ${TARGETS_EXPORT_NAME}
206210
LIBRARY DESTINATION ${CMAKE_INSTALL_LIBDIR}
207-
ARCHIVE DESTINATION ${CMAKE_INSTALL_LIBDIR}
211+
ARCHIVE DESTINATION ${CMAKE_INSTALL_LIBDIR} COMPONENT Libraries
208212
RUNTIME DESTINATION ${CMAKE_INSTALL_LIBDIR}
209213
PUBLIC_HEADER DESTINATION ${CMAKE_INSTALL_INCLUDEDIR}/${PROJECT_NAME}
210214
)
@@ -295,13 +299,17 @@ elseif(CMAKE_SYSTEM_NAME STREQUAL "FreeBSD")
295299
list(APPEND CPACK_GENERATOR FREEBSD)
296300
endif()
297301

302+
set(LTC_DEBIAN_SHARED_PACKAGE_NAME "${PROJECT_NAME}${PACKAGE_NAME_SUFFIX}${PROJECT_VERSION_MAJOR}")
303+
298304
# general CPack config
299305
set(CPACK_PACKAGE_DIRECTORY ${CMAKE_BINARY_DIR}/packages/${DISTRO_PACK_PATH})
300306
message(STATUS "CPack: packages will be generated under ${CPACK_PACKAGE_DIRECTORY}")
301307
if(BUILD_SHARED_LIBS)
302308
set(CPACK_PACKAGE_NAME "${PROJECT_NAME}${PROJECT_VERSION_MAJOR}")
309+
set(CPACK_DEBIAN_PACKAGE_NAME "${LTC_DEBIAN_SHARED_PACKAGE_NAME}")
303310
else()
304311
set(CPACK_PACKAGE_NAME "${PROJECT_NAME}-devel")
312+
set(CPACK_DEBIAN_LIBRARIES_PACKAGE_NAME "${PROJECT_NAME}${PACKAGE_NAME_SUFFIX}-dev")
305313
endif()
306314
set(CPACK_PACKAGE_VERSION ${PROJECT_VERSION})
307315
set(CPACK_PACKAGE_DESCRIPTION_SUMMARY "LibTomCrypt")
@@ -314,15 +322,21 @@ set(CPACK_STRIP_FILES ON)
314322

315323
# deb specific CPack config
316324
set(CPACK_DEBIAN_FILE_NAME DEB-DEFAULT)
317-
set(CPACK_DEBIAN_PACKAGE_SHLIBDEPS ON)
325+
set(CPACK_DEBIAN_DEBUGINFO_PACKAGE ON)
318326
set(CPACK_DEBIAN_PACKAGE_RELEASE ${PACKAGE_RELEASE_VERSION})
327+
set(CPACK_DEBIAN_PACKAGE_SHLIBDEPS ON)
319328
if(BUILD_SHARED_LIBS)
320329
set(CPACK_DEBIAN_PACKAGE_SECTION "libs")
330+
set(CPACK_DEBIAN_PACKAGE_DEPENDS ${DEBIAN_MPI_PROVIDER_DEPENDS})
321331
else()
322-
set(CPACK_DEBIAN_PACKAGE_NAME "${PROJECT_NAME}-dev")
323-
set(CPACK_DEBIAN_PACKAGE_SECTION "devel")
332+
set(CPACK_DEBIAN_PACKAGE_SECTION "libdevel")
333+
set(CPACK_DEBIAN_PACKAGE_DEPENDS ${LTC_DEBIAN_SHARED_PACKAGE_NAME})
334+
set(CPACK_DEB_COMPONENT_INSTALL ON)
335+
set(CPACK_ARCHIVE_COMPONENT_INSTALL ON)
336+
set(CPACK_COMPONENTS_ALL Libraries)
324337
endif()
325338

339+
326340
# rpm specific CPack config
327341
set(CPACK_RPM_PACKAGE_RELEASE ${PACKAGE_RELEASE_VERSION})
328342
set(CPACK_RPM_PACKAGE_ARCHITECTURE ${MACHINE_ARCH})

0 commit comments

Comments
 (0)