commit: f59546d6e2ad8c0a8f3148efc06a641d860e7df6 Author: Michal Rostecki <vadorovsky <AT> protonmail <DOT> com> AuthorDate: Wed Jan 29 17:46:56 2025 +0000 Commit: Sam James <sam <AT> gentoo <DOT> org> CommitDate: Thu Feb 27 06:03:44 2025 +0000 URL: https://gitweb.gentoo.org/repo/gentoo.git/commit/?id=f59546d6
dev-lang/rust-bin: Allow to use llvm-libgcc instead of GCC We recently added llvm-runtimes/libgcc ebuild, which provides a full replacement of libgcc_s for systems without GCC. To leverage that ebuild in Rust binary packages, make them depend either on llvm-runtimes/libgcc or sys-devel/gcc. Bug: https://bugs.gentoo.org/946486 Signed-off-by: Michal Rostecki <vadorovsky <AT> protonmail.com> Closes: https://github.com/gentoo/gentoo/pull/40737 Signed-off-by: Sam James <sam <AT> gentoo.org> ...t-bin-9999.ebuild => rust-bin-1.85.0-r1.ebuild} | 35 ++++++++++++---------- ...uild => rust-bin-1.86.0_beta20250218-r1.ebuild} | 7 +++-- dev-lang/rust-bin/rust-bin-9999.ebuild | 5 +++- 3 files changed, 29 insertions(+), 18 deletions(-) diff --git a/dev-lang/rust-bin/rust-bin-9999.ebuild b/dev-lang/rust-bin/rust-bin-1.85.0-r1.ebuild similarity index 90% copy from dev-lang/rust-bin/rust-bin-9999.ebuild copy to dev-lang/rust-bin/rust-bin-1.85.0-r1.ebuild index 2e2e6314f879..e37377ab23b7 100644 --- a/dev-lang/rust-bin/rust-bin-9999.ebuild +++ b/dev-lang/rust-bin/rust-bin-1.85.0-r1.ebuild @@ -3,7 +3,7 @@ EAPI=8 -LLVM_COMPAT=( 20 ) +LLVM_COMPAT=( 19 ) LLVM_OPTIONAL="yes" inherit edo llvm-r1 multilib prefix rust-toolchain toolchain-funcs verify-sig multilib-minimal optfeature @@ -21,36 +21,38 @@ elif [[ ${PV} == *beta* ]]; then " else # curl -Ls static.rust-lang.org/dist/channel-rust-${PV}.toml | grep "xz_url.*rust-src" - SRC_URI="$(rust_all_arch_uris "${PV}") - rust-src? ( ${RUST_TOOLCHAIN_BASEURL%/}/2025-01-30/rust-src-${PV}.tar.xz ) + SRC_URI="$(rust_all_arch_uris "rust-${PV}") + rust-src? ( ${RUST_TOOLCHAIN_BASEURL%/}/2025-02-20/rust-src-${PV}.tar.xz ) + ppc64? ( elibc_musl? ( !big-endian? ( + $(rust_arch_uri powerpc64le-unknown-linux-musl rust-${PV}) + ) ) ) " KEYWORDS="~amd64 ~arm ~arm64 ~loong ~mips ~ppc ~ppc64 ~riscv ~s390 ~sparc ~x86" fi -GENTOO_BIN_BASEURI="https://github.com/projg2/rust-bootstrap/releases/download/${PVR}" # omit trailing slash - DESCRIPTION="Systems programming language from Mozilla" HOMEPAGE="https://www.rust-lang.org/" if [[ ${PV} != *9999* && ${PV} != *beta* ]] ; then + GENTOO_BIN_BASEURI="https://github.com/projg2/rust-bootstrap/releases/download/${PV}" # omit trailing slash + MY_P=rust-${PV} # Keep this separate to allow easy commenting out if not yet built - SRC_URI+=" sparc? ( ${GENTOO_BIN_BASEURI}/rust-${PVR}-sparc64-unknown-linux-gnu.tar.xz ) " + SRC_URI+=" sparc? ( ${GENTOO_BIN_BASEURI}/${MY_P}-sparc64-unknown-linux-gnu.tar.xz ) " SRC_URI+=" mips? ( abi_mips_o32? ( - big-endian? ( ${GENTOO_BIN_BASEURI}/rust-${PVR}-mips-unknown-linux-gnu.tar.xz ) - !big-endian? ( ${GENTOO_BIN_BASEURI}/rust-${PVR}-mipsel-unknown-linux-gnu.tar.xz ) + big-endian? ( ${GENTOO_BIN_BASEURI}/${MY_P}-mips-unknown-linux-gnu.tar.xz ) + !big-endian? ( ${GENTOO_BIN_BASEURI}/${MY_P}-mipsel-unknown-linux-gnu.tar.xz ) ) abi_mips_n64? ( - big-endian? ( ${GENTOO_BIN_BASEURI}/rust-${PVR}-mips64-unknown-linux-gnuabi64.tar.xz ) - !big-endian? ( ${GENTOO_BIN_BASEURI}/rust-${PVR}-mips64el-unknown-linux-gnuabi64.tar.xz ) + big-endian? ( ${GENTOO_BIN_BASEURI}/${MY_P}-mips64-unknown-linux-gnuabi64.tar.xz ) + !big-endian? ( ${GENTOO_BIN_BASEURI}/${MY_P}-mips64el-unknown-linux-gnuabi64.tar.xz ) ) )" SRC_URI+=" riscv? ( - elibc_musl? ( ${GENTOO_BIN_BASEURI}/rust-${PVR}-riscv64gc-unknown-linux-musl.tar.xz ) + elibc_musl? ( ${GENTOO_BIN_BASEURI}/${MY_P}-riscv64gc-unknown-linux-musl.tar.xz ) )" - SRC_URI+=" ppc64? ( elibc_musl? ( - big-endian? ( ${GENTOO_BIN_BASEURI}/rust-${PVR}-powerpc64-unknown-linux-musl.tar.xz ) - !big-endian? ( ${GENTOO_BIN_BASEURI}/rust-${PVR}-powerpc64le-unknown-linux-musl.tar.xz ) + SRC_URI+=" ppc64? ( big-endian? ( + elibc_musl? ( ${GENTOO_BIN_BASEURI}/${MY_P}-powerpc64-unknown-linux-musl.tar.xz ) ) )" fi @@ -62,7 +64,10 @@ RDEPEND=" >=app-eselect/eselect-rust-20190311 dev-libs/openssl sys-apps/lsb-release - sys-devel/gcc:* + || ( + llvm-runtimes/libgcc + sys-devel/gcc:* + ) !dev-lang/rust:stable !dev-lang/rust-bin:stable " diff --git a/dev-lang/rust-bin/rust-bin-9999.ebuild b/dev-lang/rust-bin/rust-bin-1.86.0_beta20250218-r1.ebuild similarity index 99% copy from dev-lang/rust-bin/rust-bin-9999.ebuild copy to dev-lang/rust-bin/rust-bin-1.86.0_beta20250218-r1.ebuild index 2e2e6314f879..ab225d2c1246 100644 --- a/dev-lang/rust-bin/rust-bin-9999.ebuild +++ b/dev-lang/rust-bin/rust-bin-1.86.0_beta20250218-r1.ebuild @@ -3,7 +3,7 @@ EAPI=8 -LLVM_COMPAT=( 20 ) +LLVM_COMPAT=( 19 ) LLVM_OPTIONAL="yes" inherit edo llvm-r1 multilib prefix rust-toolchain toolchain-funcs verify-sig multilib-minimal optfeature @@ -62,7 +62,10 @@ RDEPEND=" >=app-eselect/eselect-rust-20190311 dev-libs/openssl sys-apps/lsb-release - sys-devel/gcc:* + || ( + llvm-runtimes/libgcc + sys-devel/gcc:* + ) !dev-lang/rust:stable !dev-lang/rust-bin:stable " diff --git a/dev-lang/rust-bin/rust-bin-9999.ebuild b/dev-lang/rust-bin/rust-bin-9999.ebuild index 2e2e6314f879..6338d2da2419 100644 --- a/dev-lang/rust-bin/rust-bin-9999.ebuild +++ b/dev-lang/rust-bin/rust-bin-9999.ebuild @@ -62,7 +62,10 @@ RDEPEND=" >=app-eselect/eselect-rust-20190311 dev-libs/openssl sys-apps/lsb-release - sys-devel/gcc:* + || ( + llvm-runtimes/libgcc + sys-devel/gcc:* + ) !dev-lang/rust:stable !dev-lang/rust-bin:stable "
