mirror of
https://gitlab.freedesktop.org/pulseaudio/pulseaudio.git
synced 2025-11-04 13:29:59 -05:00
console-kit, systemd-login: Check for logind, not for systemd
It is possible to build systemd without logind, in which case sd_booted() wo succeed. Check for /run/systemd/seats to test for logind instead, as recommended by systemd upstream. For details, see: <https://mail.gnome.org/archives/desktop-devel-list/2013-March/msg00092.html Drop the now unnecessary linking against libsystemd-daemon, and stop linking the consolekit module to any systemd library. https://bugs.freedesktop.org/show_bug.cgi?id=62593
This commit is contained in:
parent
578d2ce5c8
commit
ef199c8a81
4 changed files with 8 additions and 16 deletions
|
|
@ -1163,7 +1163,7 @@ AC_ARG_ENABLE([systemd],
|
||||||
AS_HELP_STRING([--disable-systemd],[Disable optional systemd support]))
|
AS_HELP_STRING([--disable-systemd],[Disable optional systemd support]))
|
||||||
|
|
||||||
AS_IF([test "x$enable_systemd" != "xno"],
|
AS_IF([test "x$enable_systemd" != "xno"],
|
||||||
[PKG_CHECK_MODULES(SYSTEMD, [ libsystemd-login libsystemd-daemon ], HAVE_SYSTEMD=1, HAVE_SYSTEMD=0)],
|
[PKG_CHECK_MODULES(SYSTEMD, [ libsystemd-login ], HAVE_SYSTEMD=1, HAVE_SYSTEMD=0)],
|
||||||
HAVE_SYSTEMD=0)
|
HAVE_SYSTEMD=0)
|
||||||
|
|
||||||
AS_IF([test "x$enable_systemd" = "xyes" && test "x$HAVE_SYSTEMD" = "x0"],
|
AS_IF([test "x$enable_systemd" = "xyes" && test "x$HAVE_SYSTEMD" = "x0"],
|
||||||
|
|
|
||||||
|
|
@ -1971,8 +1971,8 @@ module_udev_detect_la_CFLAGS = $(AM_CFLAGS) $(UDEV_CFLAGS)
|
||||||
|
|
||||||
module_console_kit_la_SOURCES = modules/module-console-kit.c
|
module_console_kit_la_SOURCES = modules/module-console-kit.c
|
||||||
module_console_kit_la_LDFLAGS = $(MODULE_LDFLAGS)
|
module_console_kit_la_LDFLAGS = $(MODULE_LDFLAGS)
|
||||||
module_console_kit_la_LIBADD = $(MODULE_LIBADD) $(DBUS_LIBS) $(SYSTEMD_LIBS)
|
module_console_kit_la_LIBADD = $(MODULE_LIBADD) $(DBUS_LIBS)
|
||||||
module_console_kit_la_CFLAGS = $(AM_CFLAGS) $(DBUS_CFLAGS) $(SYSTEMD_CFLAGS)
|
module_console_kit_la_CFLAGS = $(AM_CFLAGS) $(DBUS_CFLAGS)
|
||||||
|
|
||||||
module_systemd_login_la_SOURCES = modules/module-systemd-login.c
|
module_systemd_login_la_SOURCES = modules/module-systemd-login.c
|
||||||
module_systemd_login_la_LDFLAGS = $(MODULE_LDFLAGS)
|
module_systemd_login_la_LDFLAGS = $(MODULE_LDFLAGS)
|
||||||
|
|
|
||||||
|
|
@ -30,11 +30,6 @@
|
||||||
#include <stdlib.h>
|
#include <stdlib.h>
|
||||||
#include <sys/types.h>
|
#include <sys/types.h>
|
||||||
|
|
||||||
#ifdef HAVE_SYSTEMD
|
|
||||||
#include <systemd/sd-login.h>
|
|
||||||
#include <systemd/sd-daemon.h>
|
|
||||||
#endif
|
|
||||||
|
|
||||||
#include <pulse/xmalloc.h>
|
#include <pulse/xmalloc.h>
|
||||||
|
|
||||||
#include <pulsecore/module.h>
|
#include <pulsecore/module.h>
|
||||||
|
|
@ -285,12 +280,10 @@ int pa__init(pa_module*m) {
|
||||||
|
|
||||||
dbus_error_init(&error);
|
dbus_error_init(&error);
|
||||||
|
|
||||||
#ifdef HAVE_SYSTEMD
|
/* If systemd's logind service is running, we shouldn't watch ConsoleKit
|
||||||
/* If systemd support is enabled and we boot on systemd we
|
* but login */
|
||||||
shouldn't watch ConsoleKit but systemd's logind service. */
|
if (access("/run/systemd/seats/", F_OK) >= 0)
|
||||||
if (sd_booted() > 0)
|
|
||||||
return 0;
|
return 0;
|
||||||
#endif
|
|
||||||
|
|
||||||
if (!(ma = pa_modargs_new(m->argument, valid_modargs))) {
|
if (!(ma = pa_modargs_new(m->argument, valid_modargs))) {
|
||||||
pa_log("Failed to parse module arguments");
|
pa_log("Failed to parse module arguments");
|
||||||
|
|
|
||||||
|
|
@ -31,7 +31,6 @@
|
||||||
#include <sys/types.h>
|
#include <sys/types.h>
|
||||||
|
|
||||||
#include <systemd/sd-login.h>
|
#include <systemd/sd-login.h>
|
||||||
#include <systemd/sd-daemon.h>
|
|
||||||
|
|
||||||
#include <pulse/xmalloc.h>
|
#include <pulse/xmalloc.h>
|
||||||
|
|
||||||
|
|
@ -169,8 +168,8 @@ int pa__init(pa_module *m) {
|
||||||
|
|
||||||
pa_assert(m);
|
pa_assert(m);
|
||||||
|
|
||||||
/* If we are not actually booting with systemd become a NOP */
|
/* If we are not actually running logind become a NOP */
|
||||||
if (sd_booted() <= 0)
|
if (access("/run/systemd/seats/", F_OK) < 0)
|
||||||
return 0;
|
return 0;
|
||||||
|
|
||||||
ma = pa_modargs_new(m->argument, valid_modargs);
|
ma = pa_modargs_new(m->argument, valid_modargs);
|
||||||
|
|
|
||||||
Loading…
Add table
Add a link
Reference in a new issue