Source: ncbi-blast+
Version: 2.17.0+ds-1
Severity: serious
Tags: ftbfs patch
X-Debbugs-Cc: Aaron M. Ucko <[email protected]>

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 <[email protected]>  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.
Description: Don't use -march=armv8-a+crc on arm
Author: Adrian Bunk <[email protected]>

--- 
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
 

Reply via email to