On 01/13/2017 01:23 PM, Radovan Birdic wrote:
Package: duperemove
Version: 0.11~beta4-1
Severity: important
Tags: sid + patch
Justification: FTBFS
User: debian-m...@lists.debian.org
Usertags: mips-patch
Hello,
Package duperemove_0.11~beta4-1 FTBFS on mips and mipsel with following error:
file_scan.o: In function `csum_whole_file_init':
./file_scan.c:663: undefined reference to `__sync_add_and_fetch_8'
./file_scan.c:663: undefined reference to `__sync_add_and_fetch_8'
run_dedupe.o: In function `dedupe_worker':
./run_dedupe.c:676: undefined reference to `__sync_add_and_fetch_8'
run_dedupe.o: In function `extent_dedupe_worker':
./run_dedupe.c:479: undefined reference to `__sync_add_and_fetch_8'
run_dedupe.o: In function `block_dedupe_worker':
./run_dedupe.c:656: undefined reference to `__sync_add_and_fetch_8'
run_dedupe.o:./run_dedupe.c:801: more undefined references to
`__sync_add_and_fetch_8' follow
collect2: error: ld returned 1 exit status
Makefile:82: recipe for target 'duperemove' failed
make[1]: *** [duperemove] Error 1
Mips platform does not support 64-bit __sync_* operations,
instead we need to use corresponding __atomic_* operations.
Linking with latomic is also necessary for mips32 arches.
Patch use-atomic-instead-sync.patch replaces __sync_add_and_fetch with
corresponding __atomic_fetch_add functions.
Patch linking-with-latomic-as-needed.patch adds linking with latomic library as
needed.
With these patches, package builds successfully on mips, mipsel, mips64el and
i386.
Regards,
Radovan
Hi Radovan,
thanks for report and for patches too! I'll include them asap.
Peter