GHA: canary-matrix.yml maintenance +ubuntu-26.04 +gcc-16 +clang22
This commit is contained in:
parent
86fbd2b50f
commit
3fb47d9668
|
|
@ -12,40 +12,83 @@ jobs:
|
||||||
strategy:
|
strategy:
|
||||||
max-parallel: 3
|
max-parallel: 3
|
||||||
matrix:
|
matrix:
|
||||||
os: [ubuntu-24.04, ubuntu-22.04]
|
os: [ubuntu-26.04, ubuntu-24.04, ubuntu-22.04]
|
||||||
# Configure Options
|
# Configure Options
|
||||||
# X11 OGL CAIRO
|
# X11 OGL CAIRO
|
||||||
pkgs: [all, none, no_tk_tcl_rl, no_tk_tcl_brl, no_zlib, no_gc_gl_gu, no_gc, no_gl_gu]
|
pkgs: [all, none, no_tk_tcl_rl, no_tk_tcl_brl, no_zlib, no_gc_gl_gu, no_gc, no_gl_gu]
|
||||||
# Toolchain
|
# Toolchain:
|
||||||
# ubuntu-20.04 [gcc-9, clang-10]
|
# ubuntu-20.04 [gcc-9, clang-10] # gcc-7 .. gcc-10 / clang-7 .. clang-12 + clang-18
|
||||||
# ubuntu-22.04 [gcc-11, clang-14]
|
# ubuntu-22.04 [gcc-11, clang-14] # gcc-9 .. gcc-12 / clang-11 .. clang-15
|
||||||
# ubuntu-24.04 [gcc-13, clang-18]
|
# ubuntu-24.04 [gcc-13, clang-18] # gcc-9 .. gcc-14 / clang-14 .. clang-20
|
||||||
tc: [default, gcc-10, gcc-11, gcc-12, gcc-13, gcc-14, clang-14, clang-15, clang-17, clang-18, clang-19]
|
# ubuntu-26.04 [gcc-15, clang-21] # gcc-11 .. gcc-16 / clang-17 .. clang-22
|
||||||
|
tc: [default, gcc-10, gcc-11, gcc-12, gcc-13, gcc-14, gcc-15, gcc-16, clang-14, clang-15, clang-16, clang-17, clang-18, clang-19, clang-20, clang-21, clang-22]
|
||||||
exclude:
|
exclude:
|
||||||
|
# These exclusions are mainly because they are unavailable or already covered
|
||||||
|
# gcc-10 .. gcc-12
|
||||||
- os: ubuntu-22.04
|
- os: ubuntu-22.04
|
||||||
tc: gcc-13
|
tc: gcc-13 # unavail (too new)
|
||||||
- os: ubuntu-22.04
|
- os: ubuntu-22.04
|
||||||
tc: gcc-14
|
tc: gcc-14 # unavail (too new)
|
||||||
- os: ubuntu-22.04
|
- os: ubuntu-22.04
|
||||||
tc: clang-17
|
tc: gcc-15 # unavail (too new)
|
||||||
|
- os: ubuntu-22.04
|
||||||
|
tc: gcc-16 # unavail (too new)
|
||||||
|
# clang-14 .. clang-15
|
||||||
|
- os: ubuntu-22.04
|
||||||
|
tc: clang-16 # unavail (too new)
|
||||||
|
- os: ubuntu-22.04
|
||||||
|
tc: clang-17 # unavail (too new)
|
||||||
- os: ubuntu-22.04 # some sources show this as present but not found
|
- os: ubuntu-22.04 # some sources show this as present but not found
|
||||||
tc: clang-18
|
tc: clang-18 # unavail (too new)
|
||||||
- os: ubuntu-22.04
|
- os: ubuntu-22.04
|
||||||
tc: clang-19
|
tc: clang-19 # unavail (too new)
|
||||||
|
- os: ubuntu-22.04
|
||||||
|
tc: clang-20 # unavail (too new)
|
||||||
|
- os: ubuntu-22.04
|
||||||
|
tc: clang-21 # unavail (too new)
|
||||||
|
- os: ubuntu-22.04
|
||||||
|
tc: clang-22 # unavail (too new)
|
||||||
|
|
||||||
- os: ubuntu-24.04
|
- os: ubuntu-24.04
|
||||||
tc: gcc-10
|
tc: gcc-10 # covered with 22.04
|
||||||
- os: ubuntu-24.04
|
- os: ubuntu-24.04
|
||||||
tc: gcc-11
|
tc: gcc-11 # covered with 22.04
|
||||||
|
# gcc-12 .. gcc-14
|
||||||
- os: ubuntu-24.04
|
- os: ubuntu-24.04
|
||||||
tc: clang-14
|
tc: gcc-15 # unavail (too new)
|
||||||
- os: ubuntu-24.04
|
- os: ubuntu-24.04
|
||||||
tc: clang-15
|
tc: gcc-16 # unavail (too new)
|
||||||
|
- os: ubuntu-24.04
|
||||||
|
tc: clang-14 # covered with 22.04
|
||||||
|
- os: ubuntu-24.04
|
||||||
|
tc: clang-15 # covered with 22.04
|
||||||
|
# clang-16 .. clang-20
|
||||||
|
- os: ubuntu-24.04
|
||||||
|
tc: clang-21 # unavail (too new)
|
||||||
|
- os: ubuntu-24.04
|
||||||
|
tc: clang-22 # unavail (too new)
|
||||||
|
|
||||||
|
- os: ubuntu-26.04
|
||||||
|
tc: gcc-10 # unavail (too old)
|
||||||
|
- os: ubuntu-26.04
|
||||||
|
tc: gcc-11 # covered with 22.04
|
||||||
|
- os: ubuntu-26.04
|
||||||
|
tc: gcc-12 # covered with 24.04
|
||||||
|
- os: ubuntu-26.04
|
||||||
|
tc: gcc-13 # covered with 24.04
|
||||||
|
# gcc-14 .. gcc-16
|
||||||
|
- os: ubuntu-26.04
|
||||||
|
tc: clang-14 # unavail
|
||||||
|
- os: ubuntu-26.04
|
||||||
|
tc: clang-15 # unavail
|
||||||
|
- os: ubuntu-26.04
|
||||||
|
tc: clang-16 # unavail
|
||||||
|
# clang-17 .. clang-22
|
||||||
fail-fast: false
|
fail-fast: false
|
||||||
runs-on: ${{ matrix.os }}
|
runs-on: ${{ matrix.os }}
|
||||||
steps:
|
steps:
|
||||||
- name: Checkout
|
- name: Checkout
|
||||||
uses: actions/checkout@v4
|
uses: actions/checkout@v7
|
||||||
|
|
||||||
- name: Matrix Check
|
- name: Matrix Check
|
||||||
env:
|
env:
|
||||||
|
|
@ -128,6 +171,11 @@ jobs:
|
||||||
|
|
||||||
echo "CONFIGURE_ARGS=${_configure_args[*]}" >> $GITHUB_ENV
|
echo "CONFIGURE_ARGS=${_configure_args[*]}" >> $GITHUB_ENV
|
||||||
|
|
||||||
|
# -std=c17 needed by gcc-15 gcc-16
|
||||||
|
echo "BUILD_CFLAGS=-std=c17 -D_DEFAULT_SOURCE=1" >> $GITHUB_ENV
|
||||||
|
#echo "BUILD_CXXFLAGS=" >> $GITHUB_ENV
|
||||||
|
#echo "BUILD_LDFLAGS=" >> $GITHUB_ENV
|
||||||
|
|
||||||
- name: Setup Toolchain
|
- name: Setup Toolchain
|
||||||
env:
|
env:
|
||||||
MATRIX_TC: ${{ matrix.tc }}
|
MATRIX_TC: ${{ matrix.tc }}
|
||||||
|
|
@ -208,9 +256,26 @@ jobs:
|
||||||
export CPP="clang-cpp-${BUILD_CLANG_VERSION}"
|
export CPP="clang-cpp-${BUILD_CLANG_VERSION}"
|
||||||
fi
|
fi
|
||||||
|
|
||||||
|
if [ -n "$BUILD_CFLAGS" ]
|
||||||
|
then
|
||||||
|
export CFLAGS="${BUILD_CFLAGS}"
|
||||||
|
fi
|
||||||
|
if [ -n "$BUILD_CXXFLAGS" ]
|
||||||
|
then
|
||||||
|
export CXXFLAGS="${BUILD_CXXFLAGS}"
|
||||||
|
fi
|
||||||
|
if [ -n "$BUILD_LDFLAGS" ]
|
||||||
|
then
|
||||||
|
export LDFLAGS="${BUILD_LDFLAGS}"
|
||||||
|
fi
|
||||||
|
|
||||||
set -o pipefail # due to pipe inside CI
|
set -o pipefail # due to pipe inside CI
|
||||||
./configure $CONFIGURE_ARGS 2>&1 | tee CONFIGURE.LOG
|
./configure $CONFIGURE_ARGS 2>&1 | tee CONFIGURE.LOG
|
||||||
|
|
||||||
|
unset CFLAGS
|
||||||
|
unset CXXFLAGS
|
||||||
|
unset LDFLAGS
|
||||||
|
|
||||||
egrep "^(CPP|CXX|CC)\s" defs.mak
|
egrep "^(CPP|CXX|CC)\s" defs.mak
|
||||||
|
|
||||||
# Add -Wall for CI loggings
|
# Add -Wall for CI loggings
|
||||||
|
|
|
||||||
Loading…
Reference in New Issue