Bug#1068185: llvm-toolchain-16: FTBFS on armel: cxa_guard.cpp:(.text.unlikely.__cxa_guard_acquire+0xc): undefined reference to `__atomic_load_1'

2024-04-24 Thread Peter Green

Looking at the changelog, I see


Build with --as-needed.


I suspect this is responsible for the build failure on armel



Bug#1068185: llvm-toolchain-16: FTBFS on armel: cxa_guard.cpp:(.text.unlikely.__cxa_guard_acquire+0xc): undefined reference to `__atomic_load_1'

2024-04-01 Thread Sebastian Ramacher
Source: llvm-toolchain-16
Version: 1:16.0.6-24
Severity: serious
Tags: ftbfs
Justification: fails to build from source (but built successfully in the past)
X-Debbugs-Cc: sramac...@debian.org

https://buildd.debian.org/status/fetch.php?pkg=llvm-toolchain-16=armel=1%3A16.0.6-24=1711530825=0

FAILED: /<>/build-llvm/lib/libc++abi.so.1.0 
: && /<>/build-llvm/./bin/clang++ --target=arm-linux-gnueabi -fPIC 
-fstack-protector-strong -fstack-clash-protection -Wformat 
-Werror=format-security -Wno-unused-command-line-argument -march=armv5t 
-D_LARGEFILE_SOURCE -D_FILE_OFFSET_BITS=64 -D_TIME_BITS=64 -Wdate-time 
-D_FORTIFY_SOURCE=2 -fPIC -fno-semantic-interposition 
-fvisibility-inlines-hidden -Werror=date-time 
-Werror=unguarded-availability-new -Wall -Wextra -Wno-unused-parameter 
-Wwrite-strings -Wcast-qual -Wmissing-field-initializers -Wimplicit-fallthrough 
-Wcovered-switch-default -Wno-noexcept-type -Wnon-virtual-dtor 
-Wdelete-non-virtual-dtor -Wsuggest-override -Wstring-conversion 
-Wmisleading-indentation -Wctad-maybe-unsupported -fdiagnostics-color 
-ffunction-sections -fdata-sections 
-fdebug-prefix-map=/<>/build-llvm/runtimes/runtimes-bins=build-llvm/runtimes/runtimes-bins
 -fdebug-prefix-map=/<>/= -no-canonical-prefixes 
-ffile-prefix-map=/<>/build-llvm/runtimes/runtimes-bins=build-llvm/runtimes/runtimes-bins
 -ffile-prefix-map=/<>/= -no-canonical-prefixes  -O3 -DNDEBUG  
