From 24b8a519aac1daf73e8de6fa7734c1ecf21c8a8d Mon Sep 17 00:00:00 2001 From: Giovanni Campagna Date: Tue, 19 Feb 2013 17:31:45 +0100 Subject: [PATCH] build: try harder to avoid systemd/consolekit misconfiguration Check if the system is booting systemd, and fail if the automatic configuration picks the wrong value. Emit a warning if the user explicitly chose one way or the other, to account for cross-building. --- configure.ac | 20 ++++++++++++++++++++ 1 file changed, 20 insertions(+) diff --git a/configure.ac b/configure.ac index 40f0cd7..b0168ce 100644 --- a/configure.ac +++ b/configure.ac @@ -175,6 +175,26 @@ if test "$enable_libsystemd_login" != "no"; then fi fi +AS_IF([test "x$cross_compilining" != "x" ], [ + AS_IF([test "$have_libsystemd_login" = "yes"], [ + AS_IF([test ! -d /sys/fs/cgroup/systemd/ ], [ + AS_IF([test "$enable_libsystemd_login" = "yes"], [ + AC_MSG_WARN([libsystemd-login requested but system does not appear to be using systemd]) + ], [ + AC_MSG_ERROR([libsystemd-login autoconfigured, but system does not appear to use systemd]) + ]) + ]) + ], [ + AS_IF([test -d /sys/fs/cgroup/systemd/ ], [ + AS_IF([test "$enable_libsystemd_login" = "no" ], [ + AC_MSG_WARN([ConsoleKit requested but system appears to use systemd]) + ], [ + AC_MSG_ERROR([ConsoleKit autoconfigured, but systemd is in use (missing libsystemd-login pkg-config?)]) + ]) + ]) + ]) +]) + AC_SUBST(LIBSYSTEMD_LOGIN_CFLAGS) AC_SUBST(LIBSYSTEMD_LOGIN_LIBS) AM_CONDITIONAL(HAVE_LIBSYSTEMD_LOGIN, [test "$have_libsystemd_login" = "yes"], [Using libsystemd-login]) -- 1.8.1.4