From f80df29449c6ba47ac8d65b8cf19834a5d4249d3 Mon Sep 17 00:00:00 2001 From: Alexander Bokovoy Date: Thu, 29 Sep 2016 00:09:12 +0300 Subject: [PATCH] systemd: fix detection of libsystemd On Fedora 25 detection of libsystemd actually fails due to wrong assumptions in the configure test. conf.CHECK_LIB returns a list so 'not conf.CHECK_LIB(...)' is always False and we never get to check libsystemd. Instead, remember result of checking pkg-config for separate libsystemd-daemon and libsystemd-journal libraries. If they miss, attempt to use libsystemd library instead. Signed-off-by: Alexander Bokovoy Reviewed-by: Andreas Schneider Autobuild-User(master): Andreas Schneider Autobuild-Date(master): Tue May 2 13:05:43 CEST 2017 on sn-devel-144 (cherry picked from commit 09bc5b5374227a555f580c3d7c1d82f15bb818bc) --- lib/util/wscript_configure | 15 ++++++++------- 1 file changed, 8 insertions(+), 7 deletions(-) diff --git a/lib/util/wscript_configure b/lib/util/wscript_configure index a1e5801..7c17633 100644 --- a/lib/util/wscript_configure +++ b/lib/util/wscript_configure @@ -110,16 +110,17 @@ conf.SET_TARGET_TYPE('systemd-journal', 'EMPTY') conf.SET_TARGET_TYPE('systemd', 'EMPTY') if Options.options.enable_systemd != False: - conf.CHECK_CFG(package='libsystemd-daemon', args='--cflags --libs', + r_daemon = conf.CHECK_CFG(package='libsystemd-daemon', args='--cflags --libs', msg='Checking for libsystemd-daemon') - if not conf.CHECK_LIB('systemd-daemon', shlib=True): - conf.CHECK_LIB('systemd', shlib=True) - -if Options.options.enable_systemd != False: - conf.CHECK_CFG(package='libsystemd-journal', args='--cflags --libs', + r_journal = conf.CHECK_CFG(package='libsystemd-journal', args='--cflags --libs', msg='Checking for libsystemd-journal') - if not conf.CHECK_LIB('systemd-journal', shlib=True): + if r_daemon is None and r_journal is None: + conf.CHECK_CFG(package='libsystemd', args='--cflags --libs', + msg='Checking for libsystemd') conf.CHECK_LIB('systemd', shlib=True) + else: + conf.CHECK_LIB('systemd-daemon', shlib=True) + conf.CHECK_LIB('systemd-journal', shlib=True) if Options.options.enable_lttng != False: conf.CHECK_CFG(package='lttng-ust', args='--cflags --libs', -- 2.9.3