jasonacox / Build-OpenSSL-cURL

Scripts to build OpenSSL, HTTP/2 (nghttp2) and cURL (libcurl) for MacOS, iOS and tvOS devices (x86_64, armv7, armv7s, arm64, arm64e). Now Supporting Apple Silicon, OpenSSL 3.0.x with TLS 1.3 and Mac Catalyst builds.
MIT License
433 stars 132 forks source link

Add OpenSSL 3.0 support #63

Closed jasonacox closed 1 year ago

jasonacox commented 1 year ago

Closes #62

jasonacox commented 1 year ago

Build successful:

OPENSSL="3.0.9"     # https://www.openssl.org/source/ 
LIBCURL="8.1.2"     # https://curl.haxx.se/download.html
NGHTTP2="1.55.1"    # https://nghttp2.org/
  cURL
curl 8.1.2 (x86_64-apple-darwin) libcurl/8.1.2 OpenSSL/3.0.9 zlib/1.2.11 brotli/1.0.9 zstd/1.5.5 libidn2/2.3.4 nghttp2/1.55.1
Release-Date: 2023-05-30
Protocols: dict file ftp ftps gopher gophers http https imap imaps ldap ldaps mqtt pop3 pop3s rtsp smb smbs smtp smtps telnet tftp
Features: alt-svc AsynchDNS brotli HSTS HTTP2 HTTPS-proxy IDN IPv6 Largefile libz NTLM NTLM_WB SSL threadsafe TLS-SRP UnixSockets zstd

  OpenSSL
OpenSSL 3.0.9 30 May 2023 (Library: OpenSSL 3.0.9 30 May 2023)
Mon Jul 17 21:19:29 2023 - End

iOS Test Build Success

image image

Mac Catalyst Build Success

image image
jasonacox commented 1 year ago

Build Test Results:

jasonacox commented 1 year ago

Issue: When using the libraries built on a system that as a dynamic linked library for libidn2 (e.g. caused by brew install wget dependencies for example), the resulting framework will error when deploying to iOS targets (since the lib is not there).

Possible solutions:

Updating libcurl-build.sh to disable libidn2.