Bug#997008: llvm-toolchain-12: FTBFS on armel: undefined reference to `__atomic_load_8' in scudo

Simon McVittie smcv at debian.org
Fri Oct 22 11:01:42 BST 2021


Source: llvm-toolchain-12
Version: 1:12.0.1-13
Severity: serious
Tags: ftbfs
Justification: fails to build from source (but built successfully in the past)

https://buildd.debian.org/status/fetch.php?pkg=llvm-toolchain-12&arch=armel&ver=1%3A12.0.1-13&stamp=1634838707&raw=0
> [326/735] : && /<<PKGBUILDDIR>>/build-llvm/./bin/clang++ --target=arm-linux-gnueabi -fPIC -g -O2 -fdebug-prefix-map=/<<PKGBUILDDIR>>=. -fstack-protector-strong -Wformat -Werror=format-security -fPIC -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 -Wno-comment -Wstring-conversion -fdiagnostics-color -ffunction-sections -fdata-sections -Wall -std=c++14 -Wno-unused-parameter -O3 -DNDEBUG  -Wl,-z,relro -Wl,-z,defs -Wl,-z,nodelete   -nodefaultlibs -Wl,-z,text -nostdlib++ -Wl,--gc-sections -Wl,-rpath-link,/<<PKGBUILDDIR>>/build-llvm/./lib -shared -Wl,-soname,libclang_rt.scudo-arm.so -o /<<PKGBUILDDIR>>/build-llvm/lib/clang/12.0.1/lib/linux/libclang_rt.scudo-arm.so compiler-rt/lib/sanitizer_common/CMakeFiles/RTSanitizerCommonNoTermination.arm.dir/sanitizer_allocator.cpp.o compiler-rt/lib/sanitizer_common/CMakeFiles/RTSanitizerCommonNoTermination.arm.dir/sanitizer_common.cpp.o compiler-rt/lib/sanitizer_common/CMakeFiles/RTSanitizerCommonNoTermination.arm.dir/sanitizer_deadlock_detector1.cpp.o compiler-rt/lib/sanitizer_common/CMakeFiles/RTSanitizerCommonNoTermination.arm.dir/sanitizer_deadlock_detector2.cpp.o compiler-rt/lib/sanitizer_common/CMakeFiles/RTSanitizerCommonNoTermination.arm.dir/sanitizer_errno.cpp.o compiler-rt/lib/sanitizer_common/CMakeFiles/RTSanitizerCommonNoTermination.arm.dir/sanitizer_file.cpp.o compiler-rt/lib/sanitizer_common/CMakeFiles/RTSanitizerCommonNoTermination.arm.dir/sanitizer_flags.cpp.o compiler-rt/lib/sanitizer_common/CMakeFiles/RTSanitizerCommonNoTermination.arm.dir/sanitizer_flag_parser.cpp.o compiler-rt/lib/sanitizer_common/CMakeFiles/RTSanitizerCommonNoTermination.arm.dir/sanitizer_fuchsia.cpp.o compiler-rt/lib/sanitizer_common/CMakeFiles/RTSanitizerCommonNoTermination.arm.dir/sanitizer_libc.cpp.o compiler-rt/lib/sanitizer_common/CMakeFiles/RTSanitizerCommonNoTermination.arm.dir/sanitizer_libignore.cpp.o compiler-rt/lib/sanitizer_common/CMakeFiles/RTSanitizerCommonNoTermination.arm.dir/sanitizer_linux.cpp.o compiler-rt/lib/sanitizer_common/CMakeFiles/RTSanitizerCommonNoTermination.arm.dir/sanitizer_linux_s390.cpp.o compiler-rt/lib/sanitizer_common/CMakeFiles/RTSanitizerCommonNoTermination.arm.dir/sanitizer_mac.cpp.o compiler-rt/lib/sanitizer_common/CMakeFiles/RTSanitizerCommonNoTermination.arm.dir/sanitizer_netbsd.cpp.o compiler-rt/lib/sanitizer_common/CMakeFiles/RTSanitizerCommonNoTermination.arm.dir/sanitizer_persistent_allocator.cpp.o compiler-rt/lib/sanitizer_common/CMakeFiles/RTSanitizerCommonNoTermination.arm.dir/sanitizer_platform_limits_freebsd.cpp.o compiler-rt/lib/sanitizer_common/CMakeFiles/RTSanitizerCommonNoTermination.arm.dir/sanitizer_platform_limits_linux.cpp.o compiler-rt/lib/sanitizer_common/CMakeFiles/RTSanitizerCommonNoTermination.arm.dir/sanitizer_platform_limits_netbsd.cpp.o compiler-rt/lib/sanitizer_common/CMakeFiles/RTSanitizerCommonNoTermination.arm.dir/sanitizer_platform_limits_posix.cpp.o compiler-rt/lib/sanitizer_common/CMakeFiles/RTSanitizerCommonNoTermination.arm.dir/sanitizer_platform_limits_solaris.cpp.o compiler-rt/lib/sanitizer_common/CMakeFiles/RTSanitizerCommonNoTermination.arm.dir/sanitizer_posix.cpp.o compiler-rt/lib/sanitizer_common/CMakeFiles/RTSanitizerCommonNoTermination.arm.dir/sanitizer_printf.cpp.o compiler-rt/lib/sanitizer_common/CMakeFiles/RTSanitizerCommonNoTermination.arm.dir/sanitizer_procmaps_common.cpp.o compiler-rt/lib/sanitizer_common/CMakeFiles/RTSanitizerCommonNoTermination.arm.dir/sanitizer_procmaps_bsd.cpp.o compiler-rt/lib/sanitizer_common/CMakeFiles/RTSanitizerCommonNoTermination.arm.dir/sanitizer_procmaps_fuchsia.cpp.o compiler-rt/lib/sanitizer_common/CMakeFiles/RTSanitizerCommonNoTermination.arm.dir/sanitizer_procmaps_linux.cpp.o compiler-rt/lib/sanitizer_common/CMakeFiles/RTSanitizerCommonNoTermination.arm.dir/sanitizer_procmaps_mac.cpp.o compiler-rt/lib/sanitizer_common/CMakeFiles/RTSanitizerCommonNoTermination.arm.dir/sanitizer_procmaps_solaris.cpp.o compiler-rt/lib/sanitizer_common/CMakeFiles/RTSanitizerCommonNoTermination.arm.dir/sanitizer_rtems.cpp.o compiler-rt/lib/sanitizer_common/CMakeFiles/RTSanitizerCommonNoTermination.arm.dir/sanitizer_solaris.cpp.o compiler-rt/lib/sanitizer_common/CMakeFiles/RTSanitizerCommonNoTermination.arm.dir/sanitizer_stoptheworld_fuchsia.cpp.o compiler-rt/lib/sanitizer_common/CMakeFiles/RTSanitizerCommonNoTermination.arm.dir/sanitizer_stoptheworld_mac.cpp.o compiler-rt/lib/sanitizer_common/CMakeFiles/RTSanitizerCommonNoTermination.arm.dir/sanitizer_suppressions.cpp.o compiler-rt/lib/sanitizer_common/CMakeFiles/RTSanitizerCommonNoTermination.arm.dir/sanitizer_tls_get_addr.cpp.o compiler-rt/lib/sanitizer_common/CMakeFiles/RTSanitizerCommonNoTermination.arm.dir/sanitizer_thread_registry.cpp.o compiler-rt/lib/sanitizer_common/CMakeFiles/RTSanitizerCommonNoTermination.arm.dir/sanitizer_type_traits.cpp.o compiler-rt/lib/sanitizer_common/CMakeFiles/RTSanitizerCommonNoTermination.arm.dir/sanitizer_win.cpp.o compiler-rt/lib/sanitizer_common/CMakeFiles/RTSanitizerCommonLibc.arm.dir/sanitizer_common_libcdep.cpp.o compiler-rt/lib/sanitizer_common/CMakeFiles/RTSanitizerCommonLibc.arm.dir/sanitizer_allocator_checks.cpp.o compiler-rt/lib/sanitizer_common/CMakeFiles/RTSanitizerCommonLibc.arm.dir/sanitizer_linux_libcdep.cpp.o compiler-rt/lib/sanitizer_common/CMakeFiles/RTSanitizerCommonLibc.arm.dir/sanitizer_mac_libcdep.cpp.o compiler-rt/lib/sanitizer_common/CMakeFiles/RTSanitizerCommonLibc.arm.dir/sanitizer_posix_libcdep.cpp.o compiler-rt/lib/sanitizer_common/CMakeFiles/RTSanitizerCommonLibc.arm.dir/sanitizer_stoptheworld_linux_libcdep.cpp.o compiler-rt/lib/sanitizer_common/CMakeFiles/RTSanitizerCommonLibc.arm.dir/sanitizer_stoptheworld_netbsd_libcdep.cpp.o compiler-rt/lib/interception/CMakeFiles/RTInterception.arm.dir/interception_linux.cpp.o compiler-rt/lib/interception/CMakeFiles/RTInterception.arm.dir/interception_mac.cpp.o compiler-rt/lib/interception/CMakeFiles/RTInterception.arm.dir/interception_win.cpp.o compiler-rt/lib/interception/CMakeFiles/RTInterception.arm.dir/interception_type_test.cpp.o compiler-rt/lib/sanitizer_common/CMakeFiles/RTSanitizerCommonCoverage.arm.dir/sancov_flags.cpp.o compiler-rt/lib/sanitizer_common/CMakeFiles/RTSanitizerCommonCoverage.arm.dir/sanitizer_coverage_fuchsia.cpp.o compiler-rt/lib/sanitizer_common/CMakeFiles/RTSanitizerCommonCoverage.arm.dir/sanitizer_coverage_libcdep_new.cpp.o compiler-rt/lib/sanitizer_common/CMakeFiles/RTSanitizerCommonCoverage.arm.dir/sanitizer_coverage_win_sections.cpp.o compiler-rt/lib/sanitizer_common/CMakeFiles/RTSanitizerCommonSymbolizer.arm.dir/sanitizer_allocator_report.cpp.o compiler-rt/lib/sanitizer_common/CMakeFiles/RTSanitizerCommonSymbolizer.arm.dir/sanitizer_stackdepot.cpp.o compiler-rt/lib/sanitizer_common/CMakeFiles/RTSanitizerCommonSymbolizer.arm.dir/sanitizer_stacktrace.cpp.o compiler-rt/lib/sanitizer_common/CMakeFiles/RTSanitizerCommonSymbolizer.arm.dir/sanitizer_stacktrace_libcdep.cpp.o compiler-rt/lib/sanitizer_common/CMakeFiles/RTSanitizerCommonSymbolizer.arm.dir/sanitizer_stacktrace_printer.cpp.o compiler-rt/lib/sanitizer_common/CMakeFiles/RTSanitizerCommonSymbolizer.arm.dir/sanitizer_stacktrace_sparc.cpp.o compiler-rt/lib/sanitizer_common/CMakeFiles/RTSanitizerCommonSymbolizer.arm.dir/sanitizer_symbolizer.cpp.o compiler-rt/lib/sanitizer_common/CMakeFiles/RTSanitizerCommonSymbolizer.arm.dir/sanitizer_symbolizer_libbacktrace.cpp.o compiler-rt/lib/sanitizer_common/CMakeFiles/RTSanitizerCommonSymbolizer.arm.dir/sanitizer_symbolizer_libcdep.cpp.o compiler-rt/lib/sanitizer_common/CMakeFiles/RTSanitizerCommonSymbolizer.arm.dir/sanitizer_symbolizer_mac.cpp.o compiler-rt/lib/sanitizer_common/CMakeFiles/RTSanitizerCommonSymbolizer.arm.dir/sanitizer_symbolizer_markup.cpp.o compiler-rt/lib/sanitizer_common/CMakeFiles/RTSanitizerCommonSymbolizer.arm.dir/sanitizer_symbolizer_posix_libcdep.cpp.o compiler-rt/lib/sanitizer_common/CMakeFiles/RTSanitizerCommonSymbolizer.arm.dir/sanitizer_symbolizer_report.cpp.o compiler-rt/lib/sanitizer_common/CMakeFiles/RTSanitizerCommonSymbolizer.arm.dir/sanitizer_symbolizer_win.cpp.o compiler-rt/lib/sanitizer_common/CMakeFiles/RTSanitizerCommonSymbolizer.arm.dir/sanitizer_unwind_linux_libcdep.cpp.o compiler-rt/lib/sanitizer_common/CMakeFiles/RTSanitizerCommonSymbolizer.arm.dir/sanitizer_unwind_win.cpp.o compiler-rt/lib/ubsan/CMakeFiles/RTUbsan.arm.dir/ubsan_diag.cpp.o compiler-rt/lib/ubsan/CMakeFiles/RTUbsan.arm.dir/ubsan_init.cpp.o compiler-rt/lib/ubsan/CMakeFiles/RTUbsan.arm.dir/ubsan_flags.cpp.o compiler-rt/lib/ubsan/CMakeFiles/RTUbsan.arm.dir/ubsan_handlers.cpp.o compiler-rt/lib/ubsan/CMakeFiles/RTUbsan.arm.dir/ubsan_monitor.cpp.o compiler-rt/lib/ubsan/CMakeFiles/RTUbsan.arm.dir/ubsan_value.cpp.o compiler-rt/lib/scudo/CMakeFiles/clang_rt.scudo-dynamic-arm.dir/scudo_allocator.cpp.o compiler-rt/lib/scudo/CMakeFiles/clang_rt.scudo-dynamic-arm.dir/scudo_crc32.cpp.o compiler-rt/lib/scudo/CMakeFiles/clang_rt.scudo-dynamic-arm.dir/scudo_errors.cpp.o compiler-rt/lib/scudo/CMakeFiles/clang_rt.scudo-dynamic-arm.dir/scudo_flags.cpp.o compiler-rt/lib/scudo/CMakeFiles/clang_rt.scudo-dynamic-arm.dir/scudo_malloc.cpp.o compiler-rt/lib/scudo/CMakeFiles/clang_rt.scudo-dynamic-arm.dir/scudo_termination.cpp.o compiler-rt/lib/scudo/CMakeFiles/clang_rt.scudo-dynamic-arm.dir/scudo_tsd_exclusive.cpp.o compiler-rt/lib/scudo/CMakeFiles/clang_rt.scudo-dynamic-arm.dir/scudo_tsd_shared.cpp.o compiler-rt/lib/scudo/CMakeFiles/clang_rt.scudo-dynamic-arm.dir/scudo_utils.cpp.o compiler-rt/lib/scudo/CMakeFiles/clang_rt.scudo-dynamic-arm.dir/scudo_new_delete.cpp.o  -Wl,-rpath,"\$ORIGIN/../lib:/<<PKGBUILDDIR>>/build-llvm/./lib"  -lgcc_s  -lc  -ldl  -lrt  -lpthread  -lstdc++ && :
>FAILED: /<<PKGBUILDDIR>>/build-llvm/lib/clang/12.0.1/lib/linux/libclang_rt.scudo-arm.so 
>: && /<<PKGBUILDDIR>>/build-llvm/./bin/clang++ --target=arm-linux-gnueabi -fPIC -g -O2 -fdebug-prefix-map=/<<PKGBUILDDIR>>=. -fstack-protector-strong -Wformat -Werror=format-security -fPIC -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 -Wno-comment -Wstring-conversion -fdiagnostics-color -ffunction-sections -fdata-sections -Wall -std=c++14 -Wno-unused-parameter -O3 -DNDEBUG  -Wl,-z,relro -Wl,-z,defs -Wl,-z,nodelete   -nodefaultlibs -Wl,-z,text -nostdlib++ -Wl,--gc-sections -Wl,-rpath-link,/<<PKGBUILDDIR>>/build-llvm/./lib -shared -Wl,-soname,libclang_rt.scudo-arm.so -o /<<PKGBUILDDIR>>/build-llvm/lib/clang/12.0.1/lib/linux/libclang_rt.scudo-arm.so compiler-rt/lib/sanitizer_common/CMakeFiles/RTSanitizerCommonNoTermination.arm.dir/sanitizer_allocator.cpp.o compiler-rt/lib/sanitizer_common/CMakeFiles/RTSanitizerCommonNoTermination.arm.dir/sanitizer_common.cpp.o compiler-rt/lib/sanitizer_common/CMakeFiles/RTSanitizerCommonNoTermination.arm.dir/sanitizer_deadlock_detector1.cpp.o compiler-rt/lib/sanitizer_common/CMakeFiles/RTSanitizerCommonNoTermination.arm.dir/sanitizer_deadlock_detector2.cpp.o compiler-rt/lib/sanitizer_common/CMakeFiles/RTSanitizerCommonNoTermination.arm.dir/sanitizer_errno.cpp.o compiler-rt/lib/sanitizer_common/CMakeFiles/RTSanitizerCommonNoTermination.arm.dir/sanitizer_file.cpp.o compiler-rt/lib/sanitizer_common/CMakeFiles/RTSanitizerCommonNoTermination.arm.dir/sanitizer_flags.cpp.o compiler-rt/lib/sanitizer_common/CMakeFiles/RTSanitizerCommonNoTermination.arm.dir/sanitizer_flag_parser.cpp.o compiler-rt/lib/sanitizer_common/CMakeFiles/RTSanitizerCommonNoTermination.arm.dir/sanitizer_fuchsia.cpp.o compiler-rt/lib/sanitizer_common/CMakeFiles/RTSanitizerCommonNoTermination.arm.dir/sanitizer_libc.cpp.o compiler-rt/lib/sanitizer_common/CMakeFiles/RTSanitizerCommonNoTermination.arm.dir/sanitizer_libignore.cpp.o compiler-rt/lib/sanitizer_common/CMakeFiles/RTSanitizerCommonNoTermination.arm.dir/sanitizer_linux.cpp.o compiler-rt/lib/sanitizer_common/CMakeFiles/RTSanitizerCommonNoTermination.arm.dir/sanitizer_linux_s390.cpp.o compiler-rt/lib/sanitizer_common/CMakeFiles/RTSanitizerCommonNoTermination.arm.dir/sanitizer_mac.cpp.o compiler-rt/lib/sanitizer_common/CMakeFiles/RTSanitizerCommonNoTermination.arm.dir/sanitizer_netbsd.cpp.o compiler-rt/lib/sanitizer_common/CMakeFiles/RTSanitizerCommonNoTermination.arm.dir/sanitizer_persistent_allocator.cpp.o compiler-rt/lib/sanitizer_common/CMakeFiles/RTSanitizerCommonNoTermination.arm.dir/sanitizer_platform_limits_freebsd.cpp.o compiler-rt/lib/sanitizer_common/CMakeFiles/RTSanitizerCommonNoTermination.arm.dir/sanitizer_platform_limits_linux.cpp.o compiler-rt/lib/sanitizer_common/CMakeFiles/RTSanitizerCommonNoTermination.arm.dir/sanitizer_platform_limits_netbsd.cpp.o compiler-rt/lib/sanitizer_common/CMakeFiles/RTSanitizerCommonNoTermination.arm.dir/sanitizer_platform_limits_posix.cpp.o compiler-rt/lib/sanitizer_common/CMakeFiles/RTSanitizerCommonNoTermination.arm.dir/sanitizer_platform_limits_solaris.cpp.o compiler-rt/lib/sanitizer_common/CMakeFiles/RTSanitizerCommonNoTermination.arm.dir/sanitizer_posix.cpp.o compiler-rt/lib/sanitizer_common/CMakeFiles/RTSanitizerCommonNoTermination.arm.dir/sanitizer_printf.cpp.o compiler-rt/lib/sanitizer_common/CMakeFiles/RTSanitizerCommonNoTermination.arm.dir/sanitizer_procmaps_common.cpp.o compiler-rt/lib/sanitizer_common/CMakeFiles/RTSanitizerCommonNoTermination.arm.dir/sanitizer_procmaps_bsd.cpp.o compiler-rt/lib/sanitizer_common/CMakeFiles/RTSanitizerCommonNoTermination.arm.dir/sanitizer_procmaps_fuchsia.cpp.o compiler-rt/lib/sanitizer_common/CMakeFiles/RTSanitizerCommonNoTermination.arm.dir/sanitizer_procmaps_linux.cpp.o compiler-rt/lib/sanitizer_common/CMakeFiles/RTSanitizerCommonNoTermination.arm.dir/sanitizer_procmaps_mac.cpp.o compiler-rt/lib/sanitizer_common/CMakeFiles/RTSanitizerCommonNoTermination.arm.dir/sanitizer_procmaps_solaris.cpp.o compiler-rt/lib/sanitizer_common/CMakeFiles/RTSanitizerCommonNoTermination.arm.dir/sanitizer_rtems.cpp.o compiler-rt/lib/sanitizer_common/CMakeFiles/RTSanitizerCommonNoTermination.arm.dir/sanitizer_solaris.cpp.o compiler-rt/lib/sanitizer_common/CMakeFiles/RTSanitizerCommonNoTermination.arm.dir/sanitizer_stoptheworld_fuchsia.cpp.o compiler-rt/lib/sanitizer_common/CMakeFiles/RTSanitizerCommonNoTermination.arm.dir/sanitizer_stoptheworld_mac.cpp.o compiler-rt/lib/sanitizer_common/CMakeFiles/RTSanitizerCommonNoTermination.arm.dir/sanitizer_suppressions.cpp.o compiler-rt/lib/sanitizer_common/CMakeFiles/RTSanitizerCommonNoTermination.arm.dir/sanitizer_tls_get_addr.cpp.o compiler-rt/lib/sanitizer_common/CMakeFiles/RTSanitizerCommonNoTermination.arm.dir/sanitizer_thread_registry.cpp.o compiler-rt/lib/sanitizer_common/CMakeFiles/RTSanitizerCommonNoTermination.arm.dir/sanitizer_type_traits.cpp.o compiler-rt/lib/sanitizer_common/CMakeFiles/RTSanitizerCommonNoTermination.arm.dir/sanitizer_win.cpp.o compiler-rt/lib/sanitizer_common/CMakeFiles/RTSanitizerCommonLibc.arm.dir/sanitizer_common_libcdep.cpp.o compiler-rt/lib/sanitizer_common/CMakeFiles/RTSanitizerCommonLibc.arm.dir/sanitizer_allocator_checks.cpp.o compiler-rt/lib/sanitizer_common/CMakeFiles/RTSanitizerCommonLibc.arm.dir/sanitizer_linux_libcdep.cpp.o compiler-rt/lib/sanitizer_common/CMakeFiles/RTSanitizerCommonLibc.arm.dir/sanitizer_mac_libcdep.cpp.o compiler-rt/lib/sanitizer_common/CMakeFiles/RTSanitizerCommonLibc.arm.dir/sanitizer_posix_libcdep.cpp.o compiler-rt/lib/sanitizer_common/CMakeFiles/RTSanitizerCommonLibc.arm.dir/sanitizer_stoptheworld_linux_libcdep.cpp.o compiler-rt/lib/sanitizer_common/CMakeFiles/RTSanitizerCommonLibc.arm.dir/sanitizer_stoptheworld_netbsd_libcdep.cpp.o compiler-rt/lib/interception/CMakeFiles/RTInterception.arm.dir/interception_linux.cpp.o compiler-rt/lib/interception/CMakeFiles/RTInterception.arm.dir/interception_mac.cpp.o compiler-rt/lib/interception/CMakeFiles/RTInterception.arm.dir/interception_win.cpp.o compiler-rt/lib/interception/CMakeFiles/RTInterception.arm.dir/interception_type_test.cpp.o compiler-rt/lib/sanitizer_common/CMakeFiles/RTSanitizerCommonCoverage.arm.dir/sancov_flags.cpp.o compiler-rt/lib/sanitizer_common/CMakeFiles/RTSanitizerCommonCoverage.arm.dir/sanitizer_coverage_fuchsia.cpp.o compiler-rt/lib/sanitizer_common/CMakeFiles/RTSanitizerCommonCoverage.arm.dir/sanitizer_coverage_libcdep_new.cpp.o compiler-rt/lib/sanitizer_common/CMakeFiles/RTSanitizerCommonCoverage.arm.dir/sanitizer_coverage_win_sections.cpp.o compiler-rt/lib/sanitizer_common/CMakeFiles/RTSanitizerCommonSymbolizer.arm.dir/sanitizer_allocator_report.cpp.o compiler-rt/lib/sanitizer_common/CMakeFiles/RTSanitizerCommonSymbolizer.arm.dir/sanitizer_stackdepot.cpp.o compiler-rt/lib/sanitizer_common/CMakeFiles/RTSanitizerCommonSymbolizer.arm.dir/sanitizer_stacktrace.cpp.o compiler-rt/lib/sanitizer_common/CMakeFiles/RTSanitizerCommonSymbolizer.arm.dir/sanitizer_stacktrace_libcdep.cpp.o compiler-rt/lib/sanitizer_common/CMakeFiles/RTSanitizerCommonSymbolizer.arm.dir/sanitizer_stacktrace_printer.cpp.o compiler-rt/lib/sanitizer_common/CMakeFiles/RTSanitizerCommonSymbolizer.arm.dir/sanitizer_stacktrace_sparc.cpp.o compiler-rt/lib/sanitizer_common/CMakeFiles/RTSanitizerCommonSymbolizer.arm.dir/sanitizer_symbolizer.cpp.o compiler-rt/lib/sanitizer_common/CMakeFiles/RTSanitizerCommonSymbolizer.arm.dir/sanitizer_symbolizer_libbacktrace.cpp.o compiler-rt/lib/sanitizer_common/CMakeFiles/RTSanitizerCommonSymbolizer.arm.dir/sanitizer_symbolizer_libcdep.cpp.o compiler-rt/lib/sanitizer_common/CMakeFiles/RTSanitizerCommonSymbolizer.arm.dir/sanitizer_symbolizer_mac.cpp.o compiler-rt/lib/sanitizer_common/CMakeFiles/RTSanitizerCommonSymbolizer.arm.dir/sanitizer_symbolizer_markup.cpp.o compiler-rt/lib/sanitizer_common/CMakeFiles/RTSanitizerCommonSymbolizer.arm.dir/sanitizer_symbolizer_posix_libcdep.cpp.o compiler-rt/lib/sanitizer_common/CMakeFiles/RTSanitizerCommonSymbolizer.arm.dir/sanitizer_symbolizer_report.cpp.o compiler-rt/lib/sanitizer_common/CMakeFiles/RTSanitizerCommonSymbolizer.arm.dir/sanitizer_symbolizer_win.cpp.o compiler-rt/lib/sanitizer_common/CMakeFiles/RTSanitizerCommonSymbolizer.arm.dir/sanitizer_unwind_linux_libcdep.cpp.o compiler-rt/lib/sanitizer_common/CMakeFiles/RTSanitizerCommonSymbolizer.arm.dir/sanitizer_unwind_win.cpp.o compiler-rt/lib/ubsan/CMakeFiles/RTUbsan.arm.dir/ubsan_diag.cpp.o compiler-rt/lib/ubsan/CMakeFiles/RTUbsan.arm.dir/ubsan_init.cpp.o compiler-rt/lib/ubsan/CMakeFiles/RTUbsan.arm.dir/ubsan_flags.cpp.o compiler-rt/lib/ubsan/CMakeFiles/RTUbsan.arm.dir/ubsan_handlers.cpp.o compiler-rt/lib/ubsan/CMakeFiles/RTUbsan.arm.dir/ubsan_monitor.cpp.o compiler-rt/lib/ubsan/CMakeFiles/RTUbsan.arm.dir/ubsan_value.cpp.o compiler-rt/lib/scudo/CMakeFiles/clang_rt.scudo-dynamic-arm.dir/scudo_allocator.cpp.o compiler-rt/lib/scudo/CMakeFiles/clang_rt.scudo-dynamic-arm.dir/scudo_crc32.cpp.o compiler-rt/lib/scudo/CMakeFiles/clang_rt.scudo-dynamic-arm.dir/scudo_errors.cpp.o compiler-rt/lib/scudo/CMakeFiles/clang_rt.scudo-dynamic-arm.dir/scudo_flags.cpp.o compiler-rt/lib/scudo/CMakeFiles/clang_rt.scudo-dynamic-arm.dir/scudo_malloc.cpp.o compiler-rt/lib/scudo/CMakeFiles/clang_rt.scudo-dynamic-arm.dir/scudo_termination.cpp.o compiler-rt/lib/scudo/CMakeFiles/clang_rt.scudo-dynamic-arm.dir/scudo_tsd_exclusive.cpp.o compiler-rt/lib/scudo/CMakeFiles/clang_rt.scudo-dynamic-arm.dir/scudo_tsd_shared.cpp.o compiler-rt/lib/scudo/CMakeFiles/clang_rt.scudo-dynamic-arm.dir/scudo_utils.cpp.o compiler-rt/lib/scudo/CMakeFiles/clang_rt.scudo-dynamic-arm.dir/scudo_new_delete.cpp.o  -Wl,-rpath,"\$ORIGIN/../lib:/<<PKGBUILDDIR>>/build-llvm/./lib"  -lgcc_s  -lc  -ldl  -lrt  -lpthread  -lstdc++ && :
>/usr/bin/arm-linux-gnueabi-ld: compiler-rt/lib/scudo/CMakeFiles/clang_rt.scudo-dynamic-arm.dir/scudo_allocator.cpp.o: in function `__scudo::Allocator::isRssLimitExceeded()':
>./build-llvm/runtimes/runtimes-bins/./compiler-rt/lib/scudo/../sanitizer_common/sanitizer_atomic_clang_other.h:53: undefined reference to `__atomic_load_8'
>/usr/bin/arm-linux-gnueabi-ld: compiler-rt/lib/scudo/CMakeFiles/clang_rt.scudo-dynamic-arm.dir/scudo_allocator.cpp.o: in function `__scudo::Allocator::init()':
>./build-llvm/runtimes/runtimes-bins/./compiler-rt/lib/scudo/../sanitizer_common/sanitizer_atomic_clang_other.h:79: undefined reference to `__atomic_store_8'

This might be similar to #995827 in llvm-toolchain-13, which was fixed by
debian/patches/unbreak-atomic-mips.diff (but in a mips-specific way).

It might be more scalable to use

if(HAVE_CXX_ATOMICS_WITH_LIB OR HAVE_CXX_ATOMICS64_WITH_LIB)
  target_link_libraries(... PRIVATE atomic)
endif()

like upstream's llvm/tools/dsymutil/CMakeLists.txt does?

The good news is that #996947 is *probably* fixed in this version (although
it's hard to say until the package compiles fully successfully for an
architecture).

    smcv



More information about the Pkg-llvm-team mailing list