diff --git a/.github/workflows/linux.yaml b/.github/workflows/linux.yaml index e93012b7..a525f51f 100644 --- a/.github/workflows/linux.yaml +++ b/.github/workflows/linux.yaml @@ -33,11 +33,42 @@ jobs: - name: Run tests run: ctest --test-dir _build + + Linux-Clang-7: + runs-on: ubuntu-20.04 + env: + CMAKE_OPTIONS: -DDEV_MODE=ON -DBUILD_TESTING=ON -G Ninja -DCMAKE_CXX_FLAGS="-stdlib=libc++" + steps: + - uses: lukka/get-cmake@latest + + - name: Install libc++ + run: | + wget -qO - https://apt.llvm.org/llvm-snapshot.gpg.key | sudo apt-key add - + sudo add-apt-repository --yes --update deb http://apt.llvm.org/focal/ llvm-toolchain-focal-7 main + sudo apt-get update + sudo DEBIAN_FRONTEND=noninteractive apt-get install -yq --no-install-recommends clang-7 llvm-7 + sudo apt install -y libc++abi-7-dev libc++-7-dev + + - name: Get pushed code + uses: actions/checkout@v4 + + - name: Configure + run: cmake -S . -B _build ${{ env.CMAKE_OPTIONS }} -DCMAKE_INSTALL_PREFIX:STRING=${GITHUB_WORKSPACE}/_built + + - name: Build + run: cmake --build _build --parallel + + - name: Test installation + run: cmake --install _build --prefix ${GITHUB_WORKSPACE}/_built + + - name: Run tests + run: ctest --test-dir _build + Linux-Clang: runs-on: ubuntu-24.04 strategy: matrix: - cxx: ['7', '19'] + cxx: ['19'] env: CMAKE_OPTIONS: -DDEV_MODE=ON -DBUILD_TESTING=ON -G Ninja -DCMAKE_CXX_FLAGS="-stdlib=libc++" steps: @@ -48,6 +79,7 @@ jobs: wget -qO - https://apt.llvm.org/llvm-snapshot.gpg.key | sudo apt-key add - sudo add-apt-repository --yes --update deb http://apt.llvm.org/noble/ llvm-toolchain-noble-${{matrix.cxx}} main sudo apt-get update + sudo DEBIAN_FRONTEND=noninteractive apt-get install -yq --no-install-recommends clang-${{matrix.cxx}} llvm-${{matrix.cxx}} sudo apt install -y libc++abi-${{matrix.cxx}}-dev libc++-${{matrix.cxx}}-dev - name: Get pushed code