[PATCH] D145884: test-release.sh: build projects and runtimes lists with semicolons

Dimitry Andric via Phabricator via llvm-commits llvm-commits at lists.llvm.org
Wed Mar 29 14:57:58 PDT 2023


dim added inline comments.


================
Comment at: llvm/utils/release/test-release.sh:421
+    else
+      runtime_list="$runtimes"
     fi
----------------
tstellar wrote:
> Is the phase 2 compiler configured to use the runtimes from phase 2 when building phase 3?
Yes, since if you _don't_ build any runtimes in phase 2, you will receive the following error (at least on macOS) while building phase 3:

```
# Phase 3: Building llvmCore
...
# env CC=/Users/dim/llvm/16.0.0/rc1/Phase2/Release/llvmCore-16.0.0-rc1.install/usr/local/bin/clang CXX=/Users/dim/llvm/16.0.0/rc1/Phase2/Release/llvmCore-16.0.0
-rc1.install/usr/local/bin/clang++ cmake -G Ninja -DCMAKE_BUILD_TYPE=Release -DLLVM_ENABLE_ASSERTIONS=OFF -DCMAKE_POSITION_INDEPENDENT_CODE=ON -DLLVM_ENABLE_PROJECTS=llvm;clang;clang-tools-extra;openmp;lld;lldb;polly;mlir;flang -DLLVM_LIT_ARGS=-j 4 -DLLVM_ENABLE_RUNTIMES=compiler-rt;libcxx;libcxxabi;libunwind -DLLVM_USE_STATIC_ZSTD=ON /Users/dim/llvm/16.0.0/rc1/llvm-project/llvm
...
FAILED: lib/libomp.dylib
: && /Users/dim/llvm/16.0.0/rc1/Phase2/Release/llvmCore-16.0.0-rc1.install/usr/local/bin/clang [... elided long command line to link libomp.dylib ...]
Undefined symbols for architecture arm64:
  "___divdc3", referenced from:
      ___kmpc_atomic_cmplx8_div in kmp_atomic.cpp.o
      ___kmpc_atomic_cmplx4_div_cmplx8 in kmp_atomic.cpp.o
      ___kmpc_atomic_cmplx8_div_cpt in kmp_atomic.cpp.o
      ___kmpc_atomic_cmplx10_div_cpt in kmp_atomic.cpp.o
  "___divsc3", referenced from:
      ___kmpc_atomic_cmplx4_div in kmp_atomic.cpp.o
      ___kmpc_atomic_cmplx4_div_cpt in kmp_atomic.cpp.o
ld: symbol(s) not found for architecture arm64
```

As far as I'm aware, clang will search for its runtimes relative to its binary, so if they aren't there in ../lib/clang/16, you get an error like above for symbols that are linked in from the builtins library (in this case, complex division).



Repository:
  rG LLVM Github Monorepo

CHANGES SINCE LAST ACTION
  https://reviews.llvm.org/D145884/new/

https://reviews.llvm.org/D145884



More information about the llvm-commits mailing list