Discussion:
configure script does not handle --with-darwinssl correctly?
Vadim Grinshpun via curl-library
2021-06-06 04:28:17 UTC
Permalink
Hi,

I've been trying to get curl to build on a Mac (11.4/Big Sur) with
Secure Transport support, and ran into what I believe is surprising
behavior of curl's configure script.

The configure script is invoked with the "--with-darwinssl" option, but
then the message below is shown, and curl winds up being built without
SSL support at all:

configure: WARNING: SSL disabled, you will not be able to use HTTPS,
FTPS, NTLM and more.
configure: WARNING: Use --with-openssl, --with-gnutls,
--with-wolfssl, --with-mbedtls, --with-nss, --with-schannel,
--with-secure-transport, --with-mesalink, --with-amissl,
--with-bearssl or --with-rustls to address this.

The docs <https://curl.se/docs/install.html> seem to indicate that
--with-darwinssl and --with-secure-transport should be equivalent,
however the above message disagrees.


The curl version is 7.77.

The summary of configure's output is at the end of the email, in case
it's useful.

The exact configure script invocation is:
   ./configure --prefix=/opt/local --disable-silent-rules --enable-ipv6
--without-brotli --without-cyassl --without-gnutls --without-gssapi
--without-libgsasl --without-libmetalink --without-librtmp
--without-libssh2 --without-mbedtls --without-nghttp2 --without-nss
--without-ssl --with-darwinssl --disable-ares --disable-ldap
--disable-ldaps --with-libidn2=/opt/local --with-zlib=/opt/local
ac_cv_prog_AWK=/usr/bin/awk --without-ca-bundle


The build is actually run in the context of a MacPort install command,
but I don't think MacPorts is doing anything unusual here; the exact
invocation was:
    sudo port -s  -v install curl +darwinssl

Could this be a bug? Or is there something wrong with how the configure
script is being invoked?

Thanks for any help, and let me know if more info is required.

-Vadim G.

----
configure: Configured to build curl/libcurl:

  Host setup:       x86_64-apple-darwin20.5.0
  Install prefix:   /opt/local
  Compiler:         /usr/bin/clang
   CFLAGS:          -pipe -Os -mmacosx-version-min=11.0
-isysroot/Library/Developer/CommandLineTools/SDKs/MacOSX11.sdk -arch
x86_64 -Qunused-arguments -Werror=partial-availability
   CPPFLAGS:        -isystem /opt/local/include
-isysroot/Library/Developer/CommandLineTools/SDKs/MacOSX11.sdk -isystem
/opt/local/include
   LDFLAGS:         -L/opt/local/lib -Wl,-headerpad_max_install_names
-Wl,-syslibroot,/Library/Developer/CommandLineTools/SDKs/MacOSX11.sdk
-arch x86_64 -framework SystemConfiguration -L/opt/local/lib
-L/opt/local/lib
   LIBS:            -lidn2 -lpsl -lzstd -lz

  curl version:     7.77.0
  SSL:              no
(--with-{openssl,gnutls,nss,mbedtls,wolfssl,schannel,secure-transport,mesalink,amissl,bearssl,rustls}
)
  SSH:              no      (--with-{libssh,libssh2})
  zlib:             enabled
  brotli:           no      (--with-brotli)
  zstd:             enabled (libzstd)
  GSS-API:          no      (--with-gssapi)
  GSASL:            no      (--with-gsasl)
  TLS-SRP:          no      (--enable-tls-srp)
  resolver:         POSIX threaded
  IPv6:             enabled
  Unix sockets:     enabled
  IDN:              enabled (libidn2)
  Build libcurl:    Shared=yes, Static=yes
  Built-in manual:  enabled
  --libcurl option: enabled (--disable-libcurl-option)
  Verbose errors:   enabled (--disable-verbose)
  Code coverage:    disabled
  SSPI:             no      (--enable-sspi)
  ca cert bundle:   no
  ca cert path:
  ca fallback:
  LDAP:             no      (--enable-ldap / --with-ldap-lib /
--with-lber-lib)
  LDAPS:            no      (--enable-ldaps)
  RTSP:             enabled
  RTMP:             no      (--with-librtmp)
  Metalink:         no      (--with-libmetalink)
  PSL:              enabled
  Alt-svc:          enabled (--disable-alt-svc)
  HSTS:             no      (--enable-hsts)
  HTTP1:            enabled (internal)
  HTTP2:            no      (--with-nghttp2, --with-hyper)
  HTTP3:            no      (--with-ngtcp2, --with-quiche)
  ECH:              no      (--enable-ech)
  Protocols:        DICT FILE FTP GOPHER HTTP IMAP MQTT POP3 RTSP SMTP
TELNET TFTP
  Features:         AsynchDNS IDN IPv6 Largefile PSL UnixSockets
alt-svc libz zstd
Daniel Stenberg via curl-library
2021-06-06 10:13:54 UTC
Permalink
Post by Vadim Grinshpun via curl-library
The docs <https://curl.se/docs/install.html> seem to indicate that
--with-darwinssl and --with-secure-transport should be equivalent, however
the above message disagrees.
Correct, --with-secure-transport is the only name of the flag since a while
back.

I've filed a PR to fix the docs: https://github.com/curl/curl/pull/7200
--
/ daniel.haxx.se
| Commercial curl support up to 24x7 is available!
| Private help, bug fixes, support, ports, new features
| https://www.wolfssl.com/contact/
-------------------------------------------------------------------
Unsubscribe: https://cool.haxx.se/list/listinfo/curl-library
Etiquette: https://curl.se/mail/etiquett
Vadim Grinshpun via curl-library
2021-06-06 14:32:01 UTC
Permalink
Post by Daniel Stenberg via curl-library
Post by Vadim Grinshpun via curl-library
The docs
<https://urldefense.com/v3/__https://curl.se/docs/install.html__;!!GjvTz_vk!Cu6SzIWdizDPzZRSzqY5i0qJTYT3ZS4c3Tu-CKX8uYb4g31qeN995joUW48iBc8$
seem to indicate that --with-darwinssl and --with-secure-transport
should be equivalent, however the above message disagrees.
Correct, --with-secure-transport is the only name of the flag since a
while back.
https://urldefense.com/v3/__https://github.com/curl/curl/pull/7200__;!!GjvTz_vk!Cu6SzIWdizDPzZRSzqY5i0qJTYT3ZS4c3Tu-CKX8uYb4g31qeN995joUtad1CQo$
Thanks for the confirmation.
Shouldn't the configure script fail if --with-darwinssl is provided? Or
does that option have a different meaning?
-------------------------------------------------------------------
Unsubscribe: https://cool.haxx.se/list/listinfo/curl-library
Etiquette: https:
Daniel Stenberg via curl-library
2021-06-06 14:46:29 UTC
Permalink
Shouldn't the configure script fail if --with-darwinssl is provided? Or does
that option have a different meaning?
It should! I've amended the PR just now with that fix as well.
--
/ daniel.haxx.se
| Commercial curl support up to 24x7 is available!
| Private help, bug fixes, support, ports, new features
| https://www.wolfssl.com/contact/
-------------------------------------------------------------------
Unsubscribe: https://cool.haxx.se/list/listinfo/curl-library
Etiquette: https://curl.se/mail/etique
Loading...