diff options
author | Vsevolod Stakhov <vsevolod@highsecure.ru> | 2017-11-19 22:31:12 +0000 |
---|---|---|
committer | Vsevolod Stakhov <vsevolod@highsecure.ru> | 2017-11-19 22:31:12 +0000 |
commit | bf66470bed906d729b542c194b205ad39de56c29 (patch) | |
tree | 12e70c1221d3b5c438090cecdae07e7f2e067b07 /linux/cmake/DpkgDeb.cmake | |
parent | f7001fb675da1d3588c6731dd705d1175a6c62c9 (diff) | |
download | rspamd-bf66470bed906d729b542c194b205ad39de56c29.tar.gz rspamd-bf66470bed906d729b542c194b205ad39de56c29.zip |
[Minor] Remove legacy stuff
Diffstat (limited to 'linux/cmake/DpkgDeb.cmake')
-rw-r--r-- | linux/cmake/DpkgDeb.cmake | 241 |
1 files changed, 0 insertions, 241 deletions
diff --git a/linux/cmake/DpkgDeb.cmake b/linux/cmake/DpkgDeb.cmake deleted file mode 100644 index 8a629521a..000000000 --- a/linux/cmake/DpkgDeb.cmake +++ /dev/null @@ -1,241 +0,0 @@ -# DpkgDeb : Create debian packages for your projects and sub projects. Written by Mehdi Rabah -# Was heavily inspired by UseDebian (Mathieu Malaterre) and UseRPMTools (TSP Team) modules - -# need /usr/bin/dpkg - -# USAGE : ADD_DEBIAN_PACKAGE ( DEB_TARGET_NAME [CONTROL_FILE] ) -# You need to set the control file either by setting these variables -# or by giving as second parameter the path to the control file you want to use -# If you choose to set the variables, you must set the mandatory variables: -# (see man 5 deb-control for more details) -# -# -- MANDATORY Variables -# Package: ${PACKAGE_NAME}. Must be a lowercase string -# Version: ${PACKAGE_VERSION}. Like 1.1.0 -# Release: ${PACKAGE_RELEASE}. A number beetween 0 and 9 -# Maintainer: ${PACKAGE_MAINTAINER_NAME} and ${PACKAGE_MAINTAINER_EMAIL}. -# Description summary: ${PACKAGE_DESCRIPTION_SUMMARY}. Project summary -# Description : ${PACKAGE_DESCRIPTION}. Warning : for now, use of special characters (>, (, ', ... ) is not allowed -# -# -- OPTIONAL Variables -# Architecture: ${DEBIAN_ARCHITECTURE}, by default i386 for intel on debian like -# Depends: ${CPACK_DEBIAN_PACKAGE_DEPENDS} -# Section: ${PACKAGE_SECTION} -# Priority: ${PACKAGE_PRIORITY} -# Essential: ${PACKAGE_ESSENTIAL} -# Source: ${PACKAGE_SOURCE} -# Pre-Depends: ${PACKAGE_PREDEPENDS} -# Recommends: ${PACKAGE_RECOMMENDS} -# Suggests: ${PACKAGE_SUGGESTS} -# Breaks: ${PACKAGE_BREAKS} -# Conflicts: ${PACKAGE_CONFLICTS} -# Replaces: ${PACKAGE_REPLACES} -# Provides: ${PACKAGE_PROVIDES} - -# TODO: Make clean does not clean the DEBIAN_DIR folder -# TODO: use objdump -p to automatically generate depedencies (cf dh_makeshlibs) - -FIND_PROGRAM(DPKG - NAMES dpkg-deb - PATHS "/usr/bin") - -IF ( DPKG ) - GET_FILENAME_COMPONENT(DPKG_PATH ${DPKG} ABSOLUTE) - MESSAGE(STATUS "Found dpkg-deb : ${DPKG_PATH}") - SET(DPKG_FOUND "YES") -ELSE ( DPKG ) - MESSAGE(STATUS "dpkg-deb NOT found. deb generation will not be available") - SET(DPKG_FOUND "NO") -ENDIF ( DPKG ) - -# Main and only command of this module. For more details, visit this webpage -# http://tldp.org/HOWTO/Debian-Binary-Package-Building-HOWTO/ -MACRO(ADD_DEBIAN_PACKAGE DEBNAME) - - SET ( CONTROL_FILE ${PROJECT_BINARY_DIR}/control_${PROJECT_NAME} ) - - # First choice for control file : user defined variables - IF ("${ARGV1}" STREQUAL "") - - # Check if the mandatory variables are here - IF(NOT PACKAGE_NAME OR NOT PACKAGE_VERSION OR NOT DEFINED PACKAGE_RELEASE OR - NOT PACKAGE_MAINTAINER_NAME OR NOT PACKAGE_MAINTAINER_EMAIL OR - NOT PACKAGE_DESCRIPTION_SUMMARY OR NOT PACKAGE_DESCRIPTION ) - message ( FATAL_ERROR "ADD_DEBIAN_PACKAGE command was not correctly configured for ${PROJECT_NAME}. See the documentation for more details" ) - ENDIF(NOT PACKAGE_NAME OR NOT PACKAGE_VERSION OR NOT DEFINED PACKAGE_RELEASE OR - NOT PACKAGE_MAINTAINER_NAME OR NOT PACKAGE_MAINTAINER_EMAIL OR - NOT PACKAGE_DESCRIPTION_SUMMARY OR NOT PACKAGE_DESCRIPTION ) - - IF(NOT DEBIAN_ARCHITECTURE) - EXECUTE_PROCESS(COMMAND "/usr/bin/dpkg" "--print-architecture" OUTPUT_VARIABLE DEBIAN_ARCHITECTURE OUTPUT_STRIP_TRAILING_WHITESPACE) - ENDIF(NOT DEBIAN_ARCHITECTURE) - - # Writing the control file - # see man 5 deb-control for more details - ADD_CUSTOM_COMMAND( - OUTPUT ${CONTROL_FILE} - COMMAND ${CMAKE_COMMAND} -E echo - "Package: ${PACKAGE_NAME}" > ${CONTROL_FILE} - - COMMAND ${CMAKE_COMMAND} -E echo - "Version: ${PACKAGE_VERSION}" >> ${CONTROL_FILE} - - COMMAND ${CMAKE_COMMAND} -E echo - "Maintainer: ${PACKAGE_MAINTAINER_NAME}" - \"<"${PACKAGE_MAINTAINER_EMAIL}\">" >> ${CONTROL_FILE} - - COMMAND ${CMAKE_COMMAND} - ARGS -E echo "Architecture: ${DEBIAN_ARCHITECTURE}" >> ${CONTROL_FILE} - ) - - IF ( DEFINED CPACK_DEBIAN_PACKAGE_DEPENDS ) - ADD_CUSTOM_COMMAND( OUTPUT ${CONTROL_FILE} - COMMAND ${CMAKE_COMMAND} -E echo - "Depends: ${CPACK_DEBIAN_PACKAGE_DEPENDS}" >> ${CONTROL_FILE} - APPEND ) - ENDIF ( DEFINED CPACK_DEBIAN_PACKAGE_DEPENDS ) - - IF ( DEFINED PACKAGE_SECTION ) - ADD_CUSTOM_COMMAND( OUTPUT ${CONTROL_FILE} - COMMAND ${CMAKE_COMMAND} -E echo - "Section: ${PACKAGE_SECTION}" >> ${CONTROL_FILE} - APPEND ) - ENDIF ( DEFINED PACKAGE_SECTION) - IF ( DEFINED PACKAGE_HOMEPAGE ) - ADD_CUSTOM_COMMAND( OUTPUT ${CONTROL_FILE} - COMMAND ${CMAKE_COMMAND} -E echo - "Homepage: ${PACKAGE_HOMEPAGE}" >> ${CONTROL_FILE} - APPEND ) - ENDIF ( DEFINED PACKAGE_HOMEPAGE) - - IF ( DEFINED PACKAGE_PRIORITY ) - ADD_CUSTOM_COMMAND( OUTPUT ${CONTROL_FILE} - COMMAND ${CMAKE_COMMAND} -E echo - "Priority: ${PACKAGE_PRIORITY}" >> ${CONTROL_FILE} - APPEND) - ENDIF ( DEFINED PACKAGE_PRIORITY) - - IF ( DEFINED PACKAGE_ESSENTIAL ) - ADD_CUSTOM_COMMAND( OUTPUT ${CONTROL_FILE} - COMMAND ${CMAKE_COMMAND} -E echo - "Essential: ${PACKAGE_ESSENTIAL}" >> ${CONTROL_FILE} - APPEND) - ENDIF ( DEFINED PACKAGE_ESSENTIAL) - - IF ( DEFINED PACKAGE_SOURCE ) - ADD_CUSTOM_COMMAND( OUTPUT ${CONTROL_FILE} - COMMAND ${CMAKE_COMMAND} -E echo - "Source: ${PACKAGE_SOURCE}" >> ${CONTROL_FILE} - APPEND) - ENDIF ( DEFINED PACKAGE_SOURCE) - - IF ( DEFINED PACKAGE_PREDEPENDS ) - ADD_CUSTOM_COMMAND( OUTPUT ${CONTROL_FILE} - COMMAND ${CMAKE_COMMAND} -E echo - "Pre-Depends: ${PACKAGE_PREDEPENDS}" >> ${CONTROL_FILE} - APPEND) - ENDIF ( DEFINED PACKAGE_PREDEPENDS ) - - IF ( DEFINED PACKAGE_RECOMMENDS ) - ADD_CUSTOM_COMMAND( OUTPUT ${CONTROL_FILE} - COMMAND ${CMAKE_COMMAND} -E echo - "Recommends: ${PACKAGE_RECOMMENDS}" >> ${CONTROL_FILE} - APPEND) - ENDIF ( DEFINED PACKAGE_RECOMMENDS) - - IF ( DEFINED PACKAGE_SUGGESTS ) - ADD_CUSTOM_COMMAND( OUTPUT ${CONTROL_FILE} - COMMAND ${CMAKE_COMMAND} -E echo - "Suggests: ${PACKAGE_SUGGESTS}" >> ${CONTROL_FILE} - APPEND) - ENDIF ( DEFINED PACKAGE_SUGGESTS ) - - IF ( DEFINED PACKAGE_BREAKS ) - ADD_CUSTOM_COMMAND( OUTPUT ${CONTROL_FILE} - COMMAND ${CMAKE_COMMAND} -E echo - "Breaks: ${PACKAGE_BREAKS}" >> ${CONTROL_FILE} - APPEND) - ENDIF ( DEFINED PACKAGE_BREAKS ) - - IF ( DEFINED PACKAGE_CONFLICTS ) - ADD_CUSTOM_COMMAND( OUTPUT ${CONTROL_FILE} - COMMAND ${CMAKE_COMMAND} -E echo - "Conflicts: ${PACKAGE_CONFLICTS}" >> ${CONTROL_FILE} - APPEND) - ENDIF ( DEFINED PACKAGE_CONFLICTS ) - - IF ( DEFINED PACKAGE_REPLACES ) - ADD_CUSTOM_COMMAND( OUTPUT ${CONTROL_FILE} - COMMAND ${CMAKE_COMMAND} -E echo - "Replaces: ${PACKAGE_REPLACES}" >> ${CONTROL_FILE} - APPEND) - ENDIF ( DEFINED PACKAGE_REPLACES ) - - IF ( DEFINED PACKAGE_PROVIDES ) - ADD_CUSTOM_COMMAND( OUTPUT ${CONTROL_FILE} - COMMAND ${CMAKE_COMMAND} -E echo - "Provides: ${PACKAGE_PROVIDES}" >> ${CONTROL_FILE} - APPEND) - ENDIF ( DEFINED PACKAGE_PROVIDES ) - - ADD_CUSTOM_COMMAND( OUTPUT ${CONTROL_FILE} - COMMAND ${CMAKE_COMMAND} -E echo - "Description: ${PACKAGE_DESCRIPTION_SUMMARY}" >> ${CONTROL_FILE} - COMMAND ${CMAKE_COMMAND} -E echo - " ." >> ${CONTROL_FILE} - COMMAND ${CMAKE_COMMAND} -E echo - " ${PACKAGE_DESCRIPTION}" >> ${CONTROL_FILE} - COMMAND ${CMAKE_COMMAND} -E echo - " ." >> ${CONTROL_FILE} - COMMAND ${CMAKE_COMMAND} -E echo - "" >> ${CONTROL_FILE} - COMMENT "Generating control file" - APPEND - ) - ELSE ("${ARGV1}" STREQUAL "") - ADD_CUSTOM_COMMAND( - OUTPUT ${CONTROL_FILE} - COMMAND ${CMAKE_COMMAND} -E copy "${ARGV1}" ${CONTROL_FILE} - COMMENT "Copying user specified control file : ${ARGV1}" - ) - ENDIF("${ARGV1}" STREQUAL "") - - # let's create a directory to call 'make install DESTDIR=...' into: - SET ( DEBIAN_DIR ${CMAKE_BINARY_DIR}/${PACKAGE_NAME}_${PACKAGE_VERSION}-${PACKAGE_RELEASE}_${DEBIAN_ARCHITECTURE} ) - FILE ( REMOVE ${DEBIAN_DIR} ) - FILE ( MAKE_DIRECTORY ${DEBIAN_DIR} ) - FILE ( MAKE_DIRECTORY ${DEBIAN_DIR}/DEBIAN ) - - # Calling "make install DESTDIR=${DEBIAN_DIR}" - ADD_CUSTOM_TARGET(deb_destdir_install - COMMAND ${CMAKE_MAKE_PROGRAM} install CMAKE_INSTALL_PREFIX=/ DESTDIR=${DEBIAN_DIR} - DEPENDS ${CMAKE_BINARY_DIR}/cmake_install.cmake - COMMENT "Installing with DESTDIR = ${DEBIAN_DIR}" - ) - ADD_DEPENDENCIES(deb_destdir_install deb_destdir_preinstall) - ADD_CUSTOM_TARGET(deb_destdir_preinstall - COMMAND ${CMAKE_COMMAND} -DCMAKE_INSTALL_PREFIX=/ -DDESTDIR=${DEBIAN_DIR} . - DEPENDS ${CMAKE_BINARY_DIR}/cmake_install.cmake - COMMENT "Configuring with DESTDIR = ${DEBIAN_DIR}" - ) - ADD_DEPENDENCIES(deb_destdir_preinstall all preinstall) - - # Calling dpkg --build - ADD_CUSTOM_COMMAND( - OUTPUT ${CMAKE_BINARY_DIR}/${PACKAGE_NAME}_${PACKAGE_VERSION}-${PACKAGE_RELEASE}_${DEBIAN_ARCHITECTURE}.deb - COMMAND ${CMAKE_COMMAND} -E copy ${CONTROL_FILE} ${DEBIAN_DIR}/DEBIAN/control - COMMAND ${DPKG_PATH} --build ${DEBIAN_DIR} - # removing control, so its (re)generated each time we need to build the package - COMMAND ${CMAKE_COMMAND} -E remove ${CONTROL_FILE} - DEPENDS ${CONTROL_FILE} - COMMENT "Generating deb package" - ) - - # the final target: - ADD_CUSTOM_TARGET(${DEBNAME}_deb - DEPENDS ${CMAKE_BINARY_DIR}/${PACKAGE_NAME}_${PACKAGE_VERSION}-${PACKAGE_RELEASE}_${DEBIAN_ARCHITECTURE}.deb - ) - - ADD_DEPENDENCIES(${DEBNAME}_deb deb_destdir_install) - -ENDMACRO(ADD_DEBIAN_PACKAGE DEBNAME) |