From dff7068a039d5421021a0b97d6fbc7b40def72e0 Mon Sep 17 00:00:00 2001 From: Jonas Kvinge Date: Fri, 6 May 2022 18:26:46 +0200 Subject: [PATCH] Move debian configuration to separate CMakeLists.txt --- CMakeLists.txt | 16 ++++------------ cmake/Deb.cmake | 15 +-------------- debian/CMakeLists.txt | 22 ++++++++++++++++++++++ dist/CMakeLists.txt | 3 --- 4 files changed, 27 insertions(+), 29 deletions(-) create mode 100644 debian/CMakeLists.txt diff --git a/CMakeLists.txt b/CMakeLists.txt index f3b39f34..3c3ad398 100644 --- a/CMakeLists.txt +++ b/CMakeLists.txt @@ -234,18 +234,6 @@ if(BUILD_WITH_QT5 AND Qt5Core_VERSION VERSION_LESS 5.15.0) endmacro() endif() -if(LINUX AND DPKG_BUILDPACKAGE) - if(BUILD_WITH_QT5) - set(DEBIAN_BUILD_DEPENDS_QT_PACKAGES qtbase5-dev,qtbase5-dev-tools,qttools5-dev,qttools5-dev-tools,libqt5x11extras5-dev) - set(DEBIAN_DEPENDS_QT_PACKAGES libqt5sql5-sqlite) - endif() - if(BUILD_WITH_QT6) - set(DEBIAN_BUILD_DEPENDS_QT_PACKAGES qt6-base-dev,qt6-base-dev-tools,qt6-tools-dev,qt6-tools-dev-tools,qt6-l10n-tools) - set(DEBIAN_DEPENDS_QT_PACKAGES libqt6sql6-sqlite,qt6-qpa-plugins) - endif() - configure_file(${CMAKE_SOURCE_DIR}/debian/control.in ${CMAKE_SOURCE_DIR}/debian/control @ONLY) -endif() - if(X11_FOUND) find_path(KEYSYMDEF_H NAMES "keysymdef.h" PATHS "${X11_INCLUDE_DIR}" PATH_SUFFIXES "X11") find_path(XF86KEYSYM_H NAMES "XF86keysym.h" PATHS "${XCB_INCLUDEDIR}" PATH_SUFFIXES "X11") @@ -530,6 +518,10 @@ if(GTest_FOUND AND GMOCK_LIBRARY AND QtTest_LIBRARIES) add_subdirectory(tests) endif() +if(LINUX AND LSB_RELEASE_EXEC AND DPKG_BUILDPACKAGE) + add_subdirectory(debian) +endif() + # Uninstall support configure_file("${CMAKE_CURRENT_SOURCE_DIR}/cmake_uninstall.cmake.in" "${CMAKE_CURRENT_BINARY_DIR}/cmake_uninstall.cmake" IMMEDIATE @ONLY) diff --git a/cmake/Deb.cmake b/cmake/Deb.cmake index 8056b7d6..3d0a6dd6 100644 --- a/cmake/Deb.cmake +++ b/cmake/Deb.cmake @@ -2,18 +2,5 @@ find_program(LSB_RELEASE_EXEC lsb_release) find_program(DPKG_BUILDPACKAGE dpkg-buildpackage) if (LSB_RELEASE_EXEC AND DPKG_BUILDPACKAGE) - execute_process(COMMAND env LC_ALL=C date "+%a, %-d %b %Y %H:%M:%S %z" OUTPUT_VARIABLE DEB_DATE OUTPUT_STRIP_TRAILING_WHITESPACE) - - execute_process(COMMAND /bin/sh "-c" "${LSB_RELEASE_EXEC} -cs" - OUTPUT_VARIABLE DEB_CODENAME - OUTPUT_STRIP_TRAILING_WHITESPACE - ) - - if (DEB_CODENAME AND DEB_DATE) - add_custom_target(deb - WORKING_DIRECTORY ${CMAKE_SOURCE_DIR} - COMMAND ${DPKG_BUILDPACKAGE} -b -d -uc -us - ) - endif() - + add_custom_target(deb WORKING_DIRECTORY ${CMAKE_SOURCE_DIR} COMMAND ${DPKG_BUILDPACKAGE} -b -d -uc -us) endif() diff --git a/debian/CMakeLists.txt b/debian/CMakeLists.txt new file mode 100644 index 00000000..683d1d3c --- /dev/null +++ b/debian/CMakeLists.txt @@ -0,0 +1,22 @@ +if(LSB_RELEASE_EXEC AND DPKG_BUILDPACKAGE) + + execute_process(COMMAND env LC_ALL=C date "+%a, %-d %b %Y %H:%M:%S %z" OUTPUT_VARIABLE DEB_DATE OUTPUT_STRIP_TRAILING_WHITESPACE) + execute_process(COMMAND /bin/sh "-c" "${LSB_RELEASE_EXEC} -cs" OUTPUT_VARIABLE DEB_CODENAME OUTPUT_STRIP_TRAILING_WHITESPACE) + + if(DEB_CODENAME AND DEB_DATE) + + if(BUILD_WITH_QT5) + set(DEBIAN_BUILD_DEPENDS_QT_PACKAGES qtbase5-dev,qtbase5-dev-tools,qttools5-dev,qttools5-dev-tools,libqt5x11extras5-dev) + set(DEBIAN_DEPENDS_QT_PACKAGES libqt5sql5-sqlite) + endif() + if(BUILD_WITH_QT6) + set(DEBIAN_BUILD_DEPENDS_QT_PACKAGES qt6-base-dev,qt6-base-dev-tools,qt6-tools-dev,qt6-tools-dev-tools,qt6-l10n-tools) + set(DEBIAN_DEPENDS_QT_PACKAGES libqt6sql6-sqlite,qt6-qpa-plugins) + endif() + + configure_file(${CMAKE_CURRENT_SOURCE_DIR}/control.in ${CMAKE_CURRENT_SOURCE_DIR}/control @ONLY) + configure_file(${CMAKE_CURRENT_SOURCE_DIR}/changelog.in ${CMAKE_CURRENT_SOURCE_DIR}/changelog) + + endif() + +endif() diff --git a/dist/CMakeLists.txt b/dist/CMakeLists.txt index ef788ca6..70c883f5 100644 --- a/dist/CMakeLists.txt +++ b/dist/CMakeLists.txt @@ -2,9 +2,6 @@ configure_file(${CMAKE_CURRENT_SOURCE_DIR}/scripts/maketarball.sh.in ${CMAKE_CUR if(RPM_DISTRO AND RPM_DATE) configure_file(${CMAKE_CURRENT_SOURCE_DIR}/unix/strawberry.spec.in ${CMAKE_CURRENT_SOURCE_DIR}/unix/strawberry.spec @ONLY) endif(RPM_DISTRO AND RPM_DATE) -if(DEB_CODENAME AND DEB_DATE) - configure_file(${CMAKE_SOURCE_DIR}/debian/changelog.in ${CMAKE_SOURCE_DIR}/debian/changelog) -endif(DEB_CODENAME AND DEB_DATE) configure_file(${CMAKE_CURRENT_SOURCE_DIR}/unix/PKGBUILD.in ${CMAKE_CURRENT_SOURCE_DIR}/unix/PKGBUILD @ONLY) if(APPLE)