From 10ebfbd7e9189c140490f995722b9a2ed9dd0767 Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Daniel=20Krupi=C5=84ski?= Date: Thu, 5 Sep 2024 21:07:59 +0200 Subject: [PATCH] Run CI jobs on ubuntu-24.04 for compilers which are not installed on ubuntu-22.04 --- .github/workflows/linux.yml | 54 ++++++++++++++++--------------------- 1 file changed, 23 insertions(+), 31 deletions(-) diff --git a/.github/workflows/linux.yml b/.github/workflows/linux.yml index 4e8dbffc13d..48e232588d1 100644 --- a/.github/workflows/linux.yml +++ b/.github/workflows/linux.yml @@ -7,47 +7,39 @@ jobs: runs-on: ${{ matrix.os }} strategy: matrix: - os: [ubuntu-22.04] - compiler: [g++-11, g++-12, g++-13, clang++-15, clang++-16, clang++-17, clang++-18, clang++-19] + os: [ubuntu-22.04, ubuntu-24.04] + compiler: [g++-11, g++-12, g++-13, g++-14, clang++-15, clang++-16, clang++-17, clang++-18, clang++-19] configuration: [Debug, Release] - include: - - os: ubuntu-24.04 + exclude: + - os: ubuntu-22.04 + compiler: g++-13 + - os: ubuntu-22.04 compiler: g++-14 - configuration: Debug + - os: ubuntu-22.04 + compiler: clang++-16 + - os: ubuntu-22.04 + compiler: clang++-17 + - os: ubuntu-22.04 + compiler: clang++-18 + - os: ubuntu-22.04 + compiler: clang++-19 + - os: ubuntu-24.04 - compiler: g++-14 - configuration: Release + compiler: g++-11 + - os: ubuntu-24.04 + compiler: g++-12 + - os: ubuntu-24.04 + compiler: clang++-15 + steps: - uses: actions/checkout@v4 - - name: install g++-13 - if: matrix.compiler == 'g++-13' || matrix.compiler == 'clang++-18' || matrix.compiler == 'clang++-19' - run: | - sudo add-apt-repository ppa:ubuntu-toolchain-r/test - sudo apt-get update && sudo apt-get install -y g++-13 - - name: install clang++-16 - if: matrix.compiler == 'clang++-16' - run: | - wget https://apt.llvm.org/llvm.sh - chmod +x llvm.sh - sudo ./llvm.sh 16 - - name: install clang++-17 - if: matrix.compiler == 'clang++-17' - run: | - wget https://apt.llvm.org/llvm.sh - chmod +x llvm.sh - sudo ./llvm.sh 17 - - name: install clang++-18 - if: matrix.compiler == 'clang++-18' - run: | - wget https://apt.llvm.org/llvm.sh - chmod +x llvm.sh - sudo ./llvm.sh 18 - - name: install clang++-19 + - name: prepare clang++-19 if: matrix.compiler == 'clang++-19' run: | wget https://apt.llvm.org/llvm.sh chmod +x llvm.sh sudo ./llvm.sh 19 + echo "CXXFLAGS=\"--gcc-install-dir=/usr/lib/gcc/x86_64-linux-gnu/13\"" >> "$GITHUB_ENV" - name: configure run: CXX=${{ matrix.compiler }} cmake -Werror=dev -D CMAKE_BUILD_TYPE=${{ matrix.configuration }} -D BUILD_TESTS=1 -D CMAKE_COMPILE_WARNING_AS_ERROR=1 -B build - name: build source