Source: quickfix Version: 1.15.1+dfsg-4 Severity: serious Tags: ftbfs patch upstream Justification: fails to build from source (but built successfully in the past) X-Debbugs-Cc: ab.bea...@gmail.com
Dear Maintainer, Currently, quickfix fails to build on riscv64. The problem occues due to the inclusion of an old version of the double-conversion utility in the following subdirectory: src/C++/double-conversion/ You can view the (trivial) upstream commit to add riscv64 support here: https://github.com/google/double-conversion/commit/8316ed5bf405835558a476e528d8e1d0adf69dd9 You can review the failed build log here: https://buildd.debian.org/status/fetch.php?pkg=quickfix&arch=riscv64&ver=1.15.1%2Bdfsg-4&stamp=1652988337&raw=0 The least intrusive solution is to patch the included utility in the same way that the upstream source for this utility already has. I am including a patch which does this. I have confirmed that this patch allows building quickfix on actual riscv64 hardware (StatFive VisionFive V1). Please consider applying the included patch (or similar) for the next upload. Thank you, -Alan Beadle -- System Information: Debian Release: bookworm/sid APT prefers unstable APT policy: (500, 'unstable') Architecture: riscv64 Kernel: Linux 5.18.0-starfive-5.18 (SMP w/2 CPU threads) Locale: LANG=en_US.UTF-8, LC_CTYPE=en_US.UTF-8 (charmap=UTF-8), LANGUAGE not set Shell: /bin/sh linked to /usr/bin/dash Init: systemd (via /run/systemd/system)
Index: quickfix-1.15.1+dfsg/src/C++/double-conversion/utils.h =================================================================== --- quickfix-1.15.1+dfsg.orig/src/C++/double-conversion/utils.h +++ quickfix-1.15.1+dfsg/src/C++/double-conversion/utils.h @@ -69,7 +69,8 @@ defined(__sparc__) || defined(__sparc) || defined(__s390__) || \ defined(__SH4__) || defined(__alpha__) || \ defined(_MIPS_ARCH_MIPS32R2) || \ - defined(__AARCH64EL__) || defined(__aarch64__) + defined(__AARCH64EL__) || defined(__aarch64__) || \ + defined(__riscv) #define DOUBLE_CONVERSION_CORRECT_DOUBLE_OPERATIONS 1 #elif defined(__mc68000__) #undef DOUBLE_CONVERSION_CORRECT_DOUBLE_OPERATIONS