@@ -24,77 +24,66 @@ jobs:
2424 cpp_compiler : clang++-22
2525 target : x86_64-unknown-linux-llvm
2626 include_scudo : ON
27- enable_baremetal_build : OFF
2827 - os : ubuntu-24.04
2928 build_type : Release
3029 c_compiler : clang-22
3130 cpp_compiler : clang++-22
3231 target : x86_64-unknown-linux-llvm
3332 include_scudo : ON
34- enable_baremetal_build : OFF
3533 - os : ubuntu-24.04
3634 build_type : MinSizeRel
3735 c_compiler : clang-22
3836 cpp_compiler : clang++-22
3937 target : x86_64-unknown-linux-llvm
4038 include_scudo : ON
41- enable_baremetal_build : OFF
4239 - os : ubuntu-24.04-arm
4340 build_type : Debug
4441 c_compiler : clang-22
4542 cpp_compiler : clang++-22
4643 target : aarch64-unknown-linux-llvm
4744 include_scudo : ON
48- enable_baremetal_build : OFF
4945 - os : ubuntu-24.04
5046 build_type : Debug
5147 c_compiler : clang-22
5248 cpp_compiler : clang++-22
5349 target : x86_64-unknown-uefi-llvm
5450 include_scudo : OFF
55- enable_baremetal_build : OFF
5651 - os : ubuntu-24.04
5752 build__type : MinSizeRel
5853 c_compiler : clang-22
5954 cpp_compiler : clang++-22
6055 target : armv6m-none-eabi
6156 include_scudo : OFF
62- enable_baremetal_build : ON
6357 - os : ubuntu-24.04
6458 build__type : MinSizeRel
6559 c_compiler : clang-22
6660 cpp_compiler : clang++-22
6761 target : armv7m-none-eabi
6862 include_scudo : OFF
69- enable_baremetal_build : ON
7063 - os : ubuntu-24.04
7164 build__type : MinSizeRel
7265 c_compiler : clang-22
7366 cpp_compiler : clang++-22
7467 target : armv7em-none-eabi
7568 include_scudo : OFF
76- enable_baremetal_build : ON
7769 - os : ubuntu-24.04
7870 build__type : MinSizeRel
7971 c_compiler : clang-22
8072 cpp_compiler : clang++-22
8173 target : armv8m.main-none-eabi
8274 include_scudo : OFF
83- enable_baremetal_build : ON
8475 - os : ubuntu-24.04
8576 build__type : MinSizeRel
8677 c_compiler : clang-22
8778 cpp_compiler : clang++-22
8879 target : armv8.1m.main-none-eabi
8980 include_scudo : OFF
90- enable_baremetal_build : ON
9181 - os : ubuntu-24.04
9282 build__type : MinSizeRel
9383 c_compiler : clang-22
9484 cpp_compiler : clang++-22
9585 target : riscv32-unknown-elf
9686 include_scudo : OFF
97- enable_baremetal_build : ON
9887 # TODO: add back gcc build when it is fixed
9988 # - c_compiler: gcc
10089 # cpp_compiler: g++
@@ -149,33 +138,35 @@ jobs:
149138 -DCOMPILER_RT_SCUDO_STANDALONE_BUILD_SHARED=OFF"
150139 fi
151140
152- if [[ ${{ matrix.enable_baremetal_build}} == "ON" ]]; then
153- cmake -B ${{ steps.strings.outputs.build-output-dir }} \
154- -DCMAKE_CXX_COMPILER=${{ matrix.cpp_compiler }} \
155- -DCMAKE_C_COMPILER=${{ matrix.c_compiler }} \
156- -DCMAKE_BUILD_TYPE=${{ matrix.build_type }} \
157- -DCMAKE_C_COMPILER_LAUNCHER=sccache \
158- -DCMAKE_CXX_COMPILER_LAUNCHER=sccache \
159- -DCMAKE_INSTALL_PREFIX=${{ steps.strings.outputs.build-install-dir }} \
160- -DARCH_TRIPLE="${{ matrix.target }}" \
161- -G Ninja \
162- -S ${{ github.workspace }}/runtimes \
163- -C ${{ github.workspace }}/clang/cmake/caches/Standalone_libc_baremetal.cache
164- else
165- cmake -B ${{ steps.strings.outputs.build-output-dir }} \
166- -DCMAKE_CXX_COMPILER=${{ matrix.cpp_compiler }} \
167- -DCMAKE_C_COMPILER=${{ matrix.c_compiler }} \
168- -DCMAKE_BUILD_TYPE=${{ matrix.build_type }} \
169- -DCMAKE_C_COMPILER_LAUNCHER=sccache \
170- -DCMAKE_CXX_COMPILER_LAUNCHER=sccache \
171- -DCMAKE_INSTALL_PREFIX=${{ steps.strings.outputs.build-install-dir }} \
172- -DLLVM_RUNTIME_TARGETS=${{ matrix.target }} \
173- -DLLVM_ENABLE_RUNTIMES="$RUNTIMES" \
174- -DLLVM_LIBC_FULL_BUILD=ON \
175- -G Ninja \
176- -S ${{ github.workspace }}/runtimes \
177- $CMAKE_FLAGS
178- fi
141+ case "${{ matrix.target }}" in
142+ *-none-eabi|riscv32-unknown-elf)
143+ cmake -B ${{ steps.strings.outputs.build-output-dir }} \
144+ -DCMAKE_CXX_COMPILER=${{ matrix.cpp_compiler }} \
145+ -DCMAKE_C_COMPILER=${{ matrix.c_compiler }} \
146+ -DCMAKE_BUILD_TYPE=${{ matrix.build_type }} \
147+ -DCMAKE_C_COMPILER_LAUNCHER=sccache \
148+ -DCMAKE_CXX_COMPILER_LAUNCHER=sccache \
149+ -DCMAKE_INSTALL_PREFIX=${{ steps.strings.outputs.build-install-dir }} \
150+ -DARCH_TRIPLE="${{ matrix.target }}" \
151+ -G Ninja \
152+ -S ${{ github.workspace }}/runtimes \
153+ -C ${{ github.workspace }}/clang/cmake/caches/Standalone_libc_baremetal.cache
154+ ;;
155+ *)
156+ cmake -B ${{ steps.strings.outputs.build-output-dir }} \
157+ -DCMAKE_CXX_COMPILER=${{ matrix.cpp_compiler }} \
158+ -DCMAKE_C_COMPILER=${{ matrix.c_compiler }} \
159+ -DCMAKE_BUILD_TYPE=${{ matrix.build_type }} \
160+ -DCMAKE_C_COMPILER_LAUNCHER=sccache \
161+ -DCMAKE_CXX_COMPILER_LAUNCHER=sccache \
162+ -DCMAKE_INSTALL_PREFIX=${{ steps.strings.outputs.build-install-dir }} \
163+ -DLLVM_RUNTIME_TARGETS=${{ matrix.target }} \
164+ -DLLVM_ENABLE_RUNTIMES="$RUNTIMES" \
165+ -DLLVM_LIBC_FULL_BUILD=ON \
166+ -G Ninja \
167+ -S ${{ github.workspace }}/runtimes \
168+ $CMAKE_FLAGS
169+ esac
179170
180171 - name : Build
181172 run : >
@@ -185,8 +176,12 @@ jobs:
185176 --target install
186177
187178 - name : Test
188- # Skip UEFI tests until we have testing set up.
189- if : ${{ !endsWith(matrix.target, '-uefi-llvm') && matrix.enable_baremetal_build == 'OFF' }}
179+ # Skip UEFI and baremetal tests until we have testing set up.
180+ if : ${{
181+ !endsWith(matrix.target, '-uefi-llvm') &&
182+ !endsWith(matrix.target, '-none-eabi') &&
183+ matrix.target != 'riscv32-unknown-elf'
184+ }}
190185 run : >
191186 cmake
192187 --build ${{ steps.strings.outputs.build-output-dir }}
0 commit comments