summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorRalf Habacker <ralf.habacker@freenet.de>2020-09-21 14:36:24 +0200
committerRalf Habacker <ralf.habacker@freenet.de>2020-09-22 11:22:40 +0200
commit2148a5a80337108dca2b3eae26a4d3c3511204bd (patch)
treee8862ae12d2474564e9cb60fe78bad765cd989e7
parente8dc63c041c10bb7e6e437b1af71d94361f969cd (diff)
cmake: install dbus-daemon-launch-helper on Unix
Previously it was built on Unix platforms, but not installed. This would prevent traditional activation on the system bus (on Linux without systemd or non-Linux, or for services without SystemdService), which requires the activation helper. Because the executable is an internal implementation detail of how traditional activation is implemented on Unix, it is not exported to the generated cmake support files. Resolves: dbus#310
-rw-r--r--bus/CMakeLists.txt4
1 files changed, 4 insertions, 0 deletions
diff --git a/bus/CMakeLists.txt b/bus/CMakeLists.txt
index 09503966..a52c1bfb 100644
--- a/bus/CMakeLists.txt
+++ b/bus/CMakeLists.txt
@@ -148,6 +148,10 @@ if(NOT WIN32)
add_executable(dbus-daemon-launch-helper activation-helper.c activation-helper-bin.c )
target_link_libraries(dbus-daemon-launch-helper launch-helper-internal)
+ install(TARGETS dbus-daemon-launch-helper RUNTIME DESTINATION ${CMAKE_INSTALL_LIBEXECDIR})
+ # It is intended not to check here that uid is 0 - see https://gitlab.freedesktop.org/dbus/dbus/-/merge_requests/154#note_478876
+ install(CODE "message(\"-- Note: Not installing \$ENV{DESTDIR}\${CMAKE_INSTALL_PREFIX}/${CMAKE_INSTALL_LIBEXECDIR}/dbus-daemon-launch-helper binary setuid!\")")
+ install(CODE "message(\"-- Note: You'll need to manually set permissions to 'root:${DBUS_USER}' and permissions '4750'\")")
endif()
if(MSVC)