[Debian-med-packaging] Bug#1117022: ncbi-blast+ FTBFS on armhf
Adrian Bunk
bunk at debian.org
Thu Oct 2 09:47:41 BST 2025
Source: ncbi-blast+
Version: 2.17.0+ds-1
Severity: serious
Tags: ftbfs patch
X-Debbugs-Cc: Aaron M. Ucko <ucko at debian.org>
https://buildd.debian.org/status/logs.php?pkg=ncbi-blast%2B&arch=armhf
...
cc1: error: ‘-mfloat-abi=hard’: selected architecture lacks an FPU
make[5]: *** [/build/reproducible-path/ncbi-blast+-2.17.0+ds/c++/BUILD/build/Makefile.rules:111: crc32.o] Error 1
...
/usr/bin/gcc -std=gnu18 -fgnu89-inline -c -Wall -Wno-format-y2k -pthread -fopenmp -g -O2 -Werror=implicit-function-declaration -ffile-prefix-map=/build/reproducible-path/ncbi-blast+-2.17.0+ds=. -specs=/usr/share/dpkg/no-pie-compile.specs -fstack-protector-strong -fstack-clash-protection -Wformat -Werror=format-security -Wall -pedantic -fPIC -march=armv8-a+crc -DNDEBUG -D_LARGEFILE_SOURCE -D_FILE_OFFSET_BITS=64 -D_LARGEFILE64_SOURCE -D_LARGEFILE_SOURCE -D_FILE_OFFSET_BITS=64 -D_TIME_BITS=64 -D_FORTIFY_SOURCE=2 -D_MT -D_REENTRANT -D_THREAD_SAFE -I/build/reproducible-path/ncbi-blast+-2.17.0+ds/c++/BUILD/inc -I/build/reproducible-path/ncbi-blast+-2.17.0+ds/c++/include -I/build/reproducible-path/ncbi-blast+-2.17.0+ds/c++/include/util/compress/zlib_cloudflare /build/reproducible-path/ncbi-blast+-2.17.0+ds/c++/src/util/compress/zlib_cloudflare/crc32.c -o crc32.o
...
This is fixed with the attached patch.
In a related note:
ncbi-blast+ (2.17.0+ds-2) unstable; urgency=medium
* debian/control:
- Additionally build-depend on libsimde-dev.
- Require CRC support on ARM per upstream.
* debian/patches/zcf-simde-crc32c (new): Replace Cloudflare deflate.c's
fallbackless architecture-dependent code with a SIMDE invocation that
amounts to the same thing on supported architectures and to a portable
fallback elsewhere.
-- Aaron M. Ucko <ucko at debian.org> Wed, 01 Oct 2025 14:43:25 -0400
The SIMDE invocation replaces the direct usage of CRC,
which makes the armv8crc-support dependency unnecessary.
Depending on armhf on what is higher even than the arm64
baseline would make little sense in any case.
-------------- next part --------------
Description: Don't use -march=armv8-a+crc on arm
Author: Adrian Bunk <bunk at debian.org>
--- ncbi-blast+-2.17.0+ds.orig/c++/src/util/compress/zlib_cloudflare/Makefile.zlib_cf.lib.unix
+++ ncbi-blast+-2.17.0+ds/c++/src/util/compress/zlib_cloudflare/Makefile.zlib_cf.lib.unix
@@ -1,7 +1,7 @@
# $Id: Makefile.zlib_cf.lib.unix 677587 2024-01-18 20:07:53Z ivanov $
-ifneq "" "$(findstring --arm,$(signature))$(findstring --aarch64,$(signature))"
- crc32.o: CFLAGS += -march=armv8-a+crc
- deflate.o: CFLAGS += -march=armv8-a+crc
-endif
+#ifneq "" "$(findstring --arm,$(signature))$(findstring --aarch64,$(signature))"
+# crc32.o: CFLAGS += -march=armv8-a+crc
+# deflate.o: CFLAGS += -march=armv8-a+crc
+#endif
More information about the Debian-med-packaging
mailing list