summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
-rw-r--r--gnu/local.mk1
-rw-r--r--gnu/packages/linux.scm3
-rw-r--r--gnu/packages/patches/libseccomp-open-aarch64.patch27
3 files changed, 30 insertions, 1 deletions
diff --git a/gnu/local.mk b/gnu/local.mk
index 7672295e69..ba86bf3224 100644
--- a/gnu/local.mk
+++ b/gnu/local.mk
@@ -1078,6 +1078,7 @@ dist_patch_DATA = \
%D%/packages/patches/libmygpo-qt-missing-qt5-modules.patch \
%D%/packages/patches/libreoffice-icu.patch \
%D%/packages/patches/libreoffice-glm.patch \
+ %D%/packages/patches/libseccomp-open-aarch64.patch \
%D%/packages/patches/libsndfile-armhf-type-checks.patch \
%D%/packages/patches/libsndfile-CVE-2017-8361-8363-8365.patch \
%D%/packages/patches/libsndfile-CVE-2017-8362.patch \
diff --git a/gnu/packages/linux.scm b/gnu/packages/linux.scm
index f424eb0db8..9941129ba7 100644
--- a/gnu/packages/linux.scm
+++ b/gnu/packages/linux.scm
@@ -4794,7 +4794,8 @@ of flash storage.")
"/libseccomp-" version ".tar.gz"))
(sha256
(base32
- "0nsq81acrbkdr8zairxbwa33bj2a6126npp76b4srjl472sjfkxm"))))
+ "0nsq81acrbkdr8zairxbwa33bj2a6126npp76b4srjl472sjfkxm"))
+ (patches (search-patches "libseccomp-open-aarch64.patch"))))
(build-system gnu-build-system)
(native-inputs
`(("which" ,which)))
diff --git a/gnu/packages/patches/libseccomp-open-aarch64.patch b/gnu/packages/patches/libseccomp-open-aarch64.patch
new file mode 100644
index 0000000000..6e62825892
--- /dev/null
+++ b/gnu/packages/patches/libseccomp-open-aarch64.patch
@@ -0,0 +1,27 @@
+This patch fixes the build failure on AArch64 reported
+at <https://github.com/seccomp/libseccomp/pull/191>.
+
+From cc21c1b48d35f9d34ef2da0e184af3855bfeee5f Mon Sep 17 00:00:00 2001
+From: =?UTF-8?q?Zbigniew=20J=C4=99drzejewski-Szmek?= <zbyszek@in.waw.pl>
+Date: Wed, 20 Nov 2019 14:11:12 -0500
+Subject: [PATCH] tests: use openat instead of open
+
+On arm64, __NR_open is not defined, openat is always used. Let's use openat
+instead, which is defined for architectures currently.
+---
+ tests/15-basic-resolver.c | 2 +-
+ 1 file changed, 1 insertion(+), 1 deletion(-)
+
+diff --git a/tests/15-basic-resolver.c b/tests/15-basic-resolver.c
+index 6badef1..4884faf 100644
+--- a/tests/15-basic-resolver.c
++++ b/tests/15-basic-resolver.c
+@@ -55,7 +55,7 @@ int main(int argc, char *argv[])
+ unsigned int arch;
+ char *name = NULL;
+
+- if (seccomp_syscall_resolve_name("open") != __NR_open)
++ if (seccomp_syscall_resolve_name("openat") != __NR_openat)
+ goto fail;
+ if (seccomp_syscall_resolve_name("read") != __NR_read)
+ goto fail;