@@ -11,60 +11,50 @@ jobs:
1111 fail-fast : false
1212 matrix :
1313 compiler :
14- # GCC 13 on MacOS seems to be generally broken (https://github.com/actions/runner-images/issues/9997) and therefore disabled
14+ - { tag: "ubuntu-2404_clang-16", name: "Ubuntu 24.04 Clang 16", cxx: "/usr/bin/clang++-16", cc: "/usr/bin/clang-16", runs-on: "ubuntu-24.04" }
15+ - { tag: "ubuntu-2404_clang-17", name: "Ubuntu 24.04 Clang 17", cxx: "/usr/bin/clang++-17", cc: "/usr/bin/clang-17", runs-on: "ubuntu-24.04" }
16+ - { tag: "ubuntu-2404_clang-18", name: "Ubuntu 24.04 Clang 18", cxx: "/usr/bin/clang++-18", cc: "/usr/bin/clang-18", runs-on: "ubuntu-24.04" }
17+ - { tag: "ubuntu-2404_gcc-12", name: "Ubuntu 24.04 G++ 12", cxx: "/usr/bin/g++-12", cc: "/usr/bin/gcc-12", runs-on: "ubuntu-24.04" }
18+ - { tag: "ubuntu-2404_gcc-13", name: "Ubuntu 24.04 G++ 13", cxx: "/usr/bin/g++-13", cc: "/usr/bin/gcc-13", runs-on: "ubuntu-24.04" }
19+ - { tag: "ubuntu-2404_gcc-14", name: "Ubuntu 24.04 G++ 14", cxx: "/usr/bin/g++-14", cc: "/usr/bin/gcc-14", runs-on: "ubuntu-24.04" }
1520 - { tag: "ubuntu-2204_clang-13", name: "Ubuntu 22.04 Clang 13", cxx: "/usr/bin/clang++-13", cc: "/usr/bin/clang-13", runs-on: "ubuntu-22.04" }
1621 - { tag: "ubuntu-2204_clang-14", name: "Ubuntu 22.04 Clang 14", cxx: "/usr/bin/clang++-14", cc: "/usr/bin/clang-14", runs-on: "ubuntu-22.04" }
1722 - { tag: "ubuntu-2204_clang-15", name: "Ubuntu 22.04 Clang 15", cxx: "/usr/bin/clang++-15", cc: "/usr/bin/clang-15", runs-on: "ubuntu-22.04" }
1823 - { tag: "ubuntu-2204_gcc-10", name: "Ubuntu 22.04 G++ 10", cxx: "/usr/bin/g++-10", cc: "/usr/bin/gcc-10", runs-on: "ubuntu-22.04" }
1924 - { tag: "ubuntu-2204_gcc-11", name: "Ubuntu 22.04 G++ 11", cxx: "/usr/bin/g++-11", cc: "/usr/bin/gcc-11", runs-on: "ubuntu-22.04" }
20- - { tag: "ubuntu-2004_clang-12", name: "Ubuntu 20.04 Clang 12", cxx: "/usr/bin/clang++-12", cc: "/usr/bin/clang-12", runs-on: "ubuntu-20.04" }
21- - { tag: "ubuntu-2004_clang-11", name: "Ubuntu 20.04 Clang 11", cxx: "/usr/bin/clang++-11", cc: "/usr/bin/clang-11", runs-on: "ubuntu-20.04" }
22- - { tag: "ubuntu-2004_clang-10", name: "Ubuntu 20.04 Clang 10", cxx: "/usr/bin/clang++-10", cc: "/usr/bin/clang-10", runs-on: "ubuntu-20.04" }
23- - { tag: "ubuntu-2004_gcc-10", name: "Ubuntu 20.04 G++ 10", cxx: "/usr/bin/g++-10", cc: "/usr/bin/gcc-10", runs-on: "ubuntu-20.04" }
25+ - { tag: "windows-2025_msvc17", name: "Windows Server 2025 MSVC 17", cxx: "", cc: "", runs-on: "windows-2025" }
2426 - { tag: "windows-2022_msvc17", name: "Windows Server 2022 MSVC 17", cxx: "", cc: "", runs-on: "windows-2022" }
25- - { tag: "windows-2019_msvc16", name: "Windows Server 2019 MSVC 16", cxx: "", cc: "", runs-on: "windows-2019" }
26- - { tag: "macos-12_gcc-12", name: "MacOS 12 G++ 12", cxx: "g++-12", cc: "gcc-12", runs-on: "macos-12" }
27- # - { tag: "macos-12_gcc-13", name: "MacOS 12 G++ 13", cxx: "g++-13", cc: "gcc-13", runs-on: "macos-12" }
28- - { tag: "macos-12_gcc-14", name: "MacOS 12 G++ 14", cxx: "g++-14", cc: "gcc-14", runs-on: "macos-12" }
29- - { tag: "macos-12_clang-15", name: "MacOS 12 Clang 15", cxx: "/usr/local/opt/llvm@15/bin/clang++", cc: "/usr/local/opt/llvm@15/bin/clang", runs-on: "macos-12" }
30- - { tag: "macos-13_gcc-12", name: "MacOS 13 G++ 12", cxx: "g++-12", cc: "gcc-12", runs-on: "macos-13" }
31- # - { tag: "macos-13_gcc-13", name: "MacOS 13 G++ 13", cxx: "g++-13", cc: "gcc-13", runs-on: "macos-13" }
32- - { tag: "macos-13_gcc-14", name: "MacOS 13 G++ 14", cxx: "g++-14", cc: "gcc-14", runs-on: "macos-13" }
33- - { tag: "macos-13_clang-15", name: "MacOS 13 Clang 15", cxx: "/usr/local/opt/llvm@15/bin/clang++", cc: "/usr/local/opt/llvm@15/bin/clang", runs-on: "macos-13" }
34- - { tag: "macos-14_gcc-12", name: "MacOS 14 G++ 12", cxx: "g++-12", cc: "gcc-12", runs-on: "macos-14" }
35- # - { tag: "macos-14_gcc-13", name: "MacOS 14 G++ 13", cxx: "g++-13", cc: "gcc-13", runs-on: "macos-14" }
36- - { tag: "macos-14_gcc-14", name: "MacOS 14 G++ 14", cxx: "g++-14", cc: "gcc-14", runs-on: "macos-14" }
37- - { tag: "macos-14_clang-15", name: "MacOS 14 Clang 15", cxx: "/opt/homebrew/Cellar/llvm@15/15.0.7/bin/clang++", cc: "/opt/homebrew/Cellar/llvm@15/15.0.7/bin/clang", runs-on: "macos-14" }
27+ - { tag: "macos-13_clang-15", name: "MacOS 13 Clang 15", cxx: "/usr/local/Cellar/llvm@15//15.0.7/bin/clang++", cc: "/usr/local/Cellar/llvm@15//15.0.7/bin/clang", runs-on: "macos-13" }
28+ - { tag: "macos-14-arm_clang-15", name: "MacOS 14 (Arm64) Clang 15", cxx: "/opt/homebrew/opt/llvm@15/bin/clang++", cc: "/opt/homebrew/opt/llvm@15/bin/clang", runs-on: "macos-14" }
29+ - { tag: "macos-15-arm_clang-18", name: "MacOS 15 (Arm64) Clang 18", cxx: "/opt/homebrew/opt/llvm@18/bin/clang++", cc: "/opt/homebrew/opt/llvm@18/bin/clang", runs-on: "macos-15" }
30+ # x64 MacOS is payed only for >= 14
31+ # - { tag: "macos-14_clang-15", name: "MacOS 14 Clang 15", cxx: "/opt/homebrew/opt/llvm@15/bin/clang++", cc: "/opt/homebrew/opt/llvm@15/bin/clang", runs-on: "macos-14-large" }
32+ # - { tag: "macos-15_clang-18", name: "MacOS 15 Clang 18", cxx: "/opt/homebrew/opt/llvm@18/bin/clang++", cc: "/opt/homebrew/opt/llvm@18/bin/clang", runs-on: "macos-15-large" }
3833 runs-on : ${{ matrix.compiler.runs-on }}
3934 name : Compiler ${{ matrix.compiler.name }}
4035 env :
4136 CXX : ${{ matrix.compiler.cxx }}
4237 CC : ${{ matrix.compiler.cc }}
4338 outputs :
4439 # Because github wants us to suffer we need to list out every output instead of using a matrix statement or some kind of dynamic setting
40+ ubuntu-2404_clang-16 : ${{ steps.status.outputs.ubuntu-2404_clang-16 }}
41+ ubuntu-2404_clang-17 : ${{ steps.status.outputs.ubuntu-2404_clang-17 }}
42+ ubuntu-2404_clang-18 : ${{ steps.status.outputs.ubuntu-2404_clang-18 }}
43+ ubuntu-2404_gcc-12 : ${{ steps.status.outputs.ubuntu-2404_gcc-12 }}
44+ ubuntu-2404_gcc-13 : ${{ steps.status.outputs.ubuntu-2404_gcc-13 }}
45+ ubuntu-2404_gcc-14 : ${{ steps.status.outputs.ubuntu-2404_gcc-14 }}
4546 ubuntu-2204_clang-13 : ${{ steps.status.outputs.ubuntu-2204_clang-13 }}
4647 ubuntu-2204_clang-14 : ${{ steps.status.outputs.ubuntu-2204_clang-14 }}
4748 ubuntu-2204_clang-15 : ${{ steps.status.outputs.ubuntu-2204_clang-15 }}
4849 ubuntu-2204_gcc-10 : ${{ steps.status.outputs.ubuntu-2204_gcc-10 }}
4950 ubuntu-2204_gcc-11 : ${{ steps.status.outputs.ubuntu-2204_gcc-11 }}
50- ubuntu-2004_clang-12 : ${{ steps.status.outputs.ubuntu-2004_clang-12 }}
51- ubuntu-2004_clang-11 : ${{ steps.status.outputs.ubuntu-2004_clang-11 }}
52- ubuntu-2004_clang-10 : ${{ steps.status.outputs.ubuntu-2004_clang-10 }}
53- ubuntu-2004_gcc-10 : ${{ steps.status.outputs.ubuntu-2004_gcc-10 }}
51+ windows-2025_msvc17 : ${{ steps.status.outputs.windows-2025_msvc17 }}
5452 windows-2022_msvc17 : ${{ steps.status.outputs.windows-2022_msvc17 }}
55- windows-2019_msvc16 : ${{ steps.status.outputs.windows-2019_msvc16 }}
56- macos-12_gcc-12 : ${{ steps.status.outputs.macos-12_gcc-12 }}
57- macos-12_gcc-13 : ${{ steps.status.outputs.macos-12_gcc-13 }}
58- macos-12_gcc-14 : ${{ steps.status.outputs.macos-12_gcc-14 }}
59- macos-12_clang-15 : ${{ steps.status.outputs.macos-12_clang-15 }}
60- macos-13_gcc-12 : ${{ steps.status.outputs.macos-13_gcc-12 }}
61- macos-13_gcc-13 : ${{ steps.status.outputs.macos-13_gcc-13 }}
62- macos-13_gcc-14 : ${{ steps.status.outputs.macos-13_gcc-14 }}
6353 macos-13_clang-15 : ${{ steps.status.outputs.macos-13_clang-15 }}
64- macos-14_gcc-12 : ${{ steps.status.outputs.macos-14_gcc-12 }}
65- macos-14_gcc-13 : ${{ steps.status.outputs.macos-14_gcc-13 }}
66- macos-14_gcc-14 : ${{ steps.status.outputs.macos-14_gcc-14 }}
54+ macos-14-arm_clang-15 : ${{ steps.status.outputs.macos-14-arm_clang-15 }}
55+ macos-15-arm_clang-18 : ${{ steps.status.outputs.macos-15-arm_clang-18 }}
6756 macos-14_clang-15 : ${{ steps.status.outputs.macos-14_clang-15 }}
57+ macos-15_clang-18 : ${{ steps.status.outputs.macos-15_clang-18 }}
6858 defaults :
6959 run :
7060 shell : bash -l {0}
8171 sudo apt autoremove libstdc++-13-dev gcc-13 libgcc-13-dev
8272 sudo apt install libstdc++-12-dev gcc-12 libgcc-12-dev
8373 - name : Install liburing
84- # Ubuntu 22.04 can just pull liburing from apt
85- if : contains(matrix.compiler.tag, 'ubuntu-2204')
74+ if : contains(matrix.compiler.runs-on, 'ubuntu')
8675 run : sudo apt install liburing-dev
87- - name : Install liburing
88- # Ubuntu 20.04 does not have liburing in apt, pull in deb files from 22.04 instead
89- if : contains(matrix.compiler.tag, 'ubuntu-2004')
90- run : |
91- wget -O /tmp/liburing2_2.1-2build1_amd64.deb http://mirrors.kernel.org/ubuntu/pool/main/libu/liburing/liburing2_2.1-2build1_amd64.deb
92- wget -O /tmp/liburing-dev_2.1-2build1_amd64.deb http://mirrors.kernel.org/ubuntu/pool/main/libu/liburing/liburing-dev_2.1-2build1_amd64.deb
93- sudo dpkg -i /tmp/liburing-dev_2.1-2build1_amd64.deb /tmp/liburing2_2.1-2build1_amd64.deb
9476 - name : Configure
9577 if : contains(matrix.compiler.tag, 'ubuntu')
9678 run : cmake -S. -Bbuild -DASYNCPP_BUILD_TEST=ON -DASYNCPP_WITH_ASAN=ON -DASYNCPP_WITH_TSAN=OFF
0 commit comments