diff options
| author | Eli Schwartz <eschwartz@gentoo.org> | 2025-03-19 16:37:26 -0400 |
|---|---|---|
| committer | Eli Schwartz <eschwartz@gentoo.org> | 2025-03-19 16:57:17 -0400 |
| commit | 0f18b7d670a542d989ed2b9c1a48ea509067d2e1 (patch) | |
| tree | 5db680ee9209c2fee9d0a3b43f44101f0e6fe9a7 /dev-lang/rust-common/rust-common-1.85.1.ebuild | |
| parent | 8396bfe94a83a43c588c9960d9a1952d9373b1d1 (diff) | |
| download | gentoo-0f18b7d670a542d989ed2b9c1a48ea509067d2e1.tar.gz gentoo-0f18b7d670a542d989ed2b9c1a48ea509067d2e1.tar.bz2 gentoo-0f18b7d670a542d989ed2b9c1a48ea509067d2e1.zip | |
net-libs/gnutls: fix linkage (the lack of) for USE="zlib zstd brotli"
gnutls upstream supports these --with-* flags using the values
"yes/link/dlopen/no", and defaults to dlopen. This means that we
technically do not need the deps at runtime, like a kind of horrifying
"advertisement" for IUSE_RUNTIME in combination with build-only
dependencies. The actual goal here, I suppose, is that on Debian you can
unmerge zlib if you don't need gnutls support for it, and it's only a
"suggested" dependency, so a single binary build is useful for all
possible users. Gentoo has USE flags for this, and would have a hard
runtime dependency on the compression library either way, depending on
how it's built -- rebuilding without that USE is trivial.
So, for our use cases, it's much better to specify that we want to link
directly to the compression libs, as it makes iwdevtools happier, plays
nicely with preserved-libs, and avoids the frankly horrifying
possibility that some other library *uses* gnutls, and also uses zlib /
zstd / brotli, maybe via dlopen too, maybe dlclosing it multiple times.
If a plugin system was desirable, it would use gnutls plugins tbh (and
dlopen those, which in turn have genuine shlib linkage to the external
libs they provide a wrapper for).
So, using =link is all around safer with no downsides, let's do it.
Per Sam's advice: bumping via git mv.
Signed-off-by: Eli Schwartz <eschwartz@gentoo.org>
Diffstat (limited to 'dev-lang/rust-common/rust-common-1.85.1.ebuild')
0 files changed, 0 insertions, 0 deletions
