File tree Expand file tree Collapse file tree 6 files changed +99
-81
lines changed
Expand file tree Collapse file tree 6 files changed +99
-81
lines changed Original file line number Diff line number Diff line change @@ -80,13 +80,10 @@ add_subdirectory(utils/kamcmd)
8080# and scirpts are using {CMAKE_BINARY_DIR} from where they where first included.
8181include (${CMAKE_SOURCE_DIR} /cmake/dbschema.cmake)
8282
83- # TODO: Packaging stuuf. These should be on different file propably
84- set (CPACK_PACKAGE_VERSION_MAJOR ${PROJECT_VERSION_MAJOR} )
85- set (CPACK_PACKAGE_NAME kamailio)
86- set (CPACK_GENERATOR DEB)
87- set (CPACK_DEBIAN_PACKAGE_MAINTAINER "test" )
88-
89- include (CPack)
83+ # ----------
84+ # Packaging
85+ # ----------
86+ include (${CMAKE_SOURCE_DIR} /cmake/deb-packaging.cmake)
9087
9188# Add uninstall target
9289if (NOT TARGET uninstall)
@@ -98,6 +95,6 @@ if(NOT TARGET uninstall)
9895 add_custom_target (
9996 uninstall
10097 COMMAND ${CMAKE_COMMAND} -P ${CMAKE_CURRENT_BINARY_DIR} /cmake/cmake-uninstall.cmake
101- COMMENT "Uninstalling"
98+ COMMENT "Uninstalling ${PROJECT_NAME} - ${PROJECT_VERSION} from ${CMAKE_INSTALL_PREFIX} "
10299 )
103100endif ()
Original file line number Diff line number Diff line change 1+ # Retrieve all defined components
2+ get_cmake_property (CPACK_COMPONENTS_ALL COMPONENTS)
3+
4+ message (STATUS "All components: ${CPACK_COMPONENTS_ALL} " )
5+ # Optionally filter components
6+ # list(FILTER CPACK_COMPONENTS_ALL INCLUDE REGEX "^(core|tls)$")
7+
8+ set (CPACK_PACKAGE_VERSION_MAJOR ${PROJECT_VERSION_MAJOR} )
9+ # set(CPACK_PACKAGE_NAME kamailio)
10+ set (CPACK_DEBIAN_PACKAGE_NAME kamailio)
11+ set (CPACK_GENERATOR DEB)
12+ set (CPACK_DEBIAN_PACKAGE_MAINTAINER "test" )
13+ set (CPACK_DEB_COMPONENT_INSTALL ON )
14+ set (CPACK_DEBIAN_FILE_NAME DEB-DEFAULT)
15+ set (CPACK_PACKAGING_INSTALL_PREFIX "/usr" )
16+
17+ # Configure CPack with the selected components
18+ include (CPack)
Original file line number Diff line number Diff line change @@ -687,74 +687,74 @@ set(MODULE_GROUP_KRTP_MEDIA_SERVER ${MOD_LIST_RTP_MEDIA_SERVER})
687687# list of static modules
688688set (STATIC_MODULES "" )
689689
690- list (
691- APPEND
692- AVAILABLE_GROUPS
693- KSTANDARD
694- KMINI
695- KPCRE
696- KMYSQL
697- KPOSTGRES
698- KCPL
699- KXML
700- KRADIUS
701- KUNIXODBC
702- KPERL
703- KSNMPSTATS
704- KXMPP
705- KBERKELEY
706- KLDAP
707- KUTILS
708- KHTTP_ASYNC
709- KMEMCACHED
710- KTLS_BASIC
711- KTLS
712- KTLS_WOLFSSL
713- KWEBSOCKET
714- KPRESENCE
715- KLUA
716- KPYTHON
717- KPYTHON3
718- KRUBY
719- KGEOIP
720- KGEOIP2
721- KSQLITE
722- KJSON_BASIC
723- KJSON
724- KJANSSON_BASIC
725- KJANSSON
726- KREDIS
727- KIMS
728- KOUTBOUND
729- KJAVA
730- KDNSSEC
731- KSCTP
732- KAUTHEPH
733- KGZCOMPRESS
734- KUUID
735- KEV
736- KJWT
737- KLWSC
738- KSTIRSHAKEN
739- KKAZOO
740- KMONGODB
741- KCNXCC
742- KERLANG
743- KSYSTEMD
744- KNSQ
745- KRABBITMQ
746- KPHONENUM
747- KKAFKA
748- KMQTT
749- KNATS
750- KRUXC
751- KMICROHTTPD
752- KNGHTTP2
753- KGCRYPT
754- KSECSIPID
755- KRT_MEDIA_SERVER
690+ set (MODULE_GROUP_PACKAGE_GROUPS
691+ KPCRE
692+ KMYSQL
693+ KPOSTGRES
694+ KCPL
695+ KXML
696+ KRADIUS
697+ KUNIXODBC
698+ KPERL
699+ KSNMPSTATS
700+ KXMPP
701+ KBERKELEY
702+ KLDAP
703+ KUTILS
704+ KHTTP_ASYNC
705+ KMEMCACHED
706+ KTLS_BASIC
707+ KTLS
708+ KTLS_WOLFSSL
709+ KWEBSOCKET
710+ KPRESENCE
711+ KLUA
712+ KPYTHON
713+ KPYTHON3
714+ KRUBY
715+ KGEOIP
716+ KGEOIP2
717+ KSQLITE
718+ KJSON_BASIC
719+ KJSON
720+ KJANSSON_BASIC
721+ KJANSSON
722+ KREDIS
723+ KIMS
724+ KOUTBOUND
725+ KJAVA
726+ KDNSSEC
727+ KSCTP
728+ KAUTHEPH
729+ KGZCOMPRESS
730+ KUUID
731+ KEV
732+ KJWT
733+ KLWSC
734+ KSTIRSHAKEN
735+ KKAZOO
736+ KMONGODB
737+ KCNXCC
738+ KERLANG
739+ KSYSTEMD
740+ KNSQ
741+ KRABBITMQ
742+ KPHONENUM
743+ KKAFKA
744+ KMQTT
745+ KNATS
746+ KRUXC
747+ KMICROHTTPD
748+ KNGHTTP2
749+ KGCRYPT
750+ KSECSIPID
751+ KRT_MEDIA_SERVER
756752)
757753
754+ # Add group names to available group and provide "ALL_PACKAGED" as well
755+ # for easier packaging using components
756+ list (APPEND AVAILABLE_GROUPS ALL_PACKAGED ${MODULE_GROUP_PACKAGE_GROUPS} )
757+
758758# Find the group name for the target by checking if the module is in the
759759# list of modules to be built and if so, use the group name of that module
760760# group_name can be used afterwards.
Original file line number Diff line number Diff line change @@ -227,18 +227,17 @@ install(
227227 message(STATUS \" ${CFG_NAME} .cfg already exists in \"
228228 \"\$ {dir}/${CFG_NAME} .cfg. Installing as ${CFG_NAME} .cfg.sample\" )
229229 file(INSTALL \" ${CMAKE_SOURCE_DIR} /etc/kamailio.cfg\"
230- DESTINATION \" ${CMAKE_INSTALL_FULL_SYSCONFDIR} /${MAIN_NAME} \"
230+ DESTINATION \" $ENV{DESTDIR}$ {CMAKE_INSTALL_FULL_SYSCONFDIR} /${MAIN_NAME} \"
231231 RENAME \" ${CFG_NAME} .cfg.sample\"
232232 PERMISSIONS OWNER_READ OWNER_WRITE GROUP_READ WORLD_READ
233233 )
234234 else()
235235 file(INSTALL \" ${CMAKE_SOURCE_DIR} /etc/kamailio.cfg\"
236- DESTINATION \" ${CMAKE_INSTALL_FULL_SYSCONFDIR} /${MAIN_NAME} \"
236+ DESTINATION \" $ENV{DESTDIR}$ {CMAKE_INSTALL_FULL_SYSCONFDIR} /${MAIN_NAME} \"
237237 PERMISSIONS OWNER_READ OWNER_WRITE GROUP_READ WORLD_READ
238238 RENAME \" ${CFG_NAME} .cfg\"
239239 )
240240 endif()
241-
242241"
243242 COMPONENT kamailio-core
244243)
Original file line number Diff line number Diff line change @@ -17,8 +17,12 @@ set(MODULE_GROUP_NAME
1717set_property (CACHE MODULE_GROUP_NAME PROPERTY STRINGS ${AVAILABLE_GROUP_NAMES} )
1818
1919# User may provide multiple groups seperated by space
20- separate_arguments (MODULE_GROUP_LIST UNIX_COMMAND "${MODULE_GROUP_NAME} " )
21- message (STATUS "Building groups: ${MODULE_GROUP_LIST} " )
20+ if (MODULE_GROUP_NAME STREQUAL "ALL_PACKAGED" )
21+ set (MODULE_GROUP_LIST ${MODULE_GROUP_PACKAGE_GROUPS} )
22+ else ()
23+ separate_arguments (MODULE_GROUP_LIST UNIX_COMMAND "${MODULE_GROUP_NAME} " )
24+ message (STATUS "Building groups: ${MODULE_GROUP_LIST} " )
25+ endif ()
2226
2327# Check if elements in MODULE_GROUP_LIST are valid by checking against
2428# AVAILABLE_GROUP_NAMES
Original file line number Diff line number Diff line change @@ -72,13 +72,13 @@ install(
7272 message(STATUS \" kamctlrc already exists in\$ {dir}/kamctlrc.
7373 Installing as kamctlrc.sample\" )
7474 file(INSTALL \" ${CMAKE_CURRENT_SOURCE_DIR} /kamctlrc\"
75- DESTINATION \" ${CMAKE_INSTALL_FULL_SYSCONFDIR} /${MAIN_NAME} \"
75+ DESTINATION \" $ENV{DESTDIR}$ {CMAKE_INSTALL_FULL_SYSCONFDIR} /${MAIN_NAME} \"
7676 RENAME \" kamctlrc.sample\"
7777 PERMISSIONS OWNER_READ OWNER_WRITE GROUP_READ WORLD_READ
7878 )
7979 else()
8080 file(INSTALL \" ${CMAKE_CURRENT_SOURCE_DIR} /kamctlrc\"
81- DESTINATION \" ${CMAKE_INSTALL_FULL_SYSCONFDIR} /${MAIN_NAME} \"
81+ DESTINATION \" $ENV{DESTDIR}$ {CMAKE_INSTALL_FULL_SYSCONFDIR} /${MAIN_NAME} \"
8282 PERMISSIONS OWNER_READ OWNER_WRITE GROUP_READ WORLD_READ)
8383 endif()
8484"
You can’t perform that action at this time.
0 commit comments