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 . + +From cc21c1b48d35f9d34ef2da0e184af3855bfeee5f Mon Sep 17 00:00:00 2001 +From: =?UTF-8?q?Zbigniew=20J=C4=99drzejewski-Szmek?= +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;