CI: upgrade Clang versions #1127
Workflow file for this run
This file contains hidden or bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
| name: Continuous Integration | |
| on: [push, pull_request] | |
| concurrency: | |
| group: ${{ github.workflow }}-${{ github.ref }} | |
| cancel-in-progress: true | |
| jobs: | |
| clang: | |
| name: Clang | |
| strategy: | |
| fail-fast: false | |
| matrix: | |
| include: | |
| - clang: "7" | |
| runner: ubuntu-22.04 | |
| archive: focal | |
| - clang: "8" | |
| cxxflags: -fsanitize=leak -fno-sanitize-recover=all | |
| runner: ubuntu-22.04 | |
| archive: focal | |
| - clang: "9" | |
| cxxflags: -fsanitize=undefined -fno-sanitize-recover=all | |
| runner: ubuntu-22.04 | |
| archive: focal | |
| - clang: "10" | |
| cxxflags: -fsanitize=address -fno-sanitize-recover=all | |
| runner: ubuntu-22.04 | |
| archive: focal | |
| - clang: "11" | |
| runner: ubuntu-22.04 | |
| - clang: "12" | |
| runner: ubuntu-22.04 | |
| - clang: "13" | |
| runner: ubuntu-22.04 | |
| - clang: 14 | |
| - clang: 15 | |
| - clang: 16 | |
| - clang: 17 | |
| - clang: 18 | |
| - clang: 19 | |
| runs-on: ${{ matrix.runner || 'ubuntu-latest' }} | |
| steps: | |
| - name: Add archive repositories | |
| if: matrix.archive | |
| run: | | |
| sudo gpg --keyserver keyserver.ubuntu.com --recv-keys 3B4FE6ACC0B21F32 | |
| sudo gpg --export 3B4FE6ACC0B21F32 | sudo tee /etc/apt/trusted.gpg.d/ubuntu-keyring.gpg > /dev/null | |
| sudo add-apt-repository -yn 'deb http://archive.ubuntu.com/ubuntu/ ${{ matrix.archive }} main' | |
| sudo add-apt-repository -yn 'deb http://archive.ubuntu.com/ubuntu/ ${{ matrix.archive }} universe' | |
| - name: Install Clang ${{ matrix.clang }} | |
| run: | | |
| sudo apt-get update | |
| sudo apt-get install -y clang-${{ matrix.clang }} | |
| - name: Install libc++ ${{ matrix.clang }} | |
| run: sudo apt-get install -y libc++-${{ matrix.clang }}-dev libc++abi-${{ matrix.clang }}-dev | |
| - name: Checkout | |
| uses: actions/checkout@v4 | |
| - name: Configure | |
| run: cmake -DCMAKE_BUILD_TYPE=Debug . | |
| env: | |
| CC: clang-${{ matrix.clang }} | |
| CXX: clang++-${{ matrix.clang }} | |
| CXXFLAGS: >- | |
| ${{ matrix.cxxflags }} | |
| ${{ matrix.clang < 11 && '-I/usr/lib/llvm-10/include/c++/v1/' || '' }} | |
| - name: Build | |
| run: cmake --build . | |
| - name: Test | |
| run: ctest --output-on-failure -C Debug . | |
| env: | |
| UBSAN_OPTIONS: print_stacktrace=1 |