Source: gnutls28
Version: 3.5.8-5+deb9u2
Severity: wishlist
Tags: upstream patch

gnutls28 currently fails to build on arm64ilp32, because the arm64
acceleration assembler for sha* does not yet support the ILP32 ABI, so
it has to be disabled in that case.

Attached is a patch for doing so, which should also go upstream. It
can be removed if/when someone fixes up the assembler for ILP32.

Are you happy to post this upstream or shall I find the right list and
do it?

More info on arm64ilp32 is here:
https://wiki.debian.org/Arm64ilp32Port

-- System Information:
Debian Release: 8.9
  APT prefers oldstable-updates
  APT policy: (500, 'oldstable-updates'), (500, 'oldstable')
Architecture: amd64 (x86_64)

Kernel: Linux 3.16.0-4-amd64 (SMP w/8 CPU cores)
Locale: LANG=en_GB.UTF-8, LC_CTYPE=en_GB.UTF-8 (charmap=UTF-8)
Shell: /bin/sh linked to /bin/dash
Init: systemd (via /run/systemd/system)
diff -urN gnutls28-3.5.8.orig/debian/patches/arm64ilp32-unaccelerated.patch gnutls28-3.5.8/debian/patches/arm64ilp32-unaccelerated.patch
--- gnutls28-3.5.8.orig/debian/patches/arm64ilp32-unaccelerated.patch	1970-01-01 00:00:00.000000000 +0000
+++ gnutls28-3.5.8/debian/patches/arm64ilp32-unaccelerated.patch	2017-08-17 13:05:35.367653710 +0000
@@ -0,0 +1,24 @@
+Description: Disable asm for aarch64 ILP32
+ The aarch64 sha acceleration assembler does not support ILP32 ABI yet,
+ so disable it when building for ILP32
+Bug: <url in upstream bugtracker>
+Bug-Debian: https://bugs.debian.org/<bugnumber>
+Forwarded: no
+Reviewed-By: Wookey <[email protected]>
+Last-Update: 2017-08-17
+
+--- gnutls28-3.5.8.orig/configure.ac
++++ gnutls28-3.5.8/configure.ac
+@@ -157,6 +157,12 @@ if test "$use_accel" != "no"; then
+ case $host_cpu in
+   armv8 | aarch64)
+       hw_accel="aarch64"
++      case $host_os in 
++        *_ilp32)
++	  dnl ILP32 not supported in assembler yet
++	  hw_accel="none"
++        ;;
++      esac
+   ;;
+   i?86 | x86_64 | amd64)
+       AC_CHECK_HEADERS(cpuid.h)
diff -urN gnutls28-3.5.8.orig/debian/patches/series gnutls28-3.5.8/debian/patches/series
--- gnutls28-3.5.8.orig/debian/patches/series	2017-07-07 17:43:58.000000000 +0000
+++ gnutls28-3.5.8/debian/patches/series	2017-08-17 13:07:21.869184476 +0000
@@ -13,3 +13,4 @@
 36_CVE-2017-7507_2-ext-status_request-Removed-the-parsing-of-responder-.patch
 36_CVE-2017-7507_3-gnutls_ocsp_status_request_enable_client-documented-.patch
 37_aarch64-fix-AES-GCM-in-place-encryption-and-decrypti.patch
+arm64ilp32-unaccelerated.patch

Reply via email to