3232 - gentoo/stage3:musl-hardened
3333 - gentoo/stage3:hardened
3434 - freebsd
35+ - freebsd:14.4
36+ - freebsd:14.4:aarch64
3537 config :
3638 - cmake_args : " -DENABLE_API=ON -DCMAKE_C_COMPILER=gcc"
3739 - cmake_args : " -DENABLE_API=ON -DCMAKE_C_COMPILER=clang"
@@ -41,16 +43,20 @@ jobs:
4143 - os : debian:oldstable
4244 config :
4345 cmake_args : " -DENABLE_API=ON -DCMAKE_C_COMPILER=clang"
46+ # CMake can't find Threads support using GCC
47+ - os : freebsd:14.4:aarch64
48+ config :
49+ cmake_args : " -DENABLE_API=ON -DCMAKE_C_COMPILER=gcc"
4450
4551 runs-on : ubuntu-latest
4652
4753 steps :
4854 - name : Checkout code
49- uses : actions/checkout@v2
55+ uses : actions/checkout@v6
5056
5157 - name : Restore package cache
5258 if : startsWith(matrix.os, 'gentoo/')
53- uses : actions/cache/restore@v4
59+ uses : actions/cache/restore@v5
5460 with :
5561 path : pkg-cache
5662 key : never-exists
@@ -111,12 +117,17 @@ jobs:
111117 }
112118 cache_cksum > /tmp/initial-pkg-cache.cksum
113119
120+ cat <<\EOF >>/etc/portage/make.conf
121+ EMERGE_DEFAULT_OPTS="$EMERGE_DEFAULT_OPTS --quiet-build y --tree"
122+ FETCHCOMMAND="$FETCHCOMMAND --progress=dot:giga" # assumes wget default
123+ EOF
124+
114125 emerge --sync --quiet || true # can fail if cache is recent enough
115126 else
116127 emerge --sync --quiet
117128 fi
118129 '
119- INSTALL_CMD="emerge -1 sec-keys/openpgp-keys-gentoo-release && getuto && cat /etc/portage/make.conf && emerge -vuDtkg1 @world && USE='-httpsrr -perl -extra -static-analyzer compiler-rt -openmp sanitize -adns -alt-svc -ftp -hsts -http2 -http3 -imap -pop3 -progress-meter -psl -quic -curl_quic_openssl -smtp -tftp -websockets' emerge -vuDtkg1 --noreplace --jobs=\$(nproc) --buildpkg"
130+ INSTALL_CMD="emerge -1 sec-keys/openpgp-keys-gentoo-release && getuto && cat /etc/portage/make.conf && emerge -vuDkg1 @world && USE='-httpsrr -perl -extra -static-analyzer compiler-rt -openmp sanitize -adns -alt-svc -ftp -hsts -http2 -http3 -imap -pop3 -progress-meter -psl -quic -curl_quic_openssl -smtp -tftp -websockets' emerge -vuDkg1 --noreplace --jobs=\$(nproc) --buildpkg"
120131 PACKAGES="dev-vcs/git dev-build/cmake net-misc/curl dev-libs/jansson dev-libs/libsodium virtual/pkgconfig app-portage/gentoolkit"
121132 [[ "${{ matrix.os }}" =~ musl ]] && PACKAGES="$PACKAGES sys-libs/argp-standalone"
122133 PACKAGES_API="net-libs/libmicrohttpd"
@@ -181,7 +192,7 @@ jobs:
181192
182193 - name : Save package cache
183194 if : steps.docker-build.outputs.save_cache == 'true'
184- uses : actions/cache/save@v4
195+ uses : actions/cache/save@v5
185196 with :
186197 path : pkg-cache
187198 key : ${{ matrix.os }}/pkg-cache/${{ matrix.config.cmake_args }}/${{ github.sha }}
@@ -190,6 +201,8 @@ jobs:
190201 if : startsWith(matrix.os, 'freebsd')
191202 uses : vmactions/freebsd-vm@v1
192203 with :
204+ release : ${{ contains(matrix.os, ':14.4') && '14.4' || '' }}
205+ arch : ${{ endsWith(matrix.os, ':aarch64') && 'aarch64' || '' }}
193206 prepare : |
194207 PACKAGES="git cmake pkgconf curl jansson libsodium libmicrohttpd argp-standalone libepoll-shim"
195208 if echo "${{ matrix.config.cmake_args }}" | grep -q "CMAKE_C_COMPILER=gcc"; then
0 commit comments