diff options
authorAndy Kling <>2017-02-15 07:15:16 +0100
committerRichard Purdie <>2017-02-23 12:29:19 -0800
commite9471f8da3946439141ccdd8284200aa614df46c (patch)
parent04b57e357bc016d174015a56077bb026ad9bb498 (diff)
dbus: do not use systemctl from host for configure from dbus uses $PATH to get the location of systemctl. If it is not found /usr/bin/systemctl is used. It is possible to override the location by passing SYSTEMCTL=[value] to configure. The value is used to replace @SYSTEMCTL@ in systemd-user/ dbus.socket sets the environment variable DBUS_SESSION_BUS_ADDRESS using systemctl. dbus does not depend on systemd-systemctl-native, so location from host installation or the default value gets used. Adding systemd-systemctl to the build would give path from sysroot. Forcing SYSTEMCTL=${base_bindir}/systemctl for target gives the correct path there and the environment variable is set after a user session was opened. [YOCTO #11002] Signed-off-by: Andy Kling <> Signed-off-by: Ross Burton <>
1 files changed, 1 insertions, 0 deletions
diff --git a/meta/recipes-core/dbus/ b/meta/recipes-core/dbus/
index f50aff89b7..d74560246e 100644
--- a/meta/recipes-core/dbus/
+++ b/meta/recipes-core/dbus/
@@ -97,6 +97,7 @@ EXTRA_OECONF = "--disable-tests \
--disable-libaudit \
+EXTRA_OECONF_append_class-target = " SYSTEMCTL=${base_bindir}/systemctl"
EXTRA_OECONF_append_class-native = " --disable-selinux"
PACKAGECONFIG ??= "${@bb.utils.contains('DISTRO_FEATURES', 'systemd', 'systemd', '', d)} \