aboutsummaryrefslogtreecommitdiff
path: root/security/libgcrypt
diff options
context:
space:
mode:
authorCarlos J. Puga Medina <cpm@FreeBSD.org>2017-02-28 12:21:13 +0000
committerCarlos J. Puga Medina <cpm@FreeBSD.org>2017-02-28 12:21:13 +0000
commit5415214b1762031e8094e652b152765cb04dc7c5 (patch)
treef5e258bdd7e140b2c5c435a750307f6934e890bf /security/libgcrypt
parent33568fab08af684ac2d44a7d11a944765dd9e7bf (diff)
Notes
Diffstat (limited to 'security/libgcrypt')
-rw-r--r--security/libgcrypt/Makefile4
-rw-r--r--security/libgcrypt/files/extra-patch-aarch6468
2 files changed, 72 insertions, 0 deletions
diff --git a/security/libgcrypt/Makefile b/security/libgcrypt/Makefile
index 8760fea857ec..67052389ffe5 100644
--- a/security/libgcrypt/Makefile
+++ b/security/libgcrypt/Makefile
@@ -33,6 +33,10 @@ OPTIONS_DEFINE= DOCS
.include <bsd.port.options.mk>
+.if ${ARCH} == "armv6" || ${ARCH} == "aarch64"
+EXTRA_PATCHES+= ${FILESDIR}/extra-patch-aarch64
+.endif
+
.if ${ARCH} == "powerpc"
CONFIGURE_ARGS+= --disable-asm
.endif
diff --git a/security/libgcrypt/files/extra-patch-aarch64 b/security/libgcrypt/files/extra-patch-aarch64
new file mode 100644
index 000000000000..3cf8b1d2f1d4
--- /dev/null
+++ b/security/libgcrypt/files/extra-patch-aarch64
@@ -0,0 +1,68 @@
+--- cipher/cipher-gcm-armv8-aarch64-ce.S.orig 2016-11-12 10:39:35 UTC
++++ cipher/cipher-gcm-armv8-aarch64-ce.S
+@@ -23,7 +23,7 @@
+ defined(HAVE_COMPATIBLE_GCC_AARCH64_PLATFORM_AS) && \
+ defined(HAVE_GCC_INLINE_ASM_AARCH64_CRYPTO)
+
+-.arch armv8-a+crypto
++.cpu generic+simd+crypto
+
+ .text
+
+--- cipher/rijndael-armv8-aarch64-ce.S.orig 2017-01-18 11:28:40 UTC
++++ cipher/rijndael-armv8-aarch64-ce.S
+@@ -23,7 +23,7 @@
+ defined(HAVE_COMPATIBLE_GCC_AARCH64_PLATFORM_AS) && \
+ defined(HAVE_GCC_INLINE_ASM_AARCH64_CRYPTO)
+
+-.arch armv8-a+crypto
++.cpu generic+simd+crypto
+
+ .text
+
+--- cipher/sha1-armv8-aarch64-ce.S.orig 2016-11-12 10:39:35 UTC
++++ cipher/sha1-armv8-aarch64-ce.S
+@@ -23,7 +23,7 @@
+ defined(HAVE_COMPATIBLE_GCC_AARCH64_PLATFORM_AS) && \
+ defined(HAVE_GCC_INLINE_ASM_AARCH64_CRYPTO) && defined(USE_SHA1)
+
+-.arch armv8-a+crypto
++.cpu generic+simd+crypto
+
+ .text
+
+--- cipher/sha256-armv8-aarch64-ce.S.orig 2016-11-12 10:39:35 UTC
++++ cipher/sha256-armv8-aarch64-ce.S
+@@ -23,7 +23,7 @@
+ defined(HAVE_COMPATIBLE_GCC_AARCH64_PLATFORM_AS) && \
+ defined(HAVE_GCC_INLINE_ASM_AARCH64_CRYPTO) && defined(USE_SHA256)
+
+-.arch armv8-a+crypto
++.cpu generic+simd+crypto
+
+ .text
+
+--- configure.ac.orig 2017-01-18 11:37:00 UTC
++++ configure.ac
+@@ -1623,7 +1623,7 @@ AC_CACHE_CHECK([whether GCC inline assem
+ gcry_cv_gcc_inline_asm_aarch64_neon=no
+ AC_COMPILE_IFELSE([AC_LANG_SOURCE(
+ [[__asm__(
+- ".arch armv8-a\n\t"
++ ".cpu generic+simd\n\t"
+ "mov w0, \#42;\n\t"
+ "dup v0.8b, w0;\n\t"
+ "ld4 {v0.8b,v1.8b,v2.8b,v3.8b},[x0],\#32;\n\t"
+@@ -1648,7 +1648,11 @@ AC_CACHE_CHECK([whether GCC inline assem
+ gcry_cv_gcc_inline_asm_aarch64_crypto=no
+ AC_COMPILE_IFELSE([AC_LANG_SOURCE(
+ [[__asm__(
+- ".arch armv8-a+crypto\n\t"
++ ".cpu generic+simd\n\t"
++
++ "mov w0, \#42;\n\t"
++ "dup v0.8b, w0;\n\t"
++ "ld4 {v0.8b,v1.8b,v2.8b,v3.8b},[x0],\#32;\n\t"
+
+ "sha1h s0, s0;\n\t"
+ "sha1c q0, s0, v0.4s;\n\t"