biology/htslib: fix build on armv7

This project includes some SIMD-enhanced functions for ARM NEON.
Unfortunately the code uses a bunch of intrinsics only available on
aarch64.  Disable the use of NEON on armv6 and armv7 to fix the build
on these platforms.

See also:	https://github.com/samtools/htslib/issues/1603
Approved by:	portmgr (build fix blanket)
This commit is contained in:
Robert Clausecker 2023-04-17 23:18:56 +02:00
commit bba4910f8c

View file

@ -20,6 +20,9 @@ USE_PERL5= test
USE_LDCONFIG= yes
GNU_CONFIGURE= yes
MAKE_ARGS_armv6= HTS_HAVE_NEON=
MAKE_ARGS_armv7= HTS_HAVE_NEON=
MAKE_ARGS= $(MAKE_ARGS_$(ARCH))
PATHFIX_MAKEFILEIN= Makefile
SHEBANG_FILES= test/*.pl

View file

@ -0,0 +1,11 @@
--- htscodecs/htscodecs/rANS_static32x16pr_neon.c.orig 2023-04-17 21:11:08 UTC
+++ htscodecs/htscodecs/rANS_static32x16pr_neon.c
@@ -32,7 +32,7 @@
*/
#include "config.h"
-#ifdef __ARM_NEON
+#if defined(__ARM_NEON) && defined(__aarch64__)
#include <arm_neon.h>
#include <limits.h>

View file

@ -0,0 +1,11 @@
--- htscodecs/htscodecs/rANS_static4x16pr.c.orig 2023-04-17 21:13:50 UTC
+++ htscodecs/htscodecs/rANS_static4x16pr.c
@@ -1006,7 +1006,7 @@ unsigned char *(*rans_dec_func(int do_simd, int order)
}
}
-#elif defined(__ARM_NEON)
+#elif defined(__ARM_NEON) && defined(__aarch64__)
#if defined(__linux__) || defined(__FreeBSD__)
#include <sys/auxv.h>