summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorSam James <sam@gentoo.org>2022-01-18 13:12:38 +0000
committerSam James <sam@gentoo.org>2022-01-18 13:12:46 +0000
commit092edcd917732ae0d21ef78f0484cc73d386225a (patch)
treef9da0dd8f76a186be8948e16bdebd764cc030255 /dev-libs/libgcrypt
parentdev-libs/libgcrypt: Stabilize 1.9.4 x86, #817935 (diff)
downloadgentoo-092edcd917732ae0d21ef78f0484cc73d386225a.tar.gz
gentoo-092edcd917732ae0d21ef78f0484cc73d386225a.tar.bz2
gentoo-092edcd917732ae0d21ef78f0484cc73d386225a.zip
dev-libs/libgcrypt: fix build on ARM
Closes: https://bugs.gentoo.org/831397 Signed-off-by: Sam James <sam@gentoo.org>
Diffstat (limited to 'dev-libs/libgcrypt')
-rw-r--r--dev-libs/libgcrypt/files/libgcrypt-1.9.4-arm-neon-compile-fix.patch42
-rw-r--r--dev-libs/libgcrypt/libgcrypt-1.9.4.ebuild1
2 files changed, 43 insertions, 0 deletions
diff --git a/dev-libs/libgcrypt/files/libgcrypt-1.9.4-arm-neon-compile-fix.patch b/dev-libs/libgcrypt/files/libgcrypt-1.9.4-arm-neon-compile-fix.patch
new file mode 100644
index 000000000000..b8126185817b
--- /dev/null
+++ b/dev-libs/libgcrypt/files/libgcrypt-1.9.4-arm-neon-compile-fix.patch
@@ -0,0 +1,42 @@
+From bc0b82ad8201a4d7bffa3cf0f5504b72c1011cb1 Mon Sep 17 00:00:00 2001
+From: Sam James <sam@gentoo.org>
+Date: Tue, 18 Jan 2022 12:44:22 +0000
+Subject: [PATCH] cipher/cipher-gcm: fix build failure on ARM NEON
+
+'features' is only defined when relevant CPU features are found, but
+one of the uses below its definition checked for GCM_USE_ARM_NEON which
+wasn't in the guard above it.
+
+i.e. We used to only define 'features' when:
+- GCM_USE_INTEL_PCLMUL
+- GCM_USE_ARM_PMULL
+- GCM_USE_S390X_CRYPTO
+- GCM_USE_PPC_VPMSUM
+- GCM_USE_S390X_CRYPTO
+- GCM_USE_PPC_VPMSUM
+is set.
+
+We were missing GCM_USE_ARM_NEON so when we check for GCM_USE_ARM_NEON
+below, it'd fail as features wasn't defined.
+
+Bug: https://bugs.gentoo.org/831397
+---
+ cipher/cipher-gcm.c | 3 ++-
+ 1 file changed, 2 insertions(+), 1 deletion(-)
+
+diff --git a/cipher/cipher-gcm.c b/cipher/cipher-gcm.c
+index a039c5e9..22834f35 100644
+--- a/cipher/cipher-gcm.c
++++ b/cipher/cipher-gcm.c
+@@ -583,7 +583,8 @@ static void
+ setupM (gcry_cipher_hd_t c)
+ {
+ #if defined(GCM_USE_INTEL_PCLMUL) || defined(GCM_USE_ARM_PMULL) || \
+- defined(GCM_USE_S390X_CRYPTO) || defined(GCM_USE_PPC_VPMSUM)
++ defined(GCM_USE_ARM_NEON) || defined(GCM_USE_S390X_CRYPTO) || \
++ defined(GCM_USE_PPC_VPMSUM)
+ unsigned int features = _gcry_get_hw_features ();
+ #endif
+
+--
+2.34.1
diff --git a/dev-libs/libgcrypt/libgcrypt-1.9.4.ebuild b/dev-libs/libgcrypt/libgcrypt-1.9.4.ebuild
index b60616307fb9..a5b6b9652284 100644
--- a/dev-libs/libgcrypt/libgcrypt-1.9.4.ebuild
+++ b/dev-libs/libgcrypt/libgcrypt-1.9.4.ebuild
@@ -35,6 +35,7 @@ BDEPEND="doc? ( virtual/texi2dvi )"
PATCHES=(
"${FILESDIR}"/${PN}-multilib-syspath.patch
"${FILESDIR}"/${PN}-powerpc-darwin.patch
+ "${FILESDIR}"/${PN}-1.9.4-arm-neon-compile-fix.patch
)
MULTILIB_CHOST_TOOLS=(