From 01f7fe8f78e72dcda6000c70fd8b1d5bfefc46f2 Mon Sep 17 00:00:00 2001 From: Henri Chain Date: Fri, 10 Jul 2020 13:12:25 +0000 Subject: Add ecm_generate_dbus_service_file Summary: It serves as a replacement for `kdbusaddons_generate_dbus_service_file`. An application can be a DBus-activated service just fine without using KDBusAddons. Moreover, this new module uses named arguments for future-proofing, and adds support for specifying a `SystemdService`. It also cleans up the confusion on what the "path" is about: Rather than requiring to specify executable and path separately, we just extract the executable file name on Windows, if necessary. Usage: ``` ecm_generate_dbus_service_file(NAME org.kde.kded5 EXECUTABLE ${KDE_INSTALL_FULL_BINDIR}/kded5 SYSTEMD_SERVICE plasma-kded) ``` Test Plan: * Was able to generate a kded service file * Was able to generate a kded service file with `SystemdUnit` * Verified that it moaned when executable wasn't an absolute path * Untested on Windwos Reviewers: #frameworks, davidedmundson, kossebau, kfunk, habacker Subscribers: kde-frameworks-devel, kde-buildsystem Tags: #frameworks, #build_system Differential Revision: https://phabricator.kde.org/D29051 --- tests/ECMGenerateDBusServiceFileTest/expected/org.kde.kded5.service | 3 +++ .../expected/org.kde.kded5.withSystemD.service | 4 ++++ 2 files changed, 7 insertions(+) create mode 100644 tests/ECMGenerateDBusServiceFileTest/expected/org.kde.kded5.service create mode 100644 tests/ECMGenerateDBusServiceFileTest/expected/org.kde.kded5.withSystemD.service (limited to 'tests/ECMGenerateDBusServiceFileTest/expected') diff --git a/tests/ECMGenerateDBusServiceFileTest/expected/org.kde.kded5.service b/tests/ECMGenerateDBusServiceFileTest/expected/org.kde.kded5.service new file mode 100644 index 00000000..a8d1a4bf --- /dev/null +++ b/tests/ECMGenerateDBusServiceFileTest/expected/org.kde.kded5.service @@ -0,0 +1,3 @@ +[D-BUS Service] +Name=org.kde.kded5 +Exec=/usr/bin/kded5 diff --git a/tests/ECMGenerateDBusServiceFileTest/expected/org.kde.kded5.withSystemD.service b/tests/ECMGenerateDBusServiceFileTest/expected/org.kde.kded5.withSystemD.service new file mode 100644 index 00000000..bd0dd0ce --- /dev/null +++ b/tests/ECMGenerateDBusServiceFileTest/expected/org.kde.kded5.withSystemD.service @@ -0,0 +1,4 @@ +[D-BUS Service] +Name=org.kde.kded5.withSystemD +Exec=/usr/bin/kded5 +SystemdService=plasma-kded.service -- cgit v1.2.1