From e2ee07231fc806dbb317704e618c159d6f0bc94b Mon Sep 17 00:00:00 2001 From: Dan Rosser Date: Sat, 19 Jul 2025 01:38:07 +1000 Subject: [PATCH 1/4] cURL macOS fix (cherry picked from commit 40d2ff3d11072ba4413e3636b2a73a808bc3e2d0) --- apothecary/formulas/curl/curl.sh | 28 ++++++++++++++-------------- 1 file changed, 14 insertions(+), 14 deletions(-) diff --git a/apothecary/formulas/curl/curl.sh b/apothecary/formulas/curl/curl.sh index 33c48badd..77cbcdddc 100755 --- a/apothecary/formulas/curl/curl.sh +++ b/apothecary/formulas/curl/curl.sh @@ -14,7 +14,7 @@ FORMULA_DEPENDS=("openssl" "zlib" "brotli") VER=8.15.0 VER_D=8_15_0 SHA1="5b4e79489e2d24da13d2fa75897f69ca5fff741e" -BUILD_ID=1 +BUILD_ID=2 DEFINES="" USE_OPENSSL=ON @@ -330,18 +330,18 @@ function build() { elif [[ "$TYPE" =~ ^(osx|ios|tvos|xros|catos|watchos)$ ]]; then - # if [[ ! "$TYPE" =~ ^(tvos|catos|watchos)$ ]]; then - # export OPENSSL_LIBRARIES=$OF_LIBS_OPENSSL_ABS_PATH/lib/$TYPE/$PLATFORM - # OPENSSL_ROOT="$LIBS_ROOT/openssl/" - # OPENSSL_INCLUDE_DIR="$LIBS_ROOT/openssl/include" - # OPENSSL_LIBRARY="$LIBS_ROOT/openssl/lib/$TYPE/$PLATFORM/libssl.a" - # OPENSSL_LIBRARY_CRYPT="$LIBS_ROOT/openssl/lib/$TYPE/$PLATFORM/libcrypto.a" - # USE_SECURE_TRANSPORT=OFF - # CURL_ENABLE_SSL=ON - # SSL_DEFS="-DOPENSSL_ROOT_DIR=${OF_LIBS_OPENSSL_ABS_PATH} \ - # -DOPENSSL_INCLUDE_DIR=${OF_LIBS_OPENSSL_ABS_PATH}/include \ - # -DOPENSSL_LIBRARIES=${OF_LIBS_OPENSSL_ABS_PATH}/lib/${TYPE}/${PLATFORM}/libssl.a:${OF_LIBS_OPENSSL_ABS_PATH}/lib/${TYPE}/${PLATFORM}/libcrypto.a" - # else + if [[ "$TYPE" =~ ^(osx|ios)$ ]]; then + export OPENSSL_LIBRARIES=$OF_LIBS_OPENSSL_ABS_PATH/lib/$TYPE/$PLATFORM + OPENSSL_ROOT="$LIBS_ROOT/openssl/" + OPENSSL_INCLUDE_DIR="$LIBS_ROOT/openssl/include" + OPENSSL_LIBRARY="$LIBS_ROOT/openssl/lib/$TYPE/$PLATFORM/libssl.a" + OPENSSL_LIBRARY_CRYPT="$LIBS_ROOT/openssl/lib/$TYPE/$PLATFORM/libcrypto.a" + USE_SECURE_TRANSPORT=OFF + CURL_ENABLE_SSL=ON + SSL_DEFS="-DOPENSSL_ROOT_DIR=${OF_LIBS_OPENSSL_ABS_PATH} \ + -DOPENSSL_INCLUDE_DIR=${OF_LIBS_OPENSSL_ABS_PATH}/include \ + -DOPENSSL_LIBRARIES=${OF_LIBS_OPENSSL_ABS_PATH}/lib/${TYPE}/${PLATFORM}/libssl.a:${OF_LIBS_OPENSSL_ABS_PATH}/lib/${TYPE}/${PLATFORM}/libcrypto.a" + else # disabled for tvOS SSL OPENSSL_ROOT="$LIBS_ROOT" OPENSSL_INCLUDE_DIR="" @@ -353,7 +353,7 @@ function build() { CURL_ENABLE_SSL=OFF SSL_DEFS="" - # fi + fi ZLIB_ROOT="$LIBS_ROOT/zlib/" ZLIB_INCLUDE_DIR="$LIBS_ROOT/zlib/include" From aa92a29a401de8a109a115865ffa7b94a9f17c61 Mon Sep 17 00:00:00 2001 From: Dan Rosser Date: Sat, 19 Jul 2025 01:58:37 +1000 Subject: [PATCH 2/4] SSL / SecureTransport --- apothecary/formulas/curl/curl.sh | 11 +++++------ 1 file changed, 5 insertions(+), 6 deletions(-) diff --git a/apothecary/formulas/curl/curl.sh b/apothecary/formulas/curl/curl.sh index 77cbcdddc..dc0444fc5 100755 --- a/apothecary/formulas/curl/curl.sh +++ b/apothecary/formulas/curl/curl.sh @@ -336,23 +336,22 @@ function build() { OPENSSL_INCLUDE_DIR="$LIBS_ROOT/openssl/include" OPENSSL_LIBRARY="$LIBS_ROOT/openssl/lib/$TYPE/$PLATFORM/libssl.a" OPENSSL_LIBRARY_CRYPT="$LIBS_ROOT/openssl/lib/$TYPE/$PLATFORM/libcrypto.a" - USE_SECURE_TRANSPORT=OFF - CURL_ENABLE_SSL=ON + export USE_SECURE_TRANSPORT="OFF" + CURL_ENABLE_SSL="ON" SSL_DEFS="-DOPENSSL_ROOT_DIR=${OF_LIBS_OPENSSL_ABS_PATH} \ -DOPENSSL_INCLUDE_DIR=${OF_LIBS_OPENSSL_ABS_PATH}/include \ -DOPENSSL_LIBRARIES=${OF_LIBS_OPENSSL_ABS_PATH}/lib/${TYPE}/${PLATFORM}/libssl.a:${OF_LIBS_OPENSSL_ABS_PATH}/lib/${TYPE}/${PLATFORM}/libcrypto.a" else - # disabled for tvOS SSL + # Use SecureTransport on platforms that don't support OpenSSL OPENSSL_ROOT="$LIBS_ROOT" OPENSSL_INCLUDE_DIR="" OPENSSL_LIBRARY="" OPENSSL_LIBRARY_CRYPT="" - USE_SECURE_TRANSPORT=ON + export USE_SECURE_TRANSPORT="ON" OPENSSL_PATH="" OF_LIBS_OPENSSL_ABS_PATH="" - CURL_ENABLE_SSL=OFF + CURL_ENABLE_SSL="ON" # SSL both SecureTransport or OpenSSL SSL_DEFS="" - fi ZLIB_ROOT="$LIBS_ROOT/zlib/" From c9b9728fb46c58034f1c2cb30cc942097ae08b4f Mon Sep 17 00:00:00 2001 From: Dan Rosser Date: Sat, 19 Jul 2025 02:27:13 +1000 Subject: [PATCH 3/4] SSL building and cert location --- apothecary/formulas/curl/curl.sh | 6 +++--- 1 file changed, 3 insertions(+), 3 deletions(-) diff --git a/apothecary/formulas/curl/curl.sh b/apothecary/formulas/curl/curl.sh index dc0444fc5..477a9faf3 100755 --- a/apothecary/formulas/curl/curl.sh +++ b/apothecary/formulas/curl/curl.sh @@ -91,7 +91,7 @@ function build() { export OPENSSL_PATH=$OF_LIBS_OPENSSL_ABS_PATH fi - local CACERT_PATH=$(realpath ./cacert.pem) + local CACERT_PATH="./cacert.pem" if [ "$TYPE" == "vs" ]; then export OPENSSL_LIBRARIES=$OF_LIBS_OPENSSL_ABS_PATH/lib/$TYPE/$PLATFORM @@ -330,7 +330,7 @@ function build() { elif [[ "$TYPE" =~ ^(osx|ios|tvos|xros|catos|watchos)$ ]]; then - if [[ "$TYPE" =~ ^(osx|ios)$ ]]; then + if [[ "$TYPE" =~ ^(osx|ios|xros|catos|watchos)$ ]]; then export OPENSSL_LIBRARIES=$OF_LIBS_OPENSSL_ABS_PATH/lib/$TYPE/$PLATFORM OPENSSL_ROOT="$LIBS_ROOT/openssl/" OPENSSL_INCLUDE_DIR="$LIBS_ROOT/openssl/include" @@ -350,7 +350,7 @@ function build() { export USE_SECURE_TRANSPORT="ON" OPENSSL_PATH="" OF_LIBS_OPENSSL_ABS_PATH="" - CURL_ENABLE_SSL="ON" # SSL both SecureTransport or OpenSSL + CURL_ENABLE_SSL="OFF" SSL_DEFS="" fi From c78b5924af26dd8669fa17d3683c6a74c3d28bc0 Mon Sep 17 00:00:00 2001 From: Dan Rosser Date: Sat, 19 Jul 2025 02:35:47 +1000 Subject: [PATCH 4/4] cURL Pem path defaults --- apothecary/formulas/curl/curl.sh | 8 ++++---- 1 file changed, 4 insertions(+), 4 deletions(-) diff --git a/apothecary/formulas/curl/curl.sh b/apothecary/formulas/curl/curl.sh index 477a9faf3..6acd8a2b7 100755 --- a/apothecary/formulas/curl/curl.sh +++ b/apothecary/formulas/curl/curl.sh @@ -127,9 +127,9 @@ function build() { OPENSSL_DEFS="-DCURL_USE_OPENSSL=ON \ -DUSE_OPENSSL=ON \ -DCURL_CA_FALLBACK=ON \ - -DCURL_CA_BUNDLE=$CACERT_PATH \ - -DCURL_CA_EMBED=$CACERT_PATH" - CACERT_PATH=$(realpath "${CACERT_PATH}") + -DCURL_CA_BUNDLE=${CACERT_PATH} \ + -DCURL_CA_EMBED=${CACERT_PATH}" + CACERT_PATH="${CACERT_PATH}" OPENSSL_DEFS="${OPENSSL_DEFS} -DCURL_CA_BUNDLE=${CACERT_PATH} -DCURL_CA_EMBED=${CACERT_PATH}" else OPENSSL_DEFS="-DCURL_USE_OPENSSL=OFF -DUSE_OPENSSL=OFF -DCURL_USE_SCHANNEL=ON" @@ -377,7 +377,7 @@ function build() { -DCMAKE_C_STANDARD=${C_STANDARD} \ -DCMAKE_CXX_STANDARD=${CPP_STANDARD} \ -DCMAKE_CXX_STANDARD_REQUIRED=ON \ - -DCURL_CA_BUNDLE="$CACERT_PATH" \ + -DCURL_CA_BUNDLE="${CACERT_PATH}" \ -DCMAKE_CXX_FLAGS="-DUSE_PTHREADS=1 ${FLAG_RELEASE} -Wno-error=implicit-function-declaration" \ -DCMAKE_C_FLAGS="-DUSE_PTHREADS=1 ${FLAG_RELEASE} -Wno-error=implicit-function-declaration" \ -DENABLE_STRICT_TRY_COMPILE=ON \