[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]
[Qemu-devel] [PATCH 1/2] configure: add libsystemd check
From: |
Stefan Hajnoczi |
Subject: |
[Qemu-devel] [PATCH 1/2] configure: add libsystemd check |
Date: |
Thu, 5 Jan 2017 17:31:06 +0000 |
libsystemd provides APIs for daemons that wish to integrate socket
activation and other systemd-related functionality. This will be used
as an optional dependency by qemu-guest-agent.
In the future it could also be used for systemd logging or sd_notify(3)
service startup notification.
Signed-off-by: Stefan Hajnoczi <address@hidden>
---
configure | 34 ++++++++++++++++++++++++++++++++++
1 file changed, 34 insertions(+)
diff --git a/configure b/configure
index 218df87..c353ff7 100755
--- a/configure
+++ b/configure
@@ -321,6 +321,7 @@ numa=""
tcmalloc="no"
jemalloc="no"
replication="yes"
+systemd=""
# parse CC options first
for opt do
@@ -1168,6 +1169,10 @@ for opt do
;;
--enable-replication) replication="yes"
;;
+ --disable-systemd) systemd="no"
+ ;;
+ --enable-systemd) systemd="yes"
+ ;;
*)
echo "ERROR: unknown option $opt"
echo "Try '$0 --help' for more information"
@@ -1401,6 +1406,7 @@ disabled with --disable-FEATURE, default is enabled if
available:
tcmalloc tcmalloc support
jemalloc jemalloc support
replication replication support
+ systemd systemd support
NOTE: The object files are built at the place where configure is launched
EOF
@@ -4720,6 +4726,27 @@ if compile_prog "" "" ; then
have_af_vsock=yes
fi
+##########################################
+# check for libsystemd
+if test "$systemd" != "no" ; then
+ cat > $TMPC << EOF
+#include <systemd/sd-daemon.h>
+int main(void) { (void)sd_listen_fds(1); return 0; }
+EOF
+ systemd_cflags=$($pkg_config --cflags libsystemd 2>/dev/null)
+ systemd_libs=$($pkg_config --libs libsystemd 2>/dev/null)
+ if $pkg_config libsystemd >/dev/null 2>&1 && \
+ compile_prog "$systemd_cflags" "$systemd_libs" ; then
+ systemd="yes"
+ else
+ if test "$systemd" = "yes" ; then
+ feature_not_found "systemd"
+ fi
+ systemd="no"
+ fi
+fi
+
+
#################################################
# Sparc implicitly links with --relax, which is
# incompatible with -r, so --no-relax should be
@@ -5112,6 +5139,7 @@ echo "tcmalloc support $tcmalloc"
echo "jemalloc support $jemalloc"
echo "avx2 optimization $avx2_opt"
echo "replication support $replication"
+echo "systemd support $systemd"
if test "$sdl_too_old" = "yes"; then
echo "-> Your SDL version is too old - please upgrade to have SDL support"
@@ -5721,6 +5749,12 @@ if test "$have_af_vsock" = "yes" ; then
echo "CONFIG_AF_VSOCK=y" >> $config_host_mak
fi
+if test "$systemd" = "yes" ; then
+ echo "CONFIG_SYSTEMD=y" >> $config_host_mak
+ echo "SYSTEMD_CFLAGS=$systemd_cflags" >> $config_host_mak
+ echo "SYSTEMD_LIBS=$systemd_libs" >> $config_host_mak
+fi
+
# Hold two types of flag:
# CONFIG_THREAD_SETNAME_BYTHREAD - we've got a way of setting the name on
# a thread we have a handle to
--
2.9.3