@@ -74,12 +74,20 @@ jobs:
7474 include :
7575 - os : ubuntu-latest
7676 arch : amd64
77+ cc : gcc
78+ cxx : g++
7779 - os : ubuntu-24.04-arm
7880 arch : arm64
81+ cc : gcc
82+ cxx : g++
7983 - os : macos-14
8084 arch : arm64
85+ cc : gcc-14
86+ cxx : g++-14
8187 - os : macos-15-intel
8288 arch : amd64
89+ cc : gcc-14
90+ cxx : g++-14
8391 runs-on : ${{ matrix.os }}
8492 steps :
8593 - uses : actions/checkout@v4
8997 run : sudo apt-get update && sudo apt-get install -y libsqlite3-dev zlib1g-dev
9098
9199 - name : Run C tests (ASan + UBSan)
92- run : make -j$(nproc 2>/dev/null || sysctl -n hw.ncpu) -f Makefile.cbm test
100+ run : make -j$(nproc 2>/dev/null || sysctl -n hw.ncpu) -f Makefile.cbm test CC=${{ matrix.cc }} CXX=${{ matrix.cxx }}
93101
94102 # ── Step 3: Build binaries (standard + UI, all OS) ───────────
95103 build-unix :
@@ -100,15 +108,23 @@ jobs:
100108 - os : ubuntu-latest
101109 goos : linux
102110 goarch : amd64
111+ cc : gcc
112+ cxx : g++
103113 - os : ubuntu-24.04-arm
104114 goos : linux
105115 goarch : arm64
116+ cc : gcc
117+ cxx : g++
106118 - os : macos-14
107119 goos : darwin
108120 goarch : arm64
121+ cc : gcc-14
122+ cxx : g++-14
109123 - os : macos-15-intel
110124 goos : darwin
111125 goarch : amd64
126+ cc : gcc-14
127+ cxx : g++-14
112128 runs-on : ${{ matrix.os }}
113129 steps :
114130 - uses : actions/checkout@v4
@@ -127,6 +143,7 @@ jobs:
127143 run : |
128144 CLEAN_VERSION="${VERSION#v}"
129145 make -j$(nproc 2>/dev/null || sysctl -n hw.ncpu) -f Makefile.cbm cbm \
146+ CC=${{ matrix.cc }} CXX=${{ matrix.cxx }} \
130147 CFLAGS_EXTRA="-DCBM_VERSION=\"\\\"$CLEAN_VERSION\\\"\""
131148
132149 - name : Archive standard binary
@@ -140,6 +157,7 @@ jobs:
140157 run : |
141158 CLEAN_VERSION="${VERSION#v}"
142159 make -j$(nproc 2>/dev/null || sysctl -n hw.ncpu) -f Makefile.cbm cbm-with-ui \
160+ CC=${{ matrix.cc }} CXX=${{ matrix.cxx }} \
143161 CFLAGS_EXTRA="-DCBM_VERSION=\"\\\"$CLEAN_VERSION\\\"\""
144162
145163 - name : Archive UI binary
0 commit comments