From 983dc04425a19b8ef6a7643e07bc34de20d82eba Mon Sep 17 00:00:00 2001 From: Sebastiano Merlino Date: Wed, 29 Apr 2026 13:52:32 +0200 Subject: [PATCH] Fix macOS CI: disable curl optional deps and bust stale cache curl 7.75.0's configure was auto-detecting nghttp2 from Homebrew on the runner that built the cache. The cached tree baked in include paths to that Homebrew layout. On the current macos-latest (15.7.4, ARM, /opt/homebrew), `sudo make install` triggers a recompile of altsvc.lo that fails with `'nghttp2/nghttp2.h' file not found`. Disable nghttp2 and other optional library auto-detection (libidn2, libssh2, brotli, zstd, librtmp, libpsl, ldap) so the build is deterministic across runner images. Tests only use basic libcurl HTTP. Cache key bumped to v3 to discard the broken cache. Co-Authored-By: Claude Opus 4.7 (1M context) --- .github/workflows/release.yml | 4 ++-- .github/workflows/verify-build.yml | 6 +++--- 2 files changed, 5 insertions(+), 5 deletions(-) diff --git a/.github/workflows/release.yml b/.github/workflows/release.yml index 9430f7ac..4681b92e 100644 --- a/.github/workflows/release.yml +++ b/.github/workflows/release.yml @@ -203,7 +203,7 @@ jobs: uses: actions/cache@v4 with: path: curl-7.75.0 - key: macos-latest-CURL-pre-built-v2 + key: macos-latest-CURL-pre-built-v3 - name: Build curl (if not cached) if: steps.cache-curl.outputs.cache-hit != 'true' @@ -211,7 +211,7 @@ jobs: curl https://libhttpserver.s3.amazonaws.com/travis_stuff/curl-7.75.0.tar.gz -o curl-7.75.0.tar.gz tar -xzf curl-7.75.0.tar.gz cd curl-7.75.0 - ./configure --with-darwinssl --without-ssl + ./configure --with-darwinssl --without-ssl --without-nghttp2 --without-libidn2 --without-libssh2 --without-brotli --without-zstd --without-librtmp --without-libpsl --disable-ldap --disable-ldaps make - name: Install curl diff --git a/.github/workflows/verify-build.yml b/.github/workflows/verify-build.yml index db762069..3ad12e89 100644 --- a/.github/workflows/verify-build.yml +++ b/.github/workflows/verify-build.yml @@ -467,15 +467,15 @@ jobs: uses: actions/cache@v4 with: path: curl-7.75.0 - key: ${{ matrix.os }}-CURL-pre-built-v2 + key: ${{ matrix.os }}-CURL-pre-built-v3 if: ${{ matrix.os == 'macos-latest' }} - + - name: Build CURL (for testing) run: | curl https://libhttpserver.s3.amazonaws.com/travis_stuff/curl-7.75.0.tar.gz -o curl-7.75.0.tar.gz ; tar -xzf curl-7.75.0.tar.gz ; cd curl-7.75.0 ; - ./configure --with-darwinssl --without-ssl ; + ./configure --with-darwinssl --without-ssl --without-nghttp2 --without-libidn2 --without-libssh2 --without-brotli --without-zstd --without-librtmp --without-libpsl --disable-ldap --disable-ldaps ; make ; if: ${{ matrix.os == 'macos-latest' && steps.cache-CURL.outputs.cache-hit != 'true' }}