From: Viktor Szakats Date: Mon, 5 Jan 2026 13:08:58 +0000 (+0100) Subject: GHA/macos: drop compiler matrix for macos jobs X-Git-Tag: curl-8_18_0~12 X-Git-Url: http://git.ipfire.org/cgi-bin/gitweb.cgi?a=commitdiff_plain;h=0ec07e38f34625627e95de9ed43b8a2399ba8e9d;p=thirdparty%2Fcurl.git GHA/macos: drop compiler matrix for macos jobs To reduce the number of jobs, and the time spent running macos runners. The curl codebase has just a few Apple-specific parts, and they remain well-covered after this patch. Makes the number of jobs 24, down from 32. Perhaps more jobs could be merged or dropped, and CPU use reduced by moving some to cmake. Unique, but not Apple-specific jobs may also be moved to Linux. Follow-up to b869932392512d1c3a4d5396361f9acdd110ba4b #20178 Closes #20187 --- diff --git a/.github/workflows/macos.yml b/.github/workflows/macos.yml index f73e4ff653..7fc02ae555 100644 --- a/.github/workflows/macos.yml +++ b/.github/workflows/macos.yml @@ -205,21 +205,20 @@ jobs: fi macos: - name: "${{ matrix.build.generate && 'CM' || 'AM' }} ${{ matrix.compiler }} ${{ matrix.build.name }}" + name: "${{ matrix.build.generate && 'CM' || 'AM' }} ${{ matrix.build.compiler }} ${{ matrix.build.name }}" runs-on: 'macos-15' timeout-minutes: 25 env: DEVELOPER_DIR: "/Applications/Xcode${{ matrix.build.xcode && format('_{0}', matrix.build.xcode) || '' }}.app/Contents/Developer" - CC: '${{ matrix.compiler }}' + CC: '${{ matrix.build.compiler }}' MATRIX_BUILD: ${{ matrix.build.generate && 'cmake' || 'autotools' }} - MATRIX_COMPILER: '${{ matrix.compiler }}' + MATRIX_COMPILER: '${{ matrix.build.compiler }}' MATRIX_INSTALL: '${{ matrix.build.install }}' MATRIX_INSTALL_STEPS: '${{ matrix.build.install_steps }}' MATRIX_MACOS_VERSION_MIN: '${{ matrix.build.macos-version-min }}' strategy: fail-fast: false matrix: - compiler: [clang, llvm@18, gcc-13] build: # autotools - name: '!ssl !debug brotli zstd' @@ -287,6 +286,7 @@ jobs: tflags: '--test-event --min=1300' # cmake - name: 'OpenSSL gsasl rtmp AppleIDN SecTrust +examples' + compiler: clang install: libnghttp3 libngtcp2 gsasl rtmpdump generate: -DOPENSSL_ROOT_DIR=/opt/homebrew/opt/openssl -DCURL_USE_GSASL=ON -DUSE_LIBRTMP=ON -DUSE_APPLE_IDN=ON -DUSE_NGTCP2=ON -DCURL_DISABLE_VERBOSE_STRINGS=ON -DUSE_APPLE_SECTRUST=ON - name: 'MultiSSL AppleIDN clang-tidy +examples' @@ -313,9 +313,11 @@ jobs: -DCURL_CLANG_TIDY=ON -DCLANG_TIDY=/opt/homebrew/opt/llvm/bin/clang-tidy - name: 'LibreSSL openldap krb5 c-ares +examples' + compiler: clang install: libressl krb5 openldap generate: -DENABLE_DEBUG=ON -DOPENSSL_ROOT_DIR=/opt/homebrew/opt/libressl -DENABLE_ARES=ON -DCURL_USE_GSSAPI=ON -DGSS_ROOT_DIR=/opt/homebrew/opt/krb5 -DLDAP_INCLUDE_DIR=/opt/homebrew/opt/openldap/include -DLDAP_LIBRARY=/opt/homebrew/opt/openldap/lib/libldap.dylib -DLDAP_LBER_LIBRARY=/opt/homebrew/opt/openldap/lib/liblber.dylib - name: 'wolfSSL !ldap brotli zstd' + compiler: clang install: brotli wolfssl zstd install_steps: pytest generate: -DCURL_USE_WOLFSSL=ON -DCURL_DISABLE_LDAP=ON -DUSE_ECH=ON @@ -325,6 +327,7 @@ jobs: install_steps: codeset-test generate: -DCURL_USE_MBEDTLS=ON -DCURL_DISABLE_LDAP=ON -DCURL_DEFAULT_SSL_BACKEND=mbedtls -DCURL_USE_OPENSSL=ON -DUSE_APPLE_IDN=ON - name: 'GnuTLS !ldap krb5 +examples' + compiler: clang install: gnutls nettle krb5 generate: -DENABLE_DEBUG=ON -DCURL_USE_GNUTLS=ON -DCURL_USE_OPENSSL=OFF -DCURL_USE_GSSAPI=ON -DGSS_ROOT_DIR=/opt/homebrew/opt/krb5 -DCURL_DISABLE_LDAP=ON -DUSE_SSLS_EXPORT=ON - name: 'aws-lc' @@ -354,14 +357,6 @@ jobs: install_steps: torture generate: -DENABLE_DEBUG=ON -DBUILD_SHARED_LIBS=OFF -DENABLE_THREADED_RESOLVER=OFF -DOPENSSL_ROOT_DIR=/opt/homebrew/opt/openssl -DUSE_OPENSSL_QUIC=ON tflags: '-t --shallow=25 --min=628 1251 to 9999' - exclude: - # opt out jobs from combinations that have the compiler set manually - - { compiler: llvm@18, build: { compiler: 'clang' } } - - { compiler: llvm@18, build: { compiler: 'gcc-13' } } - - { compiler: gcc-13, build: { compiler: 'clang' } } - - { compiler: gcc-13, build: { compiler: 'llvm@18' } } - - { compiler: clang, build: { compiler: 'gcc-13' } } - - { compiler: clang, build: { compiler: 'llvm@18' } } steps: - name: 'brew install'