From b2e4ee878f55c193f009aac7ebad6013696c6683 Mon Sep 17 00:00:00 2001 From: Henri Chain Date: Tue, 1 Sep 2020 10:48:09 +0200 Subject: add RENAME parameter to ecm_generate_dbus_service_file --- modules/ECMGenerateDBusServiceFile.cmake | 13 ++++++++++--- tests/ECMGenerateDBusServiceFileTest/CMakeLists.txt | 1 + .../expected/org.kde.kded5.withSystemD.renamed.service | 4 ++++ .../expected/org.kde.kded5.withSystemD.service | 4 ---- 4 files changed, 15 insertions(+), 7 deletions(-) create mode 100644 tests/ECMGenerateDBusServiceFileTest/expected/org.kde.kded5.withSystemD.renamed.service delete mode 100644 tests/ECMGenerateDBusServiceFileTest/expected/org.kde.kded5.withSystemD.service diff --git a/modules/ECMGenerateDBusServiceFile.cmake b/modules/ECMGenerateDBusServiceFile.cmake index 76709636..eabc1b42 100644 --- a/modules/ECMGenerateDBusServiceFile.cmake +++ b/modules/ECMGenerateDBusServiceFile.cmake @@ -12,10 +12,11 @@ # EXECUTABLE # [SYSTEMD_SERVICE ] # DESTINATION +# [RENAME ] # ) # # A D-Bus service file ``.service`` will be generated and installed -# in the relevant D-Bus config location. +# in the relevant D-Bus config location. This filename can be customized with RENAME. # # ```` must be an absolute path to the installed service executable. When using it with # ``KDEInstallDirs`` it needs to be the ``_FULL_`` variant of the path variable. @@ -43,12 +44,14 @@ # EXECUTABLE ${KDE_INSTALL_FULL_BINDIR}/kded5 # SYSTEMD_SERVICE plasma-kded.service # DESTINATION ${KDE_INSTALL_DBUSSERVICEDIR} +# RENAME org.kde.daemon.service # ) # # Since 5.73.0. #============================================================================= # SPDX-FileCopyrightText: 2020 Kai Uwe Broulik +# SPDX-FileCopyrightText: 2020 Henri Chain # # SPDX-License-Identifier: BSD-3-Clause @@ -56,7 +59,7 @@ include(CMakeParseArguments) function(ecm_generate_dbus_service_file) set(options) - set(oneValueArgs EXECUTABLE NAME SYSTEMD_SERVICE DESTINATION) + set(oneValueArgs EXECUTABLE NAME SYSTEMD_SERVICE DESTINATION RENAME) set(multiValueArgs) cmake_parse_arguments(ARG "${options}" "${oneValueArgs}" "${multiValueArgs}" ${ARGN}) @@ -95,5 +98,9 @@ Exec=${_exec} file(APPEND ${_service_file} "SystemdService=${ARG_SYSTEMD_SERVICE}\n") endif() - install(FILES ${_service_file} DESTINATION ${ARG_DESTINATION}) + if (ARG_RENAME) + install(FILES ${_service_file} DESTINATION ${ARG_DESTINATION} RENAME ${ARG_RENAME}) + else() + install(FILES ${_service_file} DESTINATION ${ARG_DESTINATION}) + endif() endfunction() diff --git a/tests/ECMGenerateDBusServiceFileTest/CMakeLists.txt b/tests/ECMGenerateDBusServiceFileTest/CMakeLists.txt index 426ada89..99484a14 100644 --- a/tests/ECMGenerateDBusServiceFileTest/CMakeLists.txt +++ b/tests/ECMGenerateDBusServiceFileTest/CMakeLists.txt @@ -19,6 +19,7 @@ ecm_generate_dbus_service_file( EXECUTABLE /usr/bin/kded5 SYSTEMD_SERVICE plasma-kded.service DESTINATION ${CMAKE_INSTALL_PREFIX}/test + RENAME org.kde.kded5.withSystemD.renamed.service ) # this will be run by CTest diff --git a/tests/ECMGenerateDBusServiceFileTest/expected/org.kde.kded5.withSystemD.renamed.service b/tests/ECMGenerateDBusServiceFileTest/expected/org.kde.kded5.withSystemD.renamed.service new file mode 100644 index 00000000..bd0dd0ce --- /dev/null +++ b/tests/ECMGenerateDBusServiceFileTest/expected/org.kde.kded5.withSystemD.renamed.service @@ -0,0 +1,4 @@ +[D-BUS Service] +Name=org.kde.kded5.withSystemD +Exec=/usr/bin/kded5 +SystemdService=plasma-kded.service diff --git a/tests/ECMGenerateDBusServiceFileTest/expected/org.kde.kded5.withSystemD.service b/tests/ECMGenerateDBusServiceFileTest/expected/org.kde.kded5.withSystemD.service deleted file mode 100644 index bd0dd0ce..00000000 --- a/tests/ECMGenerateDBusServiceFileTest/expected/org.kde.kded5.withSystemD.service +++ /dev/null @@ -1,4 +0,0 @@ -[D-BUS Service] -Name=org.kde.kded5.withSystemD -Exec=/usr/bin/kded5 -SystemdService=plasma-kded.service -- cgit v1.2.1