Skip to content

Commit c5bb35a

Browse files
committed
ci: update github action to install gcc-16
1 parent 19b3ff5 commit c5bb35a

1 file changed

Lines changed: 14 additions & 4 deletions

File tree

‎.github/workflows/premerge.yml‎

Lines changed: 14 additions & 4 deletions
Original file line numberDiff line numberDiff line change
@@ -6,10 +6,12 @@ on:
66

77
env:
88
CMAKE_PRESET: release
9+
CC: gcc-16
10+
CXX: g++-16
911

1012
jobs:
1113
build:
12-
runs-on: ubuntu-latest
14+
runs-on: ubuntu-24.04
1315

1416
steps:
1517
- uses: actions/checkout@v7
@@ -18,6 +20,16 @@ jobs:
1820

1921
- uses: pre-commit/action@v3.0.1
2022

23+
- name: Install GCC 16
24+
run: |
25+
# We require C++26, which currently is best supported in gcc-16.
26+
# By default, Ubuntu 24.04 only supports up to gcc-13,
27+
# but ubuntu-toolchain-r/test carries experimental trunk snapshots.
28+
sudo add-apt-repository -y ppa:ubuntu-toolchain-r/test
29+
sudo apt-get update
30+
sudo apt-get install -y gcc-16 g++-16
31+
g++-16 --version
32+
2133
- name: Install LLVM
2234
run: |
2335
# LLVM 23 has branched, so it lives in its own apt suite now. Upstream
@@ -30,9 +42,7 @@ jobs:
3042
echo "deb [signed-by=/etc/apt/keyrings/apt.llvm.org.asc] https://apt.llvm.org/${CODENAME}/ llvm-toolchain-${CODENAME}-23 main" \
3143
| sudo tee /etc/apt/sources.list.d/llvm-23.list > /dev/null
3244
sudo apt-get update
33-
# The snapshot packaging pulled in llvm-23-dev via libmlir-23-dev; the
34-
# release packaging does not, and MLIRConfig.cmake needs LLVMConfig.cmake.
35-
sudo apt-get install -y clang-23 lld-23 llvm-23-dev libmlir-23-dev mlir-23-tools
45+
sudo apt-get install -y llvm-23-dev libmlir-23-dev mlir-23-tools
3646
3747
- name: ccache
3848
uses: hendrikmuhs/ccache-action@v1.2

0 commit comments

Comments
 (0)