From 68cf4a8ddbd576e3975e3764e309ba4d18ecc739 Mon Sep 17 00:00:00 2001 From: Tristan Brindle Date: Sun, 28 Jan 2024 19:54:27 +0000 Subject: [PATCH] Tidy up CI matrix config Also re-enable testing Clang 16 with modules on MacOS, because we can't do it on Linux at the moment --- .github/workflows/linux.yml | 27 +++++++++++---------------- .github/workflows/macos.yml | 31 +++++++++++++------------------ docs/overview.rst | 1 + 3 files changed, 25 insertions(+), 34 deletions(-) create mode 100644 docs/overview.rst diff --git a/.github/workflows/linux.yml b/.github/workflows/linux.yml index 893df449..8ebc520e 100644 --- a/.github/workflows/linux.yml +++ b/.github/workflows/linux.yml @@ -11,9 +11,18 @@ jobs: runs-on: ubuntu-latest strategy: matrix: - build_type: [Debug, Release] compiler: [GCC-11, GCC-12, GCC-13, Clang-17] - test_with: [Headers] + test_with: [Headers, Module] + build_type: [Debug, Release] + + exclude: + - compiler: GCC-11 + test_with: Module + - compiler: GCC-12 + test_with: Module + - compiler: GCC-13 + test_with: Module + include: - compiler: GCC-11 cxx: g++-11 @@ -35,20 +44,6 @@ jobs: install: | brew install llvm@17 ninja binutils brew link --force binutils - - compiler: Clang-17 - build_type: Debug - cxx: clang++ - test_with: Module - install: | - brew install llvm@17 ninja binutils - brew link --force binutils - - compiler: Clang-17 - build_type: Release - cxx: clang++ - test_with: Module - install: | - brew install llvm@17 ninja binutils - brew link --force binutils steps: - uses: actions/checkout@master diff --git a/.github/workflows/macos.yml b/.github/workflows/macos.yml index a3875c82..167a746f 100644 --- a/.github/workflows/macos.yml +++ b/.github/workflows/macos.yml @@ -14,34 +14,29 @@ jobs: runs-on: macos-latest strategy: matrix: + compiler: [GCC-13, LLVM-Clang-16, LLVM-Clang-17] + test_with: [Headers, Module] build_type: [Debug, Release] - cxx: [g++-13, - /usr/local/opt/llvm@16/bin/clang++, - /usr/local/opt/llvm@17/bin/clang++] - test_with: [Headers] + + exclude: + - compiler: GCC-13 + test_with: Module include: - - cxx: g++-13 + - compiler: GCC-13 + cxx: g++-13 install: | brew update brew install gcc@13 ninja - - cxx: /usr/local/opt/llvm@16/bin/clang++ + - compiler: LLVM-Clang-16 + cxx: /usr/local/opt/llvm@16/bin/clang++ install: | brew install llvm@16 ninja - - cxx: /usr/local/opt/llvm@17/bin/clang++ - install: | - brew install llvm@17 ninja - test_with: Headers - - build_type: Debug - cxx: /usr/local/opt/llvm@17/bin/clang++ - install: | - brew install llvm@17 ninja - test_with: Module - - build_type: Release + - compiler: LLVM-Clang-17 cxx: /usr/local/opt/llvm@17/bin/clang++ install: | brew install llvm@17 ninja - test_with: Module + steps: - uses: actions/checkout@master @@ -56,7 +51,7 @@ jobs: run: | cmake -GNinja -DCMAKE_BUILD_TYPE=${{matrix.build_type}} -DCMAKE_CXX_COMPILER=${{matrix.cxx}} \ -DFLUX_BUILD_BENCHMARKS=${{matrix.build_type == 'Release'}} \ - -DFLUX_BUILD_MODULE=${{matrix.cxx != 'g++-13'}} \ + -DFLUX_BUILD_MODULE=${{matrix.test_with == 'Module'}} \ -DFLUX_BUILD_TESTS_USING_MODULE=${{matrix.test_with == 'Module'}} \ $GITHUB_WORKSPACE diff --git a/docs/overview.rst b/docs/overview.rst new file mode 100644 index 00000000..17400327 --- /dev/null +++ b/docs/overview.rst @@ -0,0 +1 @@ + for (int i = 0; i < size; i++) {