diff --git a/CMakeLists.txt b/CMakeLists.txt index 94d6c2c..39bfbe2 100644 --- a/CMakeLists.txt +++ b/CMakeLists.txt @@ -20,3 +20,20 @@ target_link_libraries(cpackexamplelib Boost::filesystem ${YAML_CPP_LIBRARIES}) DEAL_II_SETUP_TARGET("${PROJECT_NAME}") DEAL_II_SETUP_TARGET(cpackexamplelib) + +include(${CMAKE_CURRENT_SOURCE_DIR}/cmake/CPackConfig.cmake) + +install(TARGETS cpackexample + RUNTIME DESTINATION bin +) +install(TARGETS cpackexamplelib + ARCHIVE DESTINATION lib + LIBRARY DESTINATION lib +) +install(FILES + fem/fem.hpp + filesystem/filesystem.hpp + flatset/flatset.hpp + yamlParser/yamlParser.hpp + DESTINATION include/cpackexamplelib +) \ No newline at end of file diff --git a/cmake/CPackConfig.cmake b/cmake/CPackConfig.cmake new file mode 100644 index 0000000..e156bfa --- /dev/null +++ b/cmake/CPackConfig.cmake @@ -0,0 +1,33 @@ + +# 1. Allgemeine Metadaten (Pflicht laut deiner Aufgabe) +set(CPACK_PACKAGE_VENDOR "Simulation Software Engineering - Uni Stuttgart") +set(CPACK_PACKAGE_DESCRIPTION_SUMMARY "Ein Beispielprojekt mit Deal.II und Boost") +set(CPACK_PACKAGE_DESCRIPTION "Dies ist ein Beispielprojekt zur Demonstration von CPack, Deal.II und Boost. Es enthält eine kleine Bibliothek sowie ein Beispielprogramm.") +set(CPACK_PACKAGE_HOMEPAGE_URL "https://github.com/the-mr-dave/cpack-exercise-wt2526") +set(CPACK_RESOURCE_FILE_LICENSE "${CMAKE_CURRENT_SOURCE_DIR}/LICENSE") +set(CPACK_PACKAGE_CONTACT "st172309@stud.uni-stuttgart.de") # Wichtig für .deb + +# 2. Versionierung (übernimmt die Version aus project(...)) +set(CPACK_PACKAGE_VERSION_MAJOR ${PROJECT_VERSION_MAJOR}) +set(CPACK_PACKAGE_VERSION_MINOR ${PROJECT_VERSION_MINOR}) +set(CPACK_PACKAGE_VERSION_PATCH ${PROJECT_VERSION_PATCH}) + + +# 3. Generatoren festlegen: Nur TGZ und DEB +set(CPACK_GENERATOR "TGZ;DEB") + +# 4. Spezifische Einstellungen für Debian (.deb) +# Der Maintainer ist Pflicht für Debian-Pakete. +set(CPACK_DEBIAN_PACKAGE_MAINTAINER "David Enoghama ") + +set(CPACK_DEBIAN_FILE_NAME "DEB-DEFAULT") +set(CPACK_DEBIAN_PACKAGE_SHLIBDEPS ON) +set(CPACK_DEBIAN_PACKAGE_GENERATE_SHLIBS ON) +set(CPACK_STRIP_FILES TRUE) + +set(CPACK_DEBIAN_PACKAGE_MAINTAINER "Enoghadd ") +set(CPACK_DEBIAN_PACKAGE_DESCRIPTION "CPack example project packaged as a debian package.") +set(CPACK_DEBIAN_PACKAGE_DEPENDS "libc6, libboost-filesystem, libyaml-cpp") + +# 5. CPack Modul laden (Muss am Ende stehen) +include(CPack) \ No newline at end of file diff --git a/output_lintian/Lintian_output.jpg b/output_lintian/Lintian_output.jpg new file mode 100644 index 0000000..3589bc5 Binary files /dev/null and b/output_lintian/Lintian_output.jpg differ