261101.5 · 2ec4c2cdb17d57b99df704c07f11c264b5ddd4f1
Switch Linux runners to Ubuntu 26.04 except for MIPS (#3703)
The i386 build ran on ubuntu-22.04, which is retired on April 17, 2027, and ubuntu-24.04 lacks fmod and exp10 in the static i386 libm.
Build on ubuntu-26.04 for every architecture except MIPS, whose cross toolchains Ubuntu 26.04 no longer ships, and move the decnum, oniguruma and valgrind workflows too. Most release binaries are now built with GCC 15 and glibc 2.43, and they remain statically linked.
reading declarations
Changes to .github/. All files
@@ -37,6 +37,8 @@ jobs: CC: aarch64-linux-gnu - arch: armel CC: arm-linux-gnueabi+ # Ubuntu 26.04 has no crossbuild-essential-armel+ packages: gcc-arm-linux-gnueabi libc6-dev-armel-cross - arch: armhf CC: arm-linux-gnueabihf - arch: i386@@ -65,7 +67,8 @@ jobs: CC: riscv64-linux-gnu - arch: s390x CC: s390x-linux-gnu- runs-on: ${{ matrix.arch == 'i386' && 'ubuntu-22.04' || 'ubuntu-24.04' }}+ # Ubuntu 26.04 no longer ships the MIPS cross toolchains.+ runs-on: ${{ startsWith(matrix.arch, 'mips') && 'ubuntu-24.04' || 'ubuntu-26.04' }} env: AR: ${{ matrix.CC }}-ar CHOST: ${{ matrix.CC }}@@ -81,7 +84,8 @@ jobs: - name: Install packages run: | sudo apt-get update- sudo apt-get install -y automake autoconf libtool crossbuild-essential-${{ matrix.arch }}+ sudo apt-get install -y automake autoconf libtool \+ ${{ matrix.packages || format('crossbuild-essential-{0}', matrix.arch) }} - name: Build run: | autoreconf -i
@@ -7,7 +7,7 @@ on: jobs: disabled:- runs-on: ubuntu-24.04+ runs-on: ubuntu-26.04 steps: - name: Clone repository uses: actions/checkout@v7
.github/workflows/oniguruma.yml
@@ -9,7 +9,7 @@ on: # we test other options for --with-oniguruma here. jobs: installed:- runs-on: ubuntu-24.04+ runs-on: ubuntu-26.04 steps: - name: Clone repository uses: actions/checkout@v7@@ -42,7 +42,7 @@ jobs: tests/*.log disabled:- runs-on: ubuntu-24.04+ runs-on: ubuntu-26.04 steps: - name: Clone repository uses: actions/checkout@v7
.github/workflows/valgrind.yml
@@ -7,7 +7,7 @@ on: jobs: linux:- runs-on: ubuntu-24.04+ runs-on: ubuntu-26.04 steps: - name: Clone repository uses: actions/checkout@v7