[MacPorts] #70481: curl @8.9.1: again pulls in a dependency on a newer gcc compiler, which makes bootstrapping problematic
MacPorts
noreply at macports.org
Sun Aug 4 10:02:14 UTC 2024
#70481: curl @8.9.1: again pulls in a dependency on a newer gcc compiler, which
makes bootstrapping problematic
----------------------------+------------------------
Reporter: barracuda156 | Owner: ryandesign
Type: defect | Status: assigned
Priority: Normal | Milestone:
Component: ports | Version: 2.9.3
Resolution: | Keywords: powerpc
Port: curl, nghttp2 |
----------------------------+------------------------
Comment (by ryandesign):
Replying to [comment:4 barracuda156]:
> Maybe make a `+bootstrap` variant for a minimal `curl`?
I'm not in favor of adding something like Ken's minimalcurl port nor
adding a bootstrap variant to the curl port, however I can certainly move
some of the functionality that has dependencies (back) to variants so that
you can turn them off if your don't want them.
curl's always-on dependencies are currently: brotli, libidn2, libpsl,
nghttp2, zlib, and zstd.
brotli, zlib, and zstd are compression algorithms that some web servers
use to deliver uncompressed files to you quicker. brotli and zstd are
newer compression algorithms that either compress better or decompress
faster than older algorithms like zlib. But this compression would not be
used when MacPorts downloads most distfiles (which are almost always
already compressed) or packages (which always are), though it would still
be relevant when using livecheck. I could move brotli and zstd to
variants. zlib is so small and quick to build that I would probably keep
zlib always on and not bother making a variant for that.
libidn2 lets curl use internationalized domain names—those containing non-
ASCII characters. I've can't remember ever seeing a port use such a domain
name to host its distfiles, and if it did, we mirror distfiles on our
servers which don't have IDNs, so you could always get distfiles from
there.
libpsl is the list of public suffixes aka top-level domains (TLDs). It is
important for curl to have access to an accurate list of public suffixes
so that it knows what cookies to allow and which ones to reject, but this
isn't relevant when MacPorts uses curl since we don't tell curl to store
cookies. [https://daniel.haxx.se/blog/2024/01/10/psl-in-curl/ curl
recently started warning if you don't either have libpsl or explicitly
disable psl support] but we can certainly move it to a variant. Note that
libpsl requires libidn2.
And nghttp2 is for HTTP/2 support which users have requested, but it's
reasonable to move it back to a variant for those who really just want a
minimal HTTP/1 client or for times when nghttp2 is feeling somewhat less
C99 compatible than it claims.
--
Ticket URL: <https://trac.macports.org/ticket/70481#comment:7>
MacPorts <https://www.macports.org/>
Ports system for macOS
More information about the macports-tickets
mailing list