From 1364041fb6ec1114ed3eaf7b27ca6ab941732dc7 Mon Sep 17 00:00:00 2001 From: Henrik Hautakoski Date: Thu, 8 Sep 2022 14:33:32 +0200 Subject: [PATCH 1/4] .gitignore: Don't ignore package.cmake --- .gitignore | 1 + 1 file changed, 1 insertion(+) diff --git a/.gitignore b/.gitignore index 8bf88545cc..7083c29c68 100644 --- a/.gitignore +++ b/.gitignore @@ -10,6 +10,7 @@ *.abi.hpp *.cmake !.cicd +!package.cmake !CMakeModules/*.cmake *.ninja \#* From f3d95914534627e698d99681c43794f59cd3e466 Mon Sep 17 00:00:00 2001 From: Henrik Hautakoski Date: Thu, 8 Sep 2022 14:34:21 +0200 Subject: [PATCH 2/4] package.cmake: Proper setup .deb filename in CPACK_DEBIAN_FILE_NAME variable. --- package.cmake | 14 ++++++++++++++ 1 file changed, 14 insertions(+) diff --git a/package.cmake b/package.cmake index 66f01e6195..c782db15c7 100644 --- a/package.cmake +++ b/package.cmake @@ -21,6 +21,20 @@ if(CMAKE_VERSION VERSION_GREATER_EQUAL "3.9" AND EXISTS /etc/os-release) string(APPEND CPACK_PACKAGE_FILE_NAME "-el${CMAKE_MATCH_1}") endif() endif() + +# Fix debian package filename as it should have the format: +# __.deb + +# Find architecture using dpkg +if (DPKG_FOUND) + execute_process(COMMAND bash -c "${DPKG_FOUND} --print-architecture" + OUTPUT_VARIABLE DEB_ARCH + OUTPUT_STRIP_TRAILING_WHITESPACE) +else() + set(DEB_ARCH "${CMAKE_SYSTEM_PROCESSOR}") +endif() +string(REGEX REPLACE "^${CMAKE_PROJECT_NAME}-(.*)$" "${CMAKE_PROJECT_NAME}_\\1_${DEB_ARCH}" CPACK_DEBIAN_FILE_NAME "${CPACK_PACKAGE_FILE_NAME}") + string(APPEND CPACK_PACKAGE_FILE_NAME "-${CMAKE_SYSTEM_PROCESSOR}") set(CPACK_PACKAGE_CONTACT "EOS Network Foundation") From c325c1746e7f0710d22fef1b525d17c6e91710b8 Mon Sep 17 00:00:00 2001 From: Henrik Hautakoski Date: Thu, 8 Sep 2022 14:38:12 +0200 Subject: [PATCH 3/4] package.cmake: use CPACK_DEBIAN_FILE_NAME when setting CPACK_DEBIAN_BASE_FILE_NAME --- package.cmake | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/package.cmake b/package.cmake index c782db15c7..c95742d800 100644 --- a/package.cmake +++ b/package.cmake @@ -57,7 +57,7 @@ list(REMOVE_ITEM CPACK_COMPONENTS_ALL "Unspecified") #enable per component packages for .deb; ensure main package is just "leap", not "leap-base", and make the dev package have "leap-dev" at the front not the back set(CPACK_DEB_COMPONENT_INSTALL ON) set(CPACK_DEBIAN_BASE_PACKAGE_NAME "${CMAKE_PROJECT_NAME}") -set(CPACK_DEBIAN_BASE_FILE_NAME "${CPACK_PACKAGE_FILE_NAME}.deb") +set(CPACK_DEBIAN_BASE_FILE_NAME "${CPACK_DEBIAN_FILE_NAME}.deb") string(REGEX REPLACE "^(${CMAKE_PROJECT_NAME})" "\\1-dev" CPACK_DEBIAN_DEV_FILE_NAME "${CPACK_DEBIAN_BASE_FILE_NAME}") #deb package tooling will be unable to detect deps for the dev package. llvm is tricky since we don't know what package could have been used; try to figure it out From acd452e37bf17ffd66772e3d71aba181f5600dba Mon Sep 17 00:00:00 2001 From: Henrik Hautakoski Date: Tue, 13 Sep 2022 15:44:52 +0200 Subject: [PATCH 4/4] package.cmake: set CPACK_DEBIAN_PACKAGE_ARCHITECTURE instead of DEB_ARCH. --- package.cmake | 6 +++--- 1 file changed, 3 insertions(+), 3 deletions(-) diff --git a/package.cmake b/package.cmake index c95742d800..3ec67d290d 100644 --- a/package.cmake +++ b/package.cmake @@ -28,12 +28,12 @@ endif() # Find architecture using dpkg if (DPKG_FOUND) execute_process(COMMAND bash -c "${DPKG_FOUND} --print-architecture" - OUTPUT_VARIABLE DEB_ARCH + OUTPUT_VARIABLE CPACK_DEBIAN_PACKAGE_ARCHITECTURE OUTPUT_STRIP_TRAILING_WHITESPACE) else() - set(DEB_ARCH "${CMAKE_SYSTEM_PROCESSOR}") + set(CPACK_DEBIAN_PACKAGE_ARCHITECTURE "${CMAKE_SYSTEM_PROCESSOR}") endif() -string(REGEX REPLACE "^${CMAKE_PROJECT_NAME}-(.*)$" "${CMAKE_PROJECT_NAME}_\\1_${DEB_ARCH}" CPACK_DEBIAN_FILE_NAME "${CPACK_PACKAGE_FILE_NAME}") +string(REGEX REPLACE "^${CMAKE_PROJECT_NAME}-(.*)$" "${CMAKE_PROJECT_NAME}_\\1_${CPACK_DEBIAN_PACKAGE_ARCHITECTURE}" CPACK_DEBIAN_FILE_NAME "${CPACK_PACKAGE_FILE_NAME}") string(APPEND CPACK_PACKAGE_FILE_NAME "-${CMAKE_SYSTEM_PROCESSOR}")