-Wl,-z,relro -Wl,--build-id,--as-needed -latomic -Wl,-z,defs -Wl,-z,nodelete  
-nostdlib++ -shared -Wl,-soname,libc++abi.so.1 -o 
/<>/build-llvm/lib/libc++abi.so.1.0 
libcxxabi/src/CMakeFiles/cxxabi_shared_objects.dir/cxa_aux_runtime.cpp.o 
libcxxabi/src/CMakeFiles/cxxabi_shared_objects.dir/cxa_default_handlers.cpp.o 
libcxxabi/src/CMakeFiles/cxxabi_shared_objects.dir/cxa_demangle.cpp.o 
libcxxabi/src/CMakeFiles/cxxabi_shared_objects.dir/cxa_exception_storage.cpp.o 
libcxxabi/src/CMakeFiles/cxxabi_shared_objects.dir/cxa_guard.cpp.o 
libcxxabi/src/CMakeFiles/cxxabi_shared_objects.dir/cxa_handlers.cpp.o 
libcxxabi/src/CMakeFiles/cxxabi_shared_objects.dir/cxa_vector.cpp.o 
libcxxabi/src/CMakeFiles/cxxabi_shared_objects.dir/cxa_virtual.cpp.o 
libcxxabi/src/CMakeFiles/cxxabi_shared_objects.dir/stdlib_exception.cpp.o 
libcxxabi/src/CMakeFiles/cxxabi_shared_objects.dir/stdlib_stdexcept.cpp.o 
libcxxabi/src/CMakeFiles/cxxabi_shared_objects.dir/stdlib_typeinfo.cpp.o 
libcxxabi/src/CMakeFiles/cxxabi_shared_objects.dir/abort_message.cpp.o 
libcxxabi/src/CMakeFiles/cxxabi_shared_objects.dir/fallback_malloc.cpp.o 
libcxxabi/src/CMakeFiles/cxxabi_shared_objects.dir/private_typeinfo.cpp.o 
libcxxabi/src/CMakeFiles/cxxabi_shared_objects.dir/stdlib_new_delete.cpp.o 
libcxxabi/src/CMakeFiles/cxxabi_shared_objects.dir/cxa_exception.cpp.o 
libcxxabi/src/CMakeFiles/cxxabi_shared_objects.dir/cxa_personality.cpp.o 
libcxxabi/src/CMakeFiles/cxxabi_shared_objects.dir/cxa_thread_atexit.cpp.o  
-lpthread  -lc  -lgcc  -lgcc_s && :
/usr/bin/arm-linux-gnueabi-ld: 
libcxxabi/src/CMakeFiles/cxxabi_shared_objects.dir/cxa_guard.cpp.o: in function 
`__cxa_guard_acquire':
cxa_guard.cpp:(.text.unlikely.__cxa_guard_acquire+0xc): undefined reference to 
`__atomic_load_1'
/usr/bin/arm-linux-gnueabi-ld: 
libcxxabi/src/CMakeFiles/cxxabi_shared_objects.dir/cxa_guard.cpp.o: in function 
`__cxa_guard_release':
cxa_guard.cpp:(.text.unlikely.__cxa_guard_release+0x14): undefined reference to 
`__atomic_store_1'
/usr/bin/arm-linux-gnueabi-ld: 
libcxxabi/src/CMakeFiles/cxxabi_shared_objects.dir/cxa_default_handlers.cpp.o: 
in function `std::set_unexpected(void (*)())':
cxa_default_handlers.cpp:(.text._ZSt14set_unexpectedPFvvE+0x1c): undefined 
reference to `__atomic_exchange_4'
/usr/bin/arm-linux-gnueabi-ld: 
libcxxabi/src/CMakeFiles/cxxabi_shared_objects.dir/cxa_default_handlers.cpp.o: 
in function `std::set_terminate(void (*)())':
cxa_default_handlers.cpp:(.text._ZSt13set_terminatePFvvE+0x1c): undefined 
reference to `__atomic_exchange_4'
/usr/bin/arm-linux-gnueabi-ld: 
libcxxabi/src/CMakeFiles/cxxabi_shared_objects.dir/cxa_default_handlers.cpp.o: 
in function `std::set_new_handler(void (*)())':
cxa_default_handlers.cpp:(.text._ZSt15set_new_handlerPFvvE+0x10): undefined 
reference to `__atomic_exchange_4'
/usr/bin/arm-linux-gnueabi-ld: 
libcxxabi/src/CMakeFiles/cxxabi_shared_objects.dir/cxa_handlers.cpp.o: in 
function `std::get_unexpected()':
cxa_handlers.cpp:(.text._ZSt14get_unexpectedv+0xc): undefined reference to 
`__atomic_load_4'
/usr/bin/arm-linux-gnueabi-ld: 
libcxxabi/src/CMakeFiles/cxxabi_shared_objects.dir/cxa_handlers.cpp.o: in 
function `std::get_terminate()':
cxa_handlers.cpp:(.text._ZSt13get_terminatev+0xc): undefined reference to 
`__atomic_load_4'
/usr/bin/arm-linux-gnueabi-ld: 
libcxxabi/src/CMakeFiles/cxxabi_shared_objects.dir/cxa_handlers.cpp.o: in 
function `std::get_new_handler()':
cxa_handlers.cpp:(.text._ZSt15get_new_handlerv+0xc): undefined reference to 
`__atomic_load_4'
/usr/bin/arm-linux-gnueabi-ld: