Closed robert-scheck closed 5 months ago
This build failure actually affects x86_32 aka i686, ARMv8 aka aarch64, POWER9/10 aka ppc64le, z-Series aka s390x.
So, ripping out btrfs/crypto/crc32c-pcl-intel-asm_64.S
from src/Makefile.am
let's the builds succeed, but raises the question whether there maybe should be also assembler code for the other hardware architectures, too.
I would update configure.ac and Makefile.am and add conditions for CPU targets like btrfs do
ifeq ($(TARGET_CPU),x86_64)
# FIXME: linkage is broken on musl for some reason
ifeq ($(HAVE_GLIBC),1)
CRYPTO_OBJECTS += crypto/crc32c-pcl-intel-asm_64.o
ASFLAGS += -fPIC
endif
endif
We only have the intel assembler code for x86_64 in the btrfs-progs project, so we will follow them.
The commit 1c72854 fixed this issue.
note: add --target i686 while host_cpu is x86_64. eg:
./configure --enable-btrfs --target i686 && make ...
Yes, commit 1c728540ca9373d2cdf2160ec6ac887ccd56d73a works - thank you.
Building partclone 0.3.28 on aarch64 fails like this: