From e92ca94803ecec9bcdb1ef5c23fde2835c31fa3c Mon Sep 17 00:00:00 2001 From: NDM14 Date: Tue, 9 Dec 2025 17:25:38 +0100 Subject: [PATCH] add installation and packaging target --- CMakeLists.txt | 21 +++++++++++++++++++++ cmake/CPackConfig.cmake | 19 +++++++++++++++++++ 2 files changed, 40 insertions(+) create mode 100644 cmake/CPackConfig.cmake diff --git a/CMakeLists.txt b/CMakeLists.txt index 94d6c2c..86f5c89 100644 --- a/CMakeLists.txt +++ b/CMakeLists.txt @@ -20,3 +20,24 @@ target_link_libraries(cpackexamplelib Boost::filesystem ${YAML_CPP_LIBRARIES}) DEAL_II_SETUP_TARGET("${PROJECT_NAME}") DEAL_II_SETUP_TARGET(cpackexamplelib) + +include(GNUInstallDirs) + +install(TARGETS "${PROJECT_NAME}" + RUNTIME DESTINATION ${CMAKE_INSTALL_BINDIR} +) + +install(TARGETS cpackexamplelib +ARCHIVE DESTINATION ${CMAKE_INSTALL_LIBDIR} +LIBRARY DESTINATION ${CMAKE_INSTALL_LIBDIR} +) + +install(FILES + fem/fem.hpp + filesystem/filesystem.hpp + flatset/flatset.hpp + yamlParser/yamlParser.hpp + DESTINATION ${CMAKE_INSTALL_INCLUDEDIR}/cpackexamplelib +) + +include(cmake/CPackConfig.cmake) \ No newline at end of file diff --git a/cmake/CPackConfig.cmake b/cmake/CPackConfig.cmake new file mode 100644 index 0000000..4d527b2 --- /dev/null +++ b/cmake/CPackConfig.cmake @@ -0,0 +1,19 @@ +set(CPACK_PACKAGE_NAME ${PROJECT_NAME}) + +set(CPACK_PACKAGE_DESCRIPTION_SUMMARY "example project for CPack exercise WT2526") +set(CPACK_PACKAGE_DESCRIPTION "CMake and CPack packaging example project for the exercise WT2526 at University of Stuttgar") +set(CPACK_PACKAGE_VENDOR "Paul Schmidt") +set(CPACK_PACKAGE_CONTACT "st191430@stud.uni-stuttgart.de") +set(CPACK_DEBIAN_PACKAGE_MAINTAINER "Paul Schmidt <${CPACK_PACKAGE_CONTACT}>") +set(CPACK_PACKAGE_HOMEPAGE_URL "https://github.com/NDM14/cpack-exercise-wt2526") + +set(CPACK_RESOURCE_FILE_LICENSE "${CMAKE_SOURCE_DIR}/LICENSE") +set(CPACK_RESOURCE_FILE_README "${CMAKE_SOURCE_DIR}/README.md") + +set(CPACK_GENERATOR "TGZ;DEB") +set(CPACK_DEBIAN_FILE_NAME DEB-DEFAULT) +set(CPACK_DEBIAN_PACKAGE_SHLIBDEPS YES) +set(CPACK_DEBIAN_PACKAGE_GENERATE_SHLIBS YES) +set(CPACK_STRIP_FILES TRUE) + +include(CPack) \ No newline at end of file