CI: only clone/fetch the parts of LLVM monorepo that we need

This ends up being *much* faster, noticeably speeding up these jobs.
This commit is contained in:
Roman Lebedev 2025-03-12 16:14:43 +03:00
parent 6cd107ffad
commit 02c258079e

View File

@ -3,7 +3,12 @@
set -e
# Checkout LLVM sources
git clone --depth=1 --branch llvmorg-19.1.6 https://github.com/llvm/llvm-project.git llvm-project
git clone --filter=blob:none --depth=1 --branch llvmorg-19.1.6 --no-checkout https://github.com/llvm/llvm-project.git llvm-project
cd llvm-project
git sparse-checkout set --cone
git checkout llvmorg-19.1.6
git sparse-checkout set cmake llvm/cmake runtimes libcxx libcxxabi
cd ..
## Setup libc++ options
if [ -z "$BUILD_32_BITS" ]; then
@ -20,6 +25,9 @@ cmake -DCMAKE_C_COMPILER=${CC} \
-DLLVM_USE_SANITIZER=${LIBCXX_SANITIZER} \
-DLLVM_BUILD_32_BITS=${BUILD_32_BITS} \
-DLIBCXXABI_USE_LLVM_UNWINDER=OFF \
-DLLVM_INCLUDE_TESTS=OFF \
-DLIBCXX_INCLUDE_TESTS=OFF \
-DLIBCXX_INCLUDE_BENCHMARKS=OFF \
-DLLVM_ENABLE_RUNTIMES='libcxx;libcxxabi' \
-G "Unix Makefiles" \
../llvm-project/runtimes/