From mboxrd@z Thu Jan 1 00:00:00 1970 Return-Path: Received: from smtp.gentoo.org (woodpecker.gentoo.org [140.211.166.183]) (using TLSv1.3 with cipher TLS_AES_256_GCM_SHA384 (256/256 bits) key-exchange X25519 server-signature RSA-PSS (4096 bits)) (No client certificate requested) by finch.gentoo.org (Postfix) with ESMTPS id 982091582EF for ; Sat, 08 Mar 2025 16:24:20 +0000 (UTC) Received: from lists.gentoo.org (bobolink.gentoo.org [140.211.166.189]) (using TLSv1.3 with cipher TLS_AES_256_GCM_SHA384 (256/256 bits) key-exchange X25519 server-signature RSA-PSS (4096 bits)) (No client certificate requested) (Authenticated sender: relay-lists.gentoo.org@gentoo.org) by smtp.gentoo.org (Postfix) with ESMTPSA id 70E6D343067 for ; Sat, 08 Mar 2025 16:24:20 +0000 (UTC) Received: from bobolink.gentoo.org (localhost [127.0.0.1]) by bobolink.gentoo.org (Postfix) with ESMTP id 0B8331103E1; Sat, 08 Mar 2025 16:23:37 +0000 (UTC) Received: from smtp.gentoo.org (woodpecker.gentoo.org [IPv6:2001:470:ea4a:1:5054:ff:fec7:86e4]) (using TLSv1.3 with cipher TLS_AES_256_GCM_SHA384 (256/256 bits) key-exchange X25519 server-signature RSA-PSS (4096 bits) server-digest SHA256) (No client certificate requested) by bobolink.gentoo.org (Postfix) with ESMTPS id 4EDA111027C for ; Sat, 08 Mar 2025 16:23:36 +0000 (UTC) Received: from symphony.aura-online.co.uk (157.2.187.81.in-addr.arpa [81.187.2.157]) (using TLSv1.3 with cipher TLS_AES_256_GCM_SHA384 (256/256 bits) key-exchange ECDHE (prime256v1) server-signature RSA-PSS (4096 bits) server-digest SHA256) (No client certificate requested) (Authenticated sender: chewi) by smtp.gentoo.org (Postfix) with ESMTPSA id D6A04342FAA for ; Sat, 08 Mar 2025 16:23:35 +0000 (UTC) Message-ID: <25c410b7a27d7d599e081ea9574b1aac4e8719ae.camel@gentoo.org> Subject: Re: [gentoo-dev] [PATCH 4/5] cargo.eclass: Enable dynamic linking by default From: James Le Cuirot To: gentoo-dev@lists.gentoo.org Date: Sat, 08 Mar 2025 16:23:21 +0000 In-Reply-To: <20250308135921.593905-5-arthurzam@gentoo.org> References: <20250308135921.593905-1-arthurzam@gentoo.org> <20250308135921.593905-5-arthurzam@gentoo.org> Autocrypt: addr=chewi@gentoo.org; prefer-encrypt=mutual; keydata=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 Content-Type: multipart/signed; micalg="pgp-sha256"; protocol="application/pgp-signature"; boundary="=-bHHDbZMr41Y5LaiCTRos" User-Agent: Evolution 3.54.3 Precedence: bulk List-Post: List-Help: List-Unsubscribe: List-Subscribe: List-Id: Gentoo Linux mail X-BeenThere: gentoo-dev@lists.gentoo.org Reply-to: gentoo-dev@lists.gentoo.org X-Auto-Response-Suppress: DR, RN, NRN, OOF, AutoReply MIME-Version: 1.0 X-Archives-Salt: 1edcb56c-b0a0-40ad-a1b0-2c7d9c8133bf X-Archives-Hash: 35bf2f33ae787c5e8b0af2ef8cbf9d54 --=-bHHDbZMr41Y5LaiCTRos Content-Type: text/plain; charset="UTF-8" Content-Transfer-Encoding: quoted-printable On Sat, 2025-03-08 at 15:59 +0200, Arthur Zamarin wrote: > From: Michal Rostecki >=20 > Rust defaults to static linking (`-C target-feature=3D+crt-static`) on > musl targets. We already patch dev-lang/rust to always prefer dynamic > linking, but to ensure that behavior with dev-lang/rust-bin, set the > opposite option (`-C target-feature=3D-crt-static`) in RUSTFLAGS. >=20 > Bug: https://bugs.gentoo.org/940722 > Signed-off-by: Michal Rostecki > Closes: https://github.com/gentoo/gentoo/pull/40797 > Signed-off-by: Arthur Zamarin > --- > eclass/cargo.eclass | 7 ++++++- > 1 file changed, 6 insertions(+), 1 deletion(-) >=20 > diff --git a/eclass/cargo.eclass b/eclass/cargo.eclass > index 909321c355b..dae2b93f24f 100644 > --- a/eclass/cargo.eclass > +++ b/eclass/cargo.eclass > @@ -745,10 +745,15 @@ cargo_env() { > # The default linker is "cc" so override by setting linker to CC in the > # RUSTFLAGS. The given linker cannot include any arguments, so split th= ese > # into link-args along with LDFLAGS. > + # > + # Rust defaults to static linking (-C target-feature=3D+crt-static) on = musl > + # targets. We already patch dev-lang/rust to always prefer dynamic link= ing, > + # but to ensure that behavior with dev-lang/rust-bin, set the opposite = option > + # (-C target-feature=3D-crt-static) in RUSTFLAGS. > local -x CARGO_BUILD_TARGET=3D$(rust_abi) > local TRIPLE=3D${CARGO_BUILD_TARGET//-/_} > local TRIPLE=3D${TRIPLE^^} LD_A=3D( $(tc-getCC) ${LDFLAGS} ) > - local -Ix CARGO_TARGET_"${TRIPLE}"_RUSTFLAGS+=3D" -C strip=3Dnone -C li= nker=3D${LD_A[0]}" > + local -Ix CARGO_TARGET_"${TRIPLE}"_RUSTFLAGS+=3D" -C strip=3Dnone -C li= nker=3D${LD_A[0]} -C target-feature=3D-crt-static" > [[ ${#LD_A[@]} -gt 1 ]] && local CARGO_TARGET_"${TRIPLE}"_RUSTFLAGS+=3D= "$(printf -- ' -C link-arg=3D%s' "${LD_A[@]:1}")" > local CARGO_TARGET_"${TRIPLE}"_RUSTFLAGS+=3D" ${RUSTFLAGS}" I considered this when writing the above lines, but I wasn't sure if it was= a good idea. If the testing has been done, then I'm glad to see it. --=-bHHDbZMr41Y5LaiCTRos Content-Type: application/pgp-signature; name="signature.asc" Content-Description: This is a digitally signed message part -----BEGIN PGP SIGNATURE----- iQJFBAABCAAvFiEEPxcZ3tkwcedKm2a8EiZBXQDdMTcFAmfMbvkRHGNoZXdpQGdl bnRvby5vcmcACgkQEiZBXQDdMTcbeA//SmSe/89TUaVLNEh+oog7jIo9xlbN8WJ5 uUikPhPY1/9QYKa73TvqY2yP9P29yl2KkqANa4fldsXZvSRZfTkIJRwEEzwtgTun 5YLa2IEWU/1vgKrwadCQrZWN6stJJAeNQE5KyhgE6Itvvi5gEHPLCbBUcPykNtO6 m5I88VlqoPYKP+0vp9TwNEWPNHNCgHOHjMfdy6o8u4sIA4ppJcftjlqCFsp0HEQS ZMark5Hj0Ev2+oJbZtte92JVxOnXlw5fcLMipNi//EzAScmEMgI2opGl7OBDshhY U33mpvXbiTWDA1HIQgCCvdT6aZlFFtRaoNgZ8duNB+BUXq9Fn8o0ecUpssmy/yP9 qPNy8YqHMK2bMDPGlMBou03paktoXqtd5TLJEBomVhjZ2ahldYm6JnoS/12m+uBk kOzntWMOgf0KDJks8CNI0p78PhzL6B5XsMj79Nno5wWpmMvU00Zm+nuIce0r2rYf eujRENu3wamNJv+Jzy0PJf3xRdxZBwzcK9PMwLmpmyGhcmEyJynCteGk2iBQ5QmM cDWH/ZRJqNIqEnMpoRWfmST/doVyhc0oTrLQ56AiJOaDpai0zxdluxZxNYnEgwvV myWhkndzx0b2gNkykbVLSMVvb/gYDouYpcMIarsg7yOfN+PQsjBKg23Z1B2PozOE Vde8nzlVEtA= =7fsO -----END PGP SIGNATURE----- --=-bHHDbZMr41Y5LaiCTRos--