@@ -22,17 +22,20 @@ jobs:
2222 c_compiler : clang-21
2323 cpp_compiler : clang++-21
2424 target : x86_64-unknown-linux-llvm
25+ include_scudo : ON
2526 # TODO: remove ccache logic when https://github.com/hendrikmuhs/ccache-action/issues/279 is resolved.
2627 - os : ubuntu-24.04-arm
2728 ccache-variant : ccache
2829 c_compiler : clang-21
2930 cpp_compiler : clang++-21
3031 target : aarch64-unknown-linux-llvm
32+ include_scudo : ON
3133 - os : ubuntu-24.04
3234 ccache-variant : ccache
3335 c_compiler : clang-21
3436 cpp_compiler : clang++-21
3537 target : x86_64-unknown-uefi-llvm
38+ include_scudo : OFF
3639 # TODO: add back gcc build when it is fixed
3740 # - c_compiler: gcc
3841 # cpp_compiler: g++
@@ -75,23 +78,31 @@ jobs:
7578 # Configure libc fullbuild with scudo.
7679 # Use MinSizeRel to reduce the size of the build.
7780 - name : Configure CMake
78- run : >
79- cmake -B ${{ steps.strings.outputs.build-output-dir }}
80- -DCMAKE_CXX_COMPILER=${{ matrix.cpp_compiler }}
81- -DCMAKE_C_COMPILER=${{ matrix.c_compiler }}
82- -DCMAKE_BUILD_TYPE=${{ matrix.build_type }}
83- -DCMAKE_C_COMPILER_LAUNCHER=${{ matrix.ccache-variant }}
84- -DCMAKE_CXX_COMPILER_LAUNCHER=${{ matrix.ccache-variant }}
85- -DCMAKE_INSTALL_PREFIX=${{ steps.strings.outputs.build-install-dir }}
86- -DLLVM_RUNTIMES_TARGET=${{ matrix.target }}
87- -DLLVM_ENABLE_RUNTIMES="libc;compiler-rt"
88- -DLLVM_LIBC_FULL_BUILD=ON
89- -DLLVM_LIBC_INCLUDE_SCUDO=ON
90- -DCOMPILER_RT_BUILD_SCUDO_STANDALONE_WITH_LLVM_LIBC=ON
91- -DCOMPILER_RT_BUILD_GWP_ASAN=OFF
92- -DCOMPILER_RT_SCUDO_STANDALONE_BUILD_SHARED=OFF
93- -G Ninja
94- -S ${{ github.workspace }}/runtimes
81+ run : |
82+ export RUNTIMES="libc"
83+
84+ if [[ ${{ matrix.include_scudo}} == "ON" ]]; then
85+ export RUNTIMES="$RUNTIMES;compiler-rt"
86+ export CMAKE_FLAGS="
87+ -DLLVM_LIBC_INCLUDE_SCUDO=ON
88+ -DCOMPILER_RT_BUILD_SCUDO_STANDALONE_WITH_LLVM_LIBC=ON
89+ -DCOMPILER_RT_BUILD_GWP_ASAN=OFF
90+ -DCOMPILER_RT_SCUDO_STANDALONE_BUILD_SHARED=OFF"
91+ fi
92+
93+ cmake -B ${{ steps.strings.outputs.build-output-dir }} \
94+ -DCMAKE_CXX_COMPILER=${{ matrix.cpp_compiler }} \
95+ -DCMAKE_C_COMPILER=${{ matrix.c_compiler }} \
96+ -DCMAKE_BUILD_TYPE=${{ matrix.build_type }} \
97+ -DCMAKE_C_COMPILER_LAUNCHER=${{ matrix.ccache-variant }} \
98+ -DCMAKE_CXX_COMPILER_LAUNCHER=${{ matrix.ccache-variant }} \
99+ -DCMAKE_INSTALL_PREFIX=${{ steps.strings.outputs.build-install-dir }} \
100+ -DLLVM_RUNTIMES_TARGET=${{ matrix.target }} \
101+ -DLLVM_ENABLE_RUNTIMES="$RUNTIMES" \
102+ -DLLVM_LIBC_FULL_BUILD=ON \
103+ -G Ninja \
104+ -S ${{ github.workspace }}/runtimes \
105+ $CMAKE_FLAGS
95106
96107 - name : Build
97108 run : >
0 commit comments