From 92072c73ab74ebe0654ac5bd4f9fd2182181ee9d Mon Sep 17 00:00:00 2001 From: Mart Raudsepp Date: Tue, 19 Mar 2019 11:00:21 +0200 Subject: [PATCH] meson: Support elogind --- meson.build | 12 +++++++++--- meson_options.txt | 1 + 2 files changed, 10 insertions(+), 3 deletions(-) diff --git a/meson.build b/meson.build index afc97457..7c32e3b9 100644 --- a/meson.build +++ b/meson.build @@ -121,8 +121,10 @@ session_tracking = 'null backend' enable_systemd = get_option('systemd') enable_systemd_journal = get_option('systemd_journal') +enable_elogind = get_option('elogind') enable_consolekit = get_option('consolekit') -if enable_systemd or enable_consolekit +assert(not (enable_systemd and enable_elogind), 'Can not support systemd and elogind at once') +if enable_systemd or enable_elogind or enable_consolekit session_bin_deps += dependency('gio-unix-2.0', version: glib_req_version) # Check for systemd @@ -145,6 +147,10 @@ if enable_systemd or enable_consolekit endif session_tracking = 'systemd' + elif enable_elogind + libelogind_dep = dependency('libelogind', version: '>= 239.4') + session_bin_deps += libelogind_dep + session_tracking = 'elogind' endif # Check for ConsoleKit @@ -154,14 +160,14 @@ if enable_systemd or enable_consolekit session_bin_deps += dbus_glib_dep - if enable_systemd + if enable_systemd or enable_elogind session_tracking += ' (with fallback to ConsoleKit)' else session_tracking = 'ConsoleKit' endif endif endif -config_h.set('HAVE_SYSTEMD', enable_systemd) +config_h.set('HAVE_SYSTEMD', enable_systemd or enable_elogind) config_h.set('ENABLE_SYSTEMD_JOURNAL', enable_systemd_journal) config_h.set('HAVE_CONSOLEKIT', enable_consolekit) diff --git a/meson_options.txt b/meson_options.txt index 05174fec..cd85eae8 100644 --- a/meson_options.txt +++ b/meson_options.txt @@ -1,4 +1,5 @@ option('deprecation_flags', type: 'boolean', value: false, description: 'use *_DISABLE_DEPRECATED flags') +option('elogind', type: 'boolean', value: true, description: 'Use elogind') option('session_selector', type: 'boolean', value: false, description: 'enable building a custom session selector dialog') option('systemd', type: 'boolean', value: true, description: 'Use systemd') option('systemd_journal', type: 'boolean', value:'true', description: 'Send log to systemd-journal') -- 2.17.0