compositor: systemd notifications support
Add systemd status and watchdog notification support.
Feature is not compiled by default and can be enabled by
"--enable-systemd-notify" configuration flag. It compiles
into module "systemd-notify.so" and can be loaded by
adding it in weston.ini like any other module, i.e.
"modules=systemd-notify.so". Watchdog timeout equals to
half of timeout defined by "WATCHDOG_USEC" environment
variable, which is set by "WatchdogSec=" setting in
service file.
Signed-off-by: Egor Starkov <egor.starkov@ge.com>
Reviewed-by: Pekka Paalanen <pekka.paalanen@collabora.co.uk>
Reviewed-by: Bryce Harrington <bryce@osg.samsung.com>
Reviewed-by: Derek Foreman <derekf@osg.samsung.com>
diff --git a/configure.ac b/configure.ac
index 9283b2f..045291c 100644
--- a/configure.ac
+++ b/configure.ac
@@ -565,6 +565,18 @@
wayland_scanner=`$PKG_CONFIG --variable=wayland_scanner wayland-scanner`
fi
+AC_ARG_ENABLE(systemd_notify,
+ AS_HELP_STRING([--enable-systemd-notify],
+ [Enables systemd notifications to
+ notify systemd about weston state
+ and update watchdog.]),,
+ enable_systemd_notify=no)
+AM_CONDITIONAL(SYSTEMD_NOTIFY_SUPPORT, test x$enable_systemd_notify = xyes)
+if test "x$enable_systemd_notify" = "xyes"; then
+ AC_DEFINE([SYSTEMD_NOTIFY_SUPPORT], [1], [Build the systemd sd_notify support])
+ PKG_CHECK_MODULES(SYSTEMD_DAEMON, [libsystemd])
+fi
+
AC_CONFIG_FILES([Makefile src/version.h src/weston.pc])
AM_CONDITIONAL([HAVE_GIT_REPO], [test -f $srcdir/.git/logs/HEAD])
@@ -590,6 +602,7 @@
weston-launch utility ${enable_weston_launch}
systemd-login support ${have_systemd_login}
+ systemd notify support ${enable_systemd_notify}
DRM Compositor ${enable_drm_compositor}
X11 Compositor ${enable_x11_compositor}