1
0
mirror of https://git.savannah.gnu.org/git/emacs.git synced 2025-01-05 11:45:45 +00:00

Generate Seccomp filters only if we have the necessary constants.

If we're missing SECCOMP_SET_MODE_FILTER, the seccomp-filter build
fails.  Reuse the existing HAVE_SECCOMP configuration variable, which
checks for these macros.

* configure.ac (HAVE_SECCOMP): Substitute in Makefile.in.
* lib-src/Makefile.in (HAVE_SECCOMP): New variable.
(SECCOMP_FILTER): Define only if HAVE_SECCOMP.
This commit is contained in:
Philipp Stephani 2021-04-12 09:15:59 +02:00
parent c45bfd3c4a
commit 17d20bb3cb
2 changed files with 4 additions and 0 deletions

View File

@ -4188,6 +4188,7 @@ AC_CHECK_HEADERS(
[[
#include <linux/seccomp.h>
]])])
AC_SUBST([HAVE_SECCOMP])
EMACS_CHECK_MODULES([LIBSECCOMP], [libseccomp >= 2.4.0])
AC_SUBST([HAVE_LIBSECCOMP])

View File

@ -189,11 +189,13 @@ LIB_WSOCK32=@LIB_WSOCK32@
## Extra libraries for etags
LIBS_ETAGS = $(LIB_CLOCK_GETTIME) $(LIB_GETRANDOM)
HAVE_SECCOMP=@HAVE_SECCOMP@
HAVE_LIBSECCOMP=@HAVE_LIBSECCOMP@
LIBSECCOMP_LIBS=@LIBSECCOMP_LIBS@
LIBSECCOMP_CFLAGS=@LIBSECCOMP_CFLAGS@
# Currently, we can only generate seccomp filter files for x86-64.
ifeq ($(HAVE_SECCOMP),yes)
ifeq ($(HAVE_LIBSECCOMP),yes)
ifeq ($(shell uname -m),x86_64)
# We require SECCOMP_RET_KILL_PROCESS, which is only available in
@ -205,6 +207,7 @@ SECCOMP_FILTER=1
endif
endif
endif
endif
ifeq ($(SECCOMP_FILTER),1)
DONT_INSTALL += seccomp-filter$(EXEEXT)