diff --git a/tools/packaging/debian/debian.changelog.in b/tools/packaging/debian/changelog.in similarity index 100% rename from tools/packaging/debian/debian.changelog.in rename to tools/packaging/debian/changelog.in diff --git a/tools/packaging/debian/debian.control.in b/tools/packaging/debian/control.in similarity index 77% rename from tools/packaging/debian/debian.control.in rename to tools/packaging/debian/control.in index 797943751b9afe1531457374ba6aca9c1d1b43e1..3595c529462fe41709749a5efe2c95e65bcd9849 100644 --- a/tools/packaging/debian/debian.control.in +++ b/tools/packaging/debian/control.in @@ -42,3 +42,20 @@ Description: @PACKAGE_DESCRIPTION_SUMMARY@ . This is the parallel version in Release mode of AMDiS. +Package: libamdis-debug +Architecture: any +Depends: ${shlibs:Depends}, ${misc:Depends}, libamdis (= @PACKAGE_VERSION@) +Description: @PACKAGE_DESCRIPTION_SUMMARY@ + @PACKAGE_DESCRIPTION@ + . + This is the sequential version in Debug mode of AMDiS. + +Package: libamdis-par-debug +Architecture: any +Depends: ${shlibs:Depends}, ${misc:Depends}, libamdis-par (= @PACKAGE_VERSION@) +Description: @PACKAGE_DESCRIPTION_SUMMARY@ + @PACKAGE_DESCRIPTION@ + . + This is the parallel version in Debug mode of AMDiS. + + diff --git a/tools/packaging/debian/debian.copyright.in b/tools/packaging/debian/copyright.in similarity index 100% rename from tools/packaging/debian/debian.copyright.in rename to tools/packaging/debian/copyright.in diff --git a/tools/packaging/debian/create_package.cmake b/tools/packaging/debian/create_package.cmake index 54d268cf47f85c49d421eea43479af76cc9bd000..e5ac49790ca7ad87e9b26f1d81028613a439d4ab 100644 --- a/tools/packaging/debian/create_package.cmake +++ b/tools/packaging/debian/create_package.cmake @@ -1,84 +1,71 @@ -# Command line arguments: -# CONFIG = [Debug|Release] -# COMPONENT = [SEQUENTIAL|PARALLEL] +set(PACKAGE_SOURCE_NAME "amdis") +set(PACKAGE_NAME "libamdis") +set(PACKAGE_SECTION "libdevel") +set(PACKAGE_VERSION "1.1~rc1") +set(PACKAGE_VERSION_MAJOR "1") +set(PACKAGE_VERSION_MINOR "1") +set(PACKAGE_VERSION_PATCH "0") + +set(PACKAGE_CONTACT "Simon Praetorius ") +set(PACKAGE_SOURCE "") + +set(PACKAGE_DESCRIPTION_SUMMARY "A C++ library to solve a broad class of PDEs using adaptive finite elements.") +set(PACKAGE_DESCRIPTION_FILE "${CMAKE_SOURCE_DIR}/README.md") +set(PACKAGE_DESCRIPTION +"Adaptive MultiDimensional Simulations (AMDiS) is a C++ library + to solve a broad class of partial differential equations (PDEs) using + adaptive finite elements.") + +set(PACKAGE_LICENSE_FILE "${CMAKE_SOURCE_DIR}/LICENSE") +set(PACKAGE_README_FILE "${CMAKE_SOURCE_DIR}/README.md") -set(PACKAGE_SOURCE_NAME "amdis") -set(PACKAGE_NAME "libamdis") - -if ("${COMPONENT}" STREQUAL "PARALLEL") - set(PACKAGE_NAME "${PACKAGE_NAME}-par") - set(ADDITIONAL_FLAGS "-DENABLE_UMFPACK:BOOL=OFF -DENABLE_PARALLEL_DOMAIN:BOOL=ON") -else () - set(ADDITIONAL_FLAGS "-DENABLE_UMFPACK:BOOL=ON") -endif () - -if ("${CONFIG}" STREQUAL "Debug") - set(PACKAGE_NAME "${PACKAGE_NAME}-debug") - set(PACKAGE_SECTION "debug") -else () - set(PACKAGE_SECTION "misc") -endif () +file(READ ${CMAKE_SOURCE_DIR}/AUTHORS PACKAGE_AUTHORS) +execute_process(COMMAND date OUTPUT_VARIABLE PACKAGE_DATE) set(IN_DIR ${CMAKE_SOURCE_DIR}/tools/packaging/debian) set(OUT_DIR ${CMAKE_SOURCE_DIR}/debian_package) file(MAKE_DIRECTORY ${OUT_DIR}) - -configure_file(${IN_DIR}/CPackOptions.cmake.in ${OUT_DIR}/CPackOptions.cmake @ONLY) -include(${OUT_DIR}/CPackOptions.cmake) - -set(PACKAGE_FILENAME ${CPACK_PACKAGE_NAME}_${CPACK_PACKAGE_VERSION}) -set(PACKAGE_PREFIX ${CPACK_PACKAGE_NAME}-${CPACK_PACKAGE_VERSION}) +set(PACKAGE_FILENAME ${PACKAGE_SOURCE_NAME}_${PACKAGE_VERSION}) +set(PACKAGE_PREFIX ${PACKAGE_SOURCE_NAME}-${PACKAGE_VERSION}) set(TGZ_FILENAME ${OUT_DIR}/${PACKAGE_FILENAME}.orig.tar.gz) +# create source tar.gz archive using git archive execute_process(COMMAND git archive --format=tar.gz --prefix ${PACKAGE_PREFIX}/ -o ${TGZ_FILENAME} master) -execute_process(COMMAND date +%F OUTPUT_VARIABLE CURRENT_DATE) -execute_process(COMMAND date +%Y OUTPUT_VARIABLE YEAR) - -set(PACKAGE_VERSION ${CPACK_PACKAGE_VERSION}) -SET(PACKAGE_VERSION_MAJOR ${CPACK_PACKAGE_VERSION_MAJOR}) -SET(PACKAGE_VERSION_MINOR ${CPACK_PACKAGE_VERSION_MINOR}) -SET(PACKAGE_VERSION_PATCH ${CPACK_PACKAGE_VERSION_PATCH}) -set(PACKAGE_SOURCE "") -set(PACKAGE_CONTACT ${CPACK_PACKAGE_CONTACT}) -execute_process(COMMAND date OUTPUT_VARIABLE PACKAGE_DATE) - -file(READ ${CMAKE_SOURCE_DIR}/AUTHORS PACKAGE_AUTHORS) -set(PACKAGE_DESCRIPTION_SUMMARY ${CPACK_PACKAGE_DESCRIPTION_SUMMARY}) -set(PACKAGE_DESCRIPTION ${CPACK_PACKAGE_DESCRIPTION}) -set(PACKAGE_LICENSE_FILE ${CMAKE_SOURCE_DIR}/LICENSE) -set(PACKAGE_README_FILE ${CMAKE_SOURCE_DIR}/README.md) -set(PACKAGE_DESCRIPTION_FILE ${PACKAGE_README_FILE}) - -# extract package generated by CPack +# extract package generated above execute_process(COMMAND tar -xzf ${TGZ_FILENAME} -C ${OUT_DIR}) +# fill debian source package directory set(DEBIAN_DIR ${OUT_DIR}/${PACKAGE_PREFIX}/debian) +file(MAKE_DIRECTORY ${DEBIAN_DIR}) +file(MAKE_DIRECTORY ${DEBIAN_DIR}/soure) + +execute_process(COMMAND date +%F OUTPUT_VARIABLE CURRENT_DATE) +execute_process(COMMAND date +%Y OUTPUT_VARIABLE YEAR) -# generate necessary files for debian packages if (NOT EXISTS ${CMAKE_SOURCE_DIR}/CHANGELOG) - configure_file(${IN_DIR}/debian.changelog.in ${CMAKE_SOURCE_DIR}/CHANGELOG @ONLY) + configure_file(${IN_DIR}/changelog.in ${CMAKE_SOURCE_DIR}/CHANGELOG @ONLY) elseif (UPDATE_CHANGELOG) execute_process(COMMAND dch -i -M "New release version published at ${CURRENT_DATE}" -c ${CMAKE_SOURCE_DIR}/CHANGELOG) endif () message(STATUS "Changelog must be uploaded to master") -file(MAKE_DIRECTORY ${DEBIAN_DIR}) -file(MAKE_DIRECTORY ${DEBIAN_DIR}/soure) - configure_file(${CMAKE_SOURCE_DIR}/CHANGELOG ${DEBIAN_DIR}/changelog COPYONLY) -configure_file(${IN_DIR}/debian.copyright.in ${DEBIAN_DIR}/copyright @ONLY) -configure_file(${IN_DIR}/debian.control.in ${DEBIAN_DIR}/control @ONLY) -configure_file(${IN_DIR}/debian.rules.in ${DEBIAN_DIR}/rules @ONLY) +configure_file(${IN_DIR}/copyright.in ${DEBIAN_DIR}/copyright @ONLY) +configure_file(${IN_DIR}/control.in ${DEBIAN_DIR}/control @ONLY) +configure_file(${IN_DIR}/rules.in ${DEBIAN_DIR}/rules @ONLY) +execute_process(COMMAND chmod +x ${DEBIAN_DIR}/rules) + configure_file(${IN_DIR}/libamdis-dev.install ${DEBIAN_DIR}/libamdis-dev.install @ONLY) configure_file(${IN_DIR}/libamdis.install ${DEBIAN_DIR}/libamdis.install @ONLY) configure_file(${IN_DIR}/libamdis-par.install ${DEBIAN_DIR}/libamdis-par.install @ONLY) -execute_process(COMMAND chmod +x ${DEBIAN_DIR}/rules) +configure_file(${IN_DIR}/libamdis-debug.install ${DEBIAN_DIR}/libamdis-debug.install @ONLY) +configure_file(${IN_DIR}/libamdis-par-debug.install ${DEBIAN_DIR}/libamdis-par-debug.install @ONLY) + file(WRITE ${DEBIAN_DIR}/compat "9\n") file(WRITE ${DEBIAN_DIR}/soure/format "3.0 (quilt)\n") - # generate the debian package execute_process(COMMAND debuild -d -us -uc WORKING_DIRECTORY ${OUT_DIR}/${PACKAGE_PREFIX}) diff --git a/tools/packaging/debian/debian.rules.in b/tools/packaging/debian/debian.rules.in deleted file mode 100644 index 96680c190e22b14caaecb13631353f831a4de54f..0000000000000000000000000000000000000000 --- a/tools/packaging/debian/debian.rules.in +++ /dev/null @@ -1,52 +0,0 @@ -#!/usr/bin/make -f - -%: - dh $@ - -override_dh_auto_configure: - dh_auto_configure -Scmake -DAMDiS --builddirectory=build_libamdis --package=libamdis -- \ - -DCMAKE_BUILD_TYPE=Release \ - -DENABLE_EXTENSIONS:BOOL=ON \ - -DENABLE_COMPRESSION:BOOL=ON \ - -DENABLE_UMFPACK:BOOL=ON - - dh_auto_configure -Scmake -DAMDiS --builddirectory=build_libamdis_par --package=libamdis-par -- \ - -DCMAKE_BUILD_TYPE=Release \ - -DENABLE_EXTENSIONS:BOOL=ON \ - -DENABLE_COMPRESSION:BOOL=ON \ - -DENABLE_UMFPACK:BOOL=OFF \ - -DENABLE_PARALLEL_DOMAIN:BOOL=ON - -# dh_auto_configure -Scmake -DAMDiS --builddirectory=build_libamdis_par_debug --package=libamdis-par-debug -- \ -# -DCMAKE_BUILD_TYPE=Debug \ -# -DENABLE_EXTENSIONS:BOOL=ON \ -# -DENABLE_COMPRESSION:BOOL=ON \ -# -DENABLE_UMFPACK:BOOL=OFF \ -# -DENABLE_PARALLEL_DOMAIN:BOOL=ON - -# dh_auto_configure -Scmake -DAMDiS --builddirectory=build_libamdis_debug --package=libamdis-debug -- \ -# -DCMAKE_BUILD_TYPE=Debug \ -# -DENABLE_EXTENSIONS:BOOL=ON \ -# -DENABLE_COMPRESSION:BOOL=ON \ -# -DENABLE_UMFPACK:BOOL=ON - -override_dh_auto_build: - dh_auto_build --builddirectory=build_libamdis --package=libamdis - dh_auto_build --builddirectory=build_libamdis_par --package=libamdis-par - -# dh_auto_build -DAMDiS --builddirectory=build_libamdis_debug --package=libamdis-debug -# dh_auto_build -DAMDiS --builddirectory=build_libamdis_par_debug --package=libamdis-par-debug - -override_dh_auto_install: - dh_auto_install --builddirectory=build_libamdis --package=libamdis - dh_install --package=libamdis-dev - dh_install --package=libamdis - - dh_auto_install --builddirectory=build_libamdis_par --package=libamdis-par - dh_install --package=libamdis-par - - -# override_dh_strip: -# dh_Strip --remaining-packages -# dh_strip --package=libamdis-debug --keep-debug -# dh_strip --package=libamdis-par-debug --keep-debug diff --git a/tools/packaging/debian/libamdis-debug.install b/tools/packaging/debian/libamdis-debug.install index 4836d9cd92c7959c6db5ce591af315530710d10b..6624677ffe12e099c4fc554e9de522c106f98683 100644 --- a/tools/packaging/debian/libamdis-debug.install +++ b/tools/packaging/debian/libamdis-debug.install @@ -2,4 +2,3 @@ /usr/lib/amdis/libamdiscompositefem-sd.so /usr/lib/amdis/libamdisreinit-sd.so /usr/lib/amdis/libamdisextensions-sd.so -/usr/share/amdis/AMDIS-sd.cmake diff --git a/tools/packaging/debian/libamdis-par-debug.install b/tools/packaging/debian/libamdis-par-debug.install index ce67f025f2459da9e75178149e7ef296749cf575..753890d763d5a3bf9624a959d70207f72df24936 100644 --- a/tools/packaging/debian/libamdis-par-debug.install +++ b/tools/packaging/debian/libamdis-par-debug.install @@ -2,4 +2,3 @@ /usr/lib/amdis/libamdiscompositefem-pd.so /usr/lib/amdis/libamdisreinit-pd.so /usr/lib/amdis/libamdisextensions-pd.so -/usr/share/amdis/AMDIS-pd.cmake diff --git a/tools/packaging/debian/rules.in b/tools/packaging/debian/rules.in new file mode 100644 index 0000000000000000000000000000000000000000..fb357c3a7acff6aca8ac4a1f0badc3ed0eb3e419 --- /dev/null +++ b/tools/packaging/debian/rules.in @@ -0,0 +1,55 @@ +#!/usr/bin/make -f + +%: + dh $@ + +override_dh_auto_configure: + dh_auto_configure -Scmake -DAMDiS --builddirectory=build_libamdis --package=libamdis -- \ + -DCMAKE_BUILD_TYPE=Release \ + -DENABLE_EXTENSIONS:BOOL=ON \ + -DENABLE_COMPRESSION:BOOL=ON \ + -DENABLE_UMFPACK:BOOL=ON + + dh_auto_configure -Scmake -DAMDiS --builddirectory=build_libamdis_par --package=libamdis-par -- \ + -DCMAKE_BUILD_TYPE=Release \ + -DENABLE_EXTENSIONS:BOOL=ON \ + -DENABLE_COMPRESSION:BOOL=ON \ + -DENABLE_UMFPACK:BOOL=OFF \ + -DENABLE_PARALLEL_DOMAIN:BOOL=ON + + dh_auto_configure -Scmake -DAMDiS --builddirectory=build_libamdis_debug --package=libamdis-debug -- \ + -DCMAKE_BUILD_TYPE=Debug \ + -DENABLE_EXTENSIONS:BOOL=ON \ + -DENABLE_COMPRESSION:BOOL=ON \ + -DENABLE_UMFPACK:BOOL=ON + + dh_auto_configure -Scmake -DAMDiS --builddirectory=build_libamdis_par_debug --package=libamdis-par-debug -- \ + -DCMAKE_BUILD_TYPE=Debug \ + -DENABLE_EXTENSIONS:BOOL=ON \ + -DENABLE_COMPRESSION:BOOL=ON \ + -DENABLE_UMFPACK:BOOL=OFF \ + -DENABLE_PARALLEL_DOMAIN:BOOL=ON + +override_dh_auto_build: + dh_auto_build --builddirectory=build_libamdis --package=libamdis --max-parallel=2 + dh_auto_build --builddirectory=build_libamdis_par --package=libamdis-par --max-parallel=2 + dh_auto_build --builddirectory=build_libamdis_debug --package=libamdis-debug --max-parallel=2 + dh_auto_build --builddirectory=build_libamdis_par_debug --package=libamdis-par-debug --max-parallel=2 + +override_dh_auto_install: + dh_auto_install --builddirectory=build_libamdis --package=libamdis + dh_auto_install --builddirectory=build_libamdis_par --package=libamdis-par + dh_auto_install --builddirectory=build_libamdis_debug --package=libamdis-debug + dh_auto_install --builddirectory=build_libamdis_par_debug --package=libamdis-par-debug + +override_dh_install: + dh_install --package=libamdis-dev + dh_install --package=libamdis + dh_install --package=libamdis-par + dh_install --package=libamdis-debug + dh_install --package=libamdis-par-debug + +override_dh_strip: + dh_strip --package=libamdis-debug --keep-debug + dh_strip --package=libamdis-par-debug --keep-debug + dh_strip --remaining-packages