Issue |
143610
|
Summary |
llvm Linux premerge builders are failing `ninja check-compiler-rt` on
|
Labels |
new issue
|
Assignees |
|
Reporter |
gburgessiv
|
Repro (not minimized, from `${llvm_root}/build/release`):
```
$ cmake -S ../../llvm -B . -D'LLVM_ENABLE_PROJECTS=clang;clang-tools-extra;lld;llvm' -D'LLVM_ENABLE_RUNTIMES=compiler-rt;libcxx;libcxxabi;libunwind' -G Ninja -DCMAKE_BUILD_TYPE=Release -DLLVM_ENABLE_ASSERTIONS=ON -DLLVM_BUILD_EXAMPLES=ON -DCOMPILER_RT_BUILD_LIBFUZZER=OFF -DLLVM_ENABLE_LLD=ON -DCMAKE_CXX_FLAGS=-gmlt -DLLVM_CCACHE_BUILD=ON -DLIBCXX_CXX_ABI=libcxxabi -DLLDB_ENFORCE_STRICT_TEST_REQUIREMENTS=ON -DCMAKE_INSTALL_PREFIX=../install -DCMAKE_C_COMPILER=clang -DCMAKE_CXX_COMPILER=clang++
$ ninja check-compiler-rt
```
This fails many tests with `/usr/bin/ld: cannot find /usr/local/google/home/gbiv/misc/btrfs/llvm/tysan-stuff/build/release/lib/clang/21/lib/x86_64-unknown-linux-gnu/libclang_rt.tysan.a: No such file or directory`. Indeed, this file doesn't exist. Partial listing of tests:
```
TypeSanitizer-x86_64 :: anon-ns.cpp
TypeSanitizer-x86_64 :: anon-same-struct.c
TypeSanitizer-x86_64 :: anon-struct.c
TypeSanitizer-x86_64 :: basic.c
TypeSanitizer-x86_64 :: char-memcpy.c
TypeSanitizer-x86_64 :: constexpr-subobject.cpp
TypeSanitizer-x86_64 :: derrived_default_constructor.cpp
TypeSanitizer-x86_64 :: global.c
TypeSanitizer-x86_64 :: ignorelist.c
TypeSanitizer-x86_64 :: inherited_member.cpp
TypeSanitizer-x86_64 :: int-long.c
TypeSanitizer-x86_64 :: preprocessor.c
TypeSanitizer-x86_64 :: print_stacktrace.c
TypeSanitizer-x86_64 :: ptr-float.c
TypeSanitizer-x86_64 :: struct-offset-different-base.cpp
TypeSanitizer-x86_64 :: struct-offset-multiple-compilation-units.cpp
TypeSanitizer-x86_64 :: struct-offset.c
TypeSanitizer-x86_64 :: struct.c
TypeSanitizer-x86_64 :: union-wr-wr.c
```
Example failing CI builder: https://github.com/llvm/llvm-project/actions/runs/15568239026/job/43837528051
I've tested up through 100a1d0c4caad0d0f2ec26b07d3cc73f59b9a9a8 (~a week ago) and these fail for this reason. Since the failing _command_ was introduced ~13h ago in https://github.com/llvm/llvm-project/pull/142696, I'll propose a revert of that.
>From glancing at the CMakeFiles, I suspect there's a subtle misconfiguration there. Specifically, in the `compiler-rt/test/tysan/CMakeLists.txt` file, I see:
```
set(TYSAN_TEST_DEPS ${SANITIZER_COMMON_LIT_TEST_DEPS})
if(NOT COMPILER_RT_STANDALONE_BUILD)
list(APPEND TYSAN_TEST_DEPS tysan)
endif()
```
I suspect that on these builders, `COMPILER_RT_STANDALONE_BUILD` is true, since the (necessary) `tysan` dep isn't being added
_______________________________________________
llvm-bugs mailing list
llvm-bugs@lists.llvm.org
https://lists.llvm.org/cgi-bin/mailman/listinfo/llvm-bugs