From 21dcbc9e52833cb930b9178ce8f889630ec3fc8d Mon Sep 17 00:00:00 2001 From: BZLZHH Date: Thu, 1 Jan 2026 11:59:08 +0800 Subject: [PATCH] [Chore] (CI): Use Ninja and clang. --- .github/workflows/benchmark.yml | 16 ++++++++++++++-- .github/workflows/test.yml | 18 +++++++++++++++--- 2 files changed, 29 insertions(+), 5 deletions(-) diff --git a/.github/workflows/benchmark.yml b/.github/workflows/benchmark.yml index 9b932eac..ff2e531a 100644 --- a/.github/workflows/benchmark.yml +++ b/.github/workflows/benchmark.yml @@ -31,13 +31,25 @@ jobs: working-directory: ${{env.BENCH_ROOT}}/3rdparty/glslang run: python update_glslang_sources.py + - name: Install clang-20 + run: | + sudo apt-get update + sudo apt-get install -y clang-20 clang++-20 lld-20 libc++-20-dev libc++abi-20-dev + + - name: Show installed toolchain + run: | + clang-20 --version + clang++-20 --version + ld.lld-20 --version || ld.lld --version || true + dpkg -l 'libc++*' || true + - name: Configure CMake working-directory: ${{env.BENCH_ROOT}} - run: cmake -S . -B build-bench -DCMAKE_BUILD_TYPE=Release -DBENCHMARK_DOWNLOAD_DEPENDENCIES=ON -DBENCHMARK_ENABLE_TESTING=OFF -DBUILD_TEST=OFF -DBUILD_BENCHMARK=ON -DCMAKE_POLICY_VERSION_MINIMUM=3.5 + run: cmake -S . -B build-bench -G Ninja -DCMAKE_BUILD_TYPE=Release -DCMAKE_C_COMPILER=clang-20 -DCMAKE_CXX_COMPILER=clang++-20 -DBENCHMARK_DOWNLOAD_DEPENDENCIES=ON -DBENCHMARK_ENABLE_TESTING=OFF -DBUILD_TEST=OFF -DBUILD_BENCHMARK=ON -DCMAKE_POLICY_VERSION_MINIMUM=3.5 - name: Build working-directory: ${{env.BENCH_ROOT}}/build-bench - run: cmake --build . --parallel 4 + run: cmake --build . - name: Benchmark working-directory: ${{env.BENCH_ROOT}}/build-bench/MobileGL/MG_Benchmark diff --git a/.github/workflows/test.yml b/.github/workflows/test.yml index 07ca704f..ba64d64a 100644 --- a/.github/workflows/test.yml +++ b/.github/workflows/test.yml @@ -31,18 +31,30 @@ jobs: working-directory: ${{env.TEST_ROOT}}/3rdparty/glslang run: python update_glslang_sources.py + - name: Install clang-20 + run: | + sudo apt-get update + sudo apt-get install -y clang-20 clang++-20 lld-20 libc++-20-dev libc++abi-20-dev + + - name: Show installed toolchain + run: | + clang-20 --version + clang++-20 --version + ld.lld-20 --version || ld.lld --version || true + dpkg -l 'libc++*' || true + - name: Configure CMake working-directory: ${{env.TEST_ROOT}} run: | if [ "${{ secrets.ACTIONS_STEP_DEBUG }}" == "true" ]; then - cmake -S . -B build-test -DCMAKE_BUILD_TYPE=Debug -DBUILD_TEST=ON -DBUILD_BENCHMARK=OFF -DCMAKE_POLICY_VERSION_MINIMUM=3.5 + cmake -S . -B build-test -G Ninja -DCMAKE_C_COMPILER=clang-20 -DCMAKE_CXX_COMPILER=clang++-20 -DCMAKE_BUILD_TYPE=Debug -DBUILD_TEST=ON -DBUILD_BENCHMARK=OFF -DCMAKE_POLICY_VERSION_MINIMUM=3.5 else - cmake -S . -B build-test -DCMAKE_BUILD_TYPE=Release -DBUILD_TEST=ON -DBUILD_BENCHMARK=OFF -DCMAKE_POLICY_VERSION_MINIMUM=3.5 + cmake -S . -B build-test -G Ninja -DCMAKE_C_COMPILER=clang-20 -DCMAKE_CXX_COMPILER=clang++-20 -DCMAKE_BUILD_TYPE=Release -DBUILD_TEST=ON -DBUILD_BENCHMARK=OFF -DCMAKE_POLICY_VERSION_MINIMUM=3.5 fi - name: Build working-directory: ${{env.TEST_ROOT}}/build-test - run: cmake --build . --parallel 4 + run: cmake --build . - name: Test working-directory: ${{env.TEST_ROOT}}/build-test/MobileGL/MG_Test