lxc: fix build without seccomp if libseccomp built
[feed/packages.git] / utils / lxc / patches / 035-configure-skip-libseccomp-tests-if-it-is-disabled.patch
diff --git a/utils/lxc/patches/035-configure-skip-libseccomp-tests-if-it-is-disabled.patch b/utils/lxc/patches/035-configure-skip-libseccomp-tests-if-it-is-disabled.patch
new file mode 100644 (file)
index 0000000..2a455bc
--- /dev/null
@@ -0,0 +1,43 @@
+From 67cd8bde2d46983df8fa9f647e9fc0b96370ec29 Mon Sep 17 00:00:00 2001
+From: Eneas U de Queiroz <cotequeiroz@gmail.com>
+Date: Sat, 16 Jan 2021 13:54:07 -0300
+Subject: [PATCH 2/2] configure: skip libseccomp tests if it is disabled
+
+Move the block checking for libseccomp api compatibility inside
+AM_COND_IF([ENABLE_SECCOMP] ... ).
+
+Signed-off-by: Eneas U de Queiroz <cotequeiroz@gmail.com>
+
+--- a/configure.ac
++++ b/configure.ac
+@@ -284,6 +284,14 @@ AM_COND_IF([ENABLE_SECCOMP],
+               AC_CHECK_LIB([seccomp], [seccomp_init],[],[AC_MSG_ERROR([You must install the seccomp development package in order to compile lxc])])
+               AC_SUBST([SECCOMP_LIBS], [-lseccomp])
+               ])
++      # HAVE_SCMP_FILTER_CTX=1 will tell us we have libseccomp api >= 1.0.0
++      OLD_CFLAGS="$CFLAGS"
++      CFLAGS="$CFLAGS $SECCOMP_CFLAGS"
++      AC_CHECK_TYPES([scmp_filter_ctx], [], [], [[#include <seccomp.h>]])
++      AC_CHECK_DECLS([seccomp_notify_fd], [], [], [[#include <seccomp.h>]])
++      AC_CHECK_TYPES([struct seccomp_notif_sizes], [], [], [[#include <seccomp.h>]])
++      AC_CHECK_DECLS([seccomp_syscall_resolve_name_arch], [], [], [[#include <seccomp.h>]])
++      CFLAGS="$OLD_CFLAGS"
+       ])
+ AC_MSG_CHECKING(for static libcap)
+@@ -331,15 +339,6 @@ AM_COND_IF([ENABLE_CAP],
+         AC_CHECK_LIB(cap,cap_get_file, AC_DEFINE(LIBCAP_SUPPORTS_FILE_CAPABILITIES,1,[Have cap_get_file]),[],[])
+         AC_SUBST([CAP_LIBS], [-lcap])])
+-# HAVE_SCMP_FILTER_CTX=1 will tell us we have libseccomp api >= 1.0.0
+-OLD_CFLAGS="$CFLAGS"
+-CFLAGS="$CFLAGS $SECCOMP_CFLAGS"
+-AC_CHECK_TYPES([scmp_filter_ctx], [], [], [[#include <seccomp.h>]])
+-AC_CHECK_DECLS([seccomp_notify_fd], [], [], [[#include <seccomp.h>]])
+-AC_CHECK_TYPES([struct seccomp_notif_sizes], [], [], [[#include <seccomp.h>]])
+-AC_CHECK_DECLS([seccomp_syscall_resolve_name_arch], [], [], [[#include <seccomp.h>]])
+-CFLAGS="$OLD_CFLAGS"
+-
+ AC_CHECK_HEADERS([linux/bpf.h], [
+       AC_CHECK_TYPES([struct bpf_cgroup_dev_ctx], [], [], [[#include <linux/bpf.h>]])
+ ], [], [])