commit: efdc61409a6b51096850d1558b514fad8134afee
Author: Matt Jolly <kangie <AT> gentoo <DOT> org>
AuthorDate: Sun Feb 9 13:24:28 2025 +0000
Commit: Sam James <sam <AT> gentoo <DOT> org>
CommitDate: Mon Feb 10 00:16:37 2025 +0000
URL: https://gitweb.gentoo.org/repo/gentoo.git/commit/?id=efdc6140
dev-lang/rust-bin: drop revisions with ld.so.conf entries
We can rely on RPATH for this and it's better to just get it all
otu of the way at once.
Signed-off-by: Matt Jolly <kangie <AT> gentoo.org>
Signed-off-by: Sam James <sam <AT> gentoo.org>
dev-lang/rust-bin/rust-bin-1.71.1-r101.ebuild | 234 ------------------------
dev-lang/rust-bin/rust-bin-1.74.1-r101.ebuild | 244 -------------------------
dev-lang/rust-bin/rust-bin-1.75.0-r101.ebuild | 244 -------------------------
dev-lang/rust-bin/rust-bin-1.77.1-r101.ebuild | 246 -------------------------
dev-lang/rust-bin/rust-bin-1.79.0-r101.ebuild | 249 -------------------------
dev-lang/rust-bin/rust-bin-1.80.1-r101.ebuild | 253 --------------------------
dev-lang/rust-bin/rust-bin-1.81.0-r101.ebuild | 251 -------------------------
dev-lang/rust-bin/rust-bin-1.82.0-r101.ebuild | 253 --------------------------
dev-lang/rust-bin/rust-bin-1.83.0.ebuild | 253 --------------------------
dev-lang/rust-bin/rust-bin-1.84.0.ebuild | 253 --------------------------
dev-lang/rust-bin/rust-bin-1.84.1.ebuild | 253 --------------------------
11 files changed, 2733 deletions(-)
diff --git a/dev-lang/rust-bin/rust-bin-1.71.1-r101.ebuild
b/dev-lang/rust-bin/rust-bin-1.71.1-r101.ebuild
deleted file mode 100644
index 9e716ace2e5b..000000000000
--- a/dev-lang/rust-bin/rust-bin-1.71.1-r101.ebuild
+++ /dev/null
@@ -1,234 +0,0 @@
-# Copyright 1999-2024 Gentoo Authors
-# Distributed under the terms of the GNU General Public License v2
-
-EAPI=8
-
-LLVM_COMPAT=( 16 )
-LLVM_OPTIONAL="yes"
-
-inherit llvm-r1 multilib prefix rust-toolchain toolchain-funcs verify-sig
multilib-minimal
-
-MY_P="rust-${PV}"
-# curl -L static.rust-lang.org/dist/channel-rust-${PV}.toml 2>/dev/null | grep
"xz_url.*rust-src"
-MY_SRC_URI="${RUST_TOOLCHAIN_BASEURL%/}/2023-08-03/rust-src-${PV}.tar.xz"
-GENTOO_BIN_BASEURI="https://dev.gentoo.org/~sam/distfiles/${CATEGORY}/${PN}" #
omit leading slash
-
-DESCRIPTION="Language empowering everyone to build reliable and efficient
software"
-HOMEPAGE="https://www.rust-lang.org/"
-SRC_URI="$(rust_all_arch_uris ${MY_P})
- rust-src? ( ${MY_SRC_URI} )
-"
-# Keep this separate to allow easy commenting out if not yet built
-SRC_URI+=" sparc? (
${GENTOO_BIN_BASEURI}/${MY_P}-sparc64-unknown-linux-gnu.tar.xz ->
${MY_P}-sparc64-unknown-linux-gnu.sam.tar.xz ) "
-
-LICENSE="|| ( MIT Apache-2.0 ) BSD BSD-1 BSD-2 BSD-4 UoI-NCSA"
-SLOT="${PV}"
-KEYWORDS="amd64 arm arm64 ~loong ~mips ppc ppc64 ~riscv ~s390 sparc x86"
-IUSE="big-endian clippy cpu_flags_x86_sse2 doc prefix rust-analyzer rust-src
rustfmt"
-
-RDEPEND="
- >=app-eselect/eselect-rust-20190311
- dev-libs/openssl
- sys-apps/lsb-release
- sys-devel/gcc:*
- !dev-lang/rust:stable
- !dev-lang/rust-bin:stable
-"
-BDEPEND="
- prefix? ( dev-util/patchelf )
- verify-sig? ( sec-keys/openpgp-keys-rust )
-"
-
-REQUIRED_USE="x86? ( cpu_flags_x86_sse2 )"
-
-# stripping rust may break it (at least on x86_64)
-# https://github.com/rust-lang/rust/issues/112286
-RESTRICT="strip"
-
-QA_PREBUILT="
- opt/${P}/bin/.*
- opt/${P}/lib/.*.so
- opt/${P}/libexec/.*
- opt/${P}/lib/rustlib/.*/bin/.*
- opt/${P}/lib/rustlib/.*/lib/.*
-"
-
-# An rmeta file is custom binary format that contains the metadata for the
crate.
-# rmeta files do not support linking, since they do not contain compiled
object files.
-# so we can safely silence the warning for this QA check.
-QA_EXECSTACK="opt/${P}/lib/rustlib/*/lib*.rlib:lib.rmeta"
-
-VERIFY_SIG_OPENPGP_KEY_PATH="/usr/share/openpgp-keys/rust.asc"
-
-pkg_pretend() {
- if [[ "$(tc-is-softfloat)" != "no" ]] && [[ ${CHOST} == armv7* ]]; then
- die "${CHOST} is not supported by upstream Rust. You must use a
hard float version."
- fi
-}
-
-src_unpack() {
- # sadly rust-src tarball does not have corresponding .asc file
- # so do partial verification
- if use verify-sig; then
- for f in ${A}; do
- if [[ -f ${DISTDIR}/${f}.asc ]]; then
- verify-sig_verify_detached "${DISTDIR}/${f}"
"${DISTDIR}/${f}.asc"
- fi
- done
- fi
-
- default_src_unpack
-
- mv "${WORKDIR}/${MY_P}-$(rust_abi)" "${S}" || die
-}
-
-patchelf_for_bin() {
- local filetype=$(file -b ${1})
- if [[ ${filetype} == *ELF*interpreter* ]]; then
- einfo "${1}'s interpreter changed"
- patchelf ${1} --set-interpreter ${2} || die
- elif [[ ${filetype} == *script* ]]; then
- hprefixify ${1}
- fi
-}
-
-multilib_src_install() {
- if multilib_is_native_abi; then
-
- # start native abi install
- pushd "${S}" >/dev/null || die
- local analysis std
- analysis="$(grep 'analysis' ./components)"
- std="$(grep 'std' ./components)"
- local components="rustc,cargo,${std}"
- use doc && components="${components},rust-docs"
- use clippy && components="${components},clippy-preview"
- use rustfmt && components="${components},rustfmt-preview"
- use rust-analyzer &&
components="${components},rust-analyzer-preview,${analysis}"
- # Rust component 'rust-src' is extracted from separate archive
- if use rust-src; then
- einfo "Combining rust and rust-src installers"
- mv -v "${WORKDIR}/rust-src-${PV}/rust-src" "${S}" || die
- echo rust-src >> ./components || die
- components="${components},rust-src"
- fi
- ./install.sh \
- --components="${components}" \
- --disable-verify \
- --prefix="${ED}/opt/${P}" \
- --mandir="${ED}/opt/${P}/man" \
- --disable-ldconfig \
- || die
-
- if use prefix; then
- local interpreter=$(patchelf --print-interpreter
"${EPREFIX}/bin/bash")
- ebegin "Changing interpreter to ${interpreter} for Gentoo
prefix at ${ED}/opt/${P}/bin"
- find "${ED}/opt/${P}/bin" -type f -print0 | \
- while IFS= read -r -d '' filename; do
- patchelf_for_bin ${filename} ${interpreter} \;
|| die
- done
- eend ${PIPESTATUS[0]}
- fi
-
- local symlinks=(
- cargo
- rustc
- rustdoc
- rust-gdb
- rust-gdbgui
- rust-lldb
- )
-
- use clippy && symlinks+=( clippy-driver cargo-clippy )
- use rustfmt && symlinks+=( rustfmt cargo-fmt )
- use rust-analyzer && symlinks+=( rust-analyzer )
-
- einfo "installing eselect-rust symlinks and paths"
- local i
- for i in "${symlinks[@]}"; do
- # we need realpath on /usr/bin/* symlink return
version-appended binary path.
- # so /usr/bin/rustc should point to
/opt/rust-bin-<ver>/bin/rustc-<ver>
- local ver_i="${i}-bin-${PV}"
- ln -v "${ED}/opt/${P}/bin/${i}" "${ED}/opt/${P}/bin/${ver_i}"
|| die
- dosym "../../opt/${P}/bin/${ver_i}" "/usr/bin/${ver_i}"
- done
-
- # symlinks to switch components to active rust in eselect
- dosym "../../../opt/${P}/lib" "/usr/lib/rust/lib-bin-${PV}"
- dosym "../../../opt/${P}/man" "/usr/lib/rust/man-bin-${PV}"
- dosym "../../opt/${P}/lib/rustlib" "/usr/lib/rustlib-bin-${PV}"
- dosym "../../../opt/${P}/share/doc/rust" "/usr/share/doc/${P}"
-
- # make all capital underscored variable
- local CARGO_TRIPLET="$(rust_abi)"
- CARGO_TRIPLET="${CARGO_TRIPLET//-/_}"
- CARGO_TRIPLET="${CARGO_TRIPLET^^}"
- cat <<-_EOF_ > "${T}/50${P}"
- LDPATH="${EPREFIX}/usr/lib/rust/lib-bin-${PV}"
- MANPATH="${EPREFIX}/usr/lib/rust/man-bin-${PV}"
- $(usev elibc_musl "CARGO_TARGET_${CARGO_TRIPLET}_RUSTFLAGS=\"-C
target-feature=-crt-static\"")
- _EOF_
- doenvd "${T}/50${P}"
-
- # note: eselect-rust adds EROOT to all paths below
- cat <<-_EOF_ > "${T}/provider-${P}"
- /usr/bin/cargo
- /usr/bin/rustdoc
- /usr/bin/rust-gdb
- /usr/bin/rust-gdbgui
- /usr/bin/rust-lldb
- /usr/lib/rustlib
- /usr/lib/rust/lib
- /usr/lib/rust/man
- /usr/share/doc/rust
- _EOF_
-
- if use clippy; then
- echo /usr/bin/clippy-driver >> "${T}/provider-${P}"
- echo /usr/bin/cargo-clippy >> "${T}/provider-${P}"
- fi
- if use rustfmt; then
- echo /usr/bin/rustfmt >> "${T}/provider-${P}"
- echo /usr/bin/cargo-fmt >> "${T}/provider-${P}"
- fi
- if use rust-analyzer; then
- echo /usr/bin/rust-analyzer >> "${T}/provider-${P}"
- fi
-
- insinto /etc/env.d/rust
- doins "${T}/provider-${P}"
- popd >/dev/null || die
- #end native abi install
-
- else
- local rust_target
- rust_target="$(rust_abi $(get_abi_CHOST ${v##*.}))"
- dodir "/opt/${P}/lib/rustlib"
- cp -vr
"${WORKDIR}/rust-${PV}-${rust_target}/rust-std-${rust_target}/lib/rustlib/${rust_target}"\
- "${ED}/opt/${P}/lib/rustlib" || die
- fi
-
- # BUG: installs x86_64 binary on other arches
- rm -f "${ED}/opt/${P}/lib/rustlib/"*/bin/rust-llvm-dwp || die
-}
-
-pkg_postinst() {
- eselect rust update
-
- if has_version dev-debug/gdb || has_version llvm-core/lldb; then
- elog "Rust installs helper scripts for calling GDB and LLDB,"
- elog "for convenience they are installed under
/usr/bin/rust-{gdb,lldb}-${PV}."
- fi
-
- if has_version app-editors/emacs; then
- elog "install app-emacs/rust-mode to get emacs support for
rust."
- fi
-
- if has_version app-editors/gvim || has_version app-editors/vim; then
- elog "install app-vim/rust-vim to get vim support for rust."
- fi
-}
-
-pkg_postrm() {
- eselect rust cleanup
-}
diff --git a/dev-lang/rust-bin/rust-bin-1.74.1-r101.ebuild
b/dev-lang/rust-bin/rust-bin-1.74.1-r101.ebuild
deleted file mode 100644
index 23d2616783ae..000000000000
--- a/dev-lang/rust-bin/rust-bin-1.74.1-r101.ebuild
+++ /dev/null
@@ -1,244 +0,0 @@
-# Copyright 1999-2024 Gentoo Authors
-# Distributed under the terms of the GNU General Public License v2
-
-EAPI=8
-
-LLVM_COMPAT=( 17 )
-LLVM_OPTIONAL="yes"
-
-inherit llvm-r1 multilib prefix rust-toolchain toolchain-funcs verify-sig
multilib-minimal
-
-MY_P="rust-${PV}"
-# curl -L static.rust-lang.org/dist/channel-rust-${PV}.toml 2>/dev/null | grep
"xz_url.*rust-src"
-MY_SRC_URI="${RUST_TOOLCHAIN_BASEURL%/}/2023-12-07/rust-src-${PV}.tar.xz"
-GENTOO_BIN_BASEURI="https://dev.gentoo.org/~sam/distfiles/${CATEGORY}/${PN}" #
omit leading slash
-
-DESCRIPTION="Language empowering everyone to build reliable and efficient
software"
-HOMEPAGE="https://www.rust-lang.org/"
-SRC_URI="$(rust_all_arch_uris ${MY_P})
- rust-src? ( ${MY_SRC_URI} )
-"
-# Keep this separate to allow easy commenting out if not yet built
-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}/${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}/${MY_P}-mips64-unknown-linux-gnuabi64.tar.xz )
-# !big-endian? (
${GENTOO_BIN_BASEURI}/${MY_P}-mips64el-unknown-linux-gnuabi64.tar.xz )
-# )
-#)"
-
-LICENSE="|| ( MIT Apache-2.0 ) BSD BSD-1 BSD-2 BSD-4"
-SLOT="${PV}"
-KEYWORDS="amd64 arm arm64 ~loong ppc ppc64 ~riscv ~s390 sparc x86"
-IUSE="big-endian clippy cpu_flags_x86_sse2 doc prefix rust-analyzer rust-src
rustfmt"
-
-RDEPEND="
- >=app-eselect/eselect-rust-20190311
- dev-libs/openssl
- sys-apps/lsb-release
- sys-devel/gcc:*
- !dev-lang/rust:stable
- !dev-lang/rust-bin:stable
-"
-BDEPEND="
- prefix? ( dev-util/patchelf )
- verify-sig? ( sec-keys/openpgp-keys-rust )
-"
-
-REQUIRED_USE="x86? ( cpu_flags_x86_sse2 )"
-
-# stripping rust may break it (at least on x86_64)
-# https://github.com/rust-lang/rust/issues/112286
-RESTRICT="strip"
-
-QA_PREBUILT="
- opt/${P}/bin/.*
- opt/${P}/lib/.*.so
- opt/${P}/libexec/.*
- opt/${P}/lib/rustlib/.*/bin/.*
- opt/${P}/lib/rustlib/.*/lib/.*
-"
-
-# An rmeta file is custom binary format that contains the metadata for the
crate.
-# rmeta files do not support linking, since they do not contain compiled
object files.
-# so we can safely silence the warning for this QA check.
-QA_EXECSTACK="opt/${P}/lib/rustlib/*/lib*.rlib:lib.rmeta"
-
-VERIFY_SIG_OPENPGP_KEY_PATH="/usr/share/openpgp-keys/rust.asc"
-
-pkg_pretend() {
- if [[ "$(tc-is-softfloat)" != "no" ]] && [[ ${CHOST} == armv7* ]]; then
- die "${CHOST} is not supported by upstream Rust. You must use a
hard float version."
- fi
-}
-
-src_unpack() {
- # sadly rust-src tarball does not have corresponding .asc file
- # so do partial verification
- if use verify-sig; then
- for f in ${A}; do
- if [[ -f ${DISTDIR}/${f}.asc ]]; then
- verify-sig_verify_detached "${DISTDIR}/${f}"
"${DISTDIR}/${f}.asc"
- fi
- done
- fi
-
- default_src_unpack
-
- mv "${WORKDIR}/${MY_P}-$(rust_abi)" "${S}" || die
-}
-
-patchelf_for_bin() {
- local filetype=$(file -b ${1})
- if [[ ${filetype} == *ELF*interpreter* ]]; then
- einfo "${1}'s interpreter changed"
- patchelf ${1} --set-interpreter ${2} || die
- elif [[ ${filetype} == *script* ]]; then
- hprefixify ${1}
- fi
-}
-
-multilib_src_install() {
- if multilib_is_native_abi; then
-
- # start native abi install
- pushd "${S}" >/dev/null || die
- local analysis std
- analysis="$(grep 'analysis' ./components)"
- std="$(grep 'std' ./components)"
- local components="rustc,cargo,${std}"
- use doc && components="${components},rust-docs"
- use clippy && components="${components},clippy-preview"
- use rustfmt && components="${components},rustfmt-preview"
- use rust-analyzer &&
components="${components},rust-analyzer-preview,${analysis}"
- # Rust component 'rust-src' is extracted from separate archive
- if use rust-src; then
- einfo "Combining rust and rust-src installers"
- mv -v "${WORKDIR}/rust-src-${PV}/rust-src" "${S}" || die
- echo rust-src >> ./components || die
- components="${components},rust-src"
- fi
- ./install.sh \
- --components="${components}" \
- --disable-verify \
- --prefix="${ED}/opt/${P}" \
- --mandir="${ED}/opt/${P}/man" \
- --disable-ldconfig \
- || die
-
- if use prefix; then
- local interpreter=$(patchelf --print-interpreter
"${EPREFIX}/bin/bash")
- ebegin "Changing interpreter to ${interpreter} for Gentoo
prefix at ${ED}/opt/${P}/bin"
- find "${ED}/opt/${P}/bin" -type f -print0 | \
- while IFS= read -r -d '' filename; do
- patchelf_for_bin ${filename} ${interpreter} \;
|| die
- done
- eend ${PIPESTATUS[0]}
- fi
-
- local symlinks=(
- cargo
- rustc
- rustdoc
- rust-gdb
- rust-gdbgui
- rust-lldb
- )
-
- use clippy && symlinks+=( clippy-driver cargo-clippy )
- use rustfmt && symlinks+=( rustfmt cargo-fmt )
- use rust-analyzer && symlinks+=( rust-analyzer )
-
- einfo "installing eselect-rust symlinks and paths"
- local i
- for i in "${symlinks[@]}"; do
- # we need realpath on /usr/bin/* symlink return
version-appended binary path.
- # so /usr/bin/rustc should point to
/opt/rust-bin-<ver>/bin/rustc-<ver>
- local ver_i="${i}-bin-${PV}"
- ln -v "${ED}/opt/${P}/bin/${i}" "${ED}/opt/${P}/bin/${ver_i}"
|| die
- dosym "../../opt/${P}/bin/${ver_i}" "/usr/bin/${ver_i}"
- done
-
- # symlinks to switch components to active rust in eselect
- dosym "../../../opt/${P}/lib" "/usr/lib/rust/lib-bin-${PV}"
- dosym "../../../opt/${P}/man" "/usr/lib/rust/man-bin-${PV}"
- dosym "../../opt/${P}/lib/rustlib" "/usr/lib/rustlib-bin-${PV}"
- dosym "../../../opt/${P}/share/doc/rust" "/usr/share/doc/${P}"
-
- # make all capital underscored variable
- local CARGO_TRIPLET="$(rust_abi)"
- CARGO_TRIPLET="${CARGO_TRIPLET//-/_}"
- CARGO_TRIPLET="${CARGO_TRIPLET^^}"
- cat <<-_EOF_ > "${T}/50${P}"
- LDPATH="${EPREFIX}/usr/lib/rust/lib-bin-${PV}"
- MANPATH="${EPREFIX}/usr/lib/rust/man-bin-${PV}"
- $(usev elibc_musl "CARGO_TARGET_${CARGO_TRIPLET}_RUSTFLAGS=\"-C
target-feature=-crt-static\"")
- _EOF_
- doenvd "${T}/50${P}"
-
- # note: eselect-rust adds EROOT to all paths below
- cat <<-_EOF_ > "${T}/provider-${P}"
- /usr/bin/cargo
- /usr/bin/rustdoc
- /usr/bin/rust-gdb
- /usr/bin/rust-gdbgui
- /usr/bin/rust-lldb
- /usr/lib/rustlib
- /usr/lib/rust/lib
- /usr/lib/rust/man
- /usr/share/doc/rust
- _EOF_
-
- if use clippy; then
- echo /usr/bin/clippy-driver >> "${T}/provider-${P}"
- echo /usr/bin/cargo-clippy >> "${T}/provider-${P}"
- fi
- if use rustfmt; then
- echo /usr/bin/rustfmt >> "${T}/provider-${P}"
- echo /usr/bin/cargo-fmt >> "${T}/provider-${P}"
- fi
- if use rust-analyzer; then
- echo /usr/bin/rust-analyzer >> "${T}/provider-${P}"
- fi
-
- insinto /etc/env.d/rust
- doins "${T}/provider-${P}"
- popd >/dev/null || die
- #end native abi install
-
- else
- local rust_target
- rust_target="$(rust_abi $(get_abi_CHOST ${v##*.}))"
- dodir "/opt/${P}/lib/rustlib"
- cp -vr
"${WORKDIR}/rust-${PV}-${rust_target}/rust-std-${rust_target}/lib/rustlib/${rust_target}"\
- "${ED}/opt/${P}/lib/rustlib" || die
- fi
-
- # BUG: installs x86_64 binary on other arches
- rm -f "${ED}/opt/${P}/lib/rustlib/"*/bin/rust-llvm-dwp || die
-}
-
-pkg_postinst() {
- eselect rust update
-
- if has_version dev-debug/gdb || has_version llvm-core/lldb; then
- elog "Rust installs helper scripts for calling GDB and LLDB,"
- elog "for convenience they are installed under
/usr/bin/rust-{gdb,lldb}-${PV}."
- fi
-
- if has_version app-editors/emacs; then
- elog "install app-emacs/rust-mode to get emacs support for
rust."
- fi
-
- if has_version app-editors/gvim || has_version app-editors/vim; then
- elog "install app-vim/rust-vim to get vim support for rust."
- fi
-}
-
-pkg_postrm() {
- eselect rust cleanup
-}
diff --git a/dev-lang/rust-bin/rust-bin-1.75.0-r101.ebuild
b/dev-lang/rust-bin/rust-bin-1.75.0-r101.ebuild
deleted file mode 100644
index 9bb32c144c66..000000000000
--- a/dev-lang/rust-bin/rust-bin-1.75.0-r101.ebuild
+++ /dev/null
@@ -1,244 +0,0 @@
-# Copyright 1999-2024 Gentoo Authors
-# Distributed under the terms of the GNU General Public License v2
-
-EAPI=8
-
-LLVM_COMPAT=( 17 )
-LLVM_OPTIONAL="yes"
-
-inherit llvm-r1 multilib prefix rust-toolchain toolchain-funcs verify-sig
multilib-minimal
-
-MY_P="rust-${PV}"
-# curl -L static.rust-lang.org/dist/channel-rust-${PV}.toml 2>/dev/null | grep
"xz_url.*rust-src"
-MY_SRC_URI="${RUST_TOOLCHAIN_BASEURL%/}/2023-12-28/rust-src-${PV}.tar.xz"
-GENTOO_BIN_BASEURI="https://dev.gentoo.org/~sam/distfiles/${CATEGORY}/${PN}" #
omit leading slash
-
-DESCRIPTION="Language empowering everyone to build reliable and efficient
software"
-HOMEPAGE="https://www.rust-lang.org/"
-SRC_URI="$(rust_all_arch_uris ${MY_P})
- rust-src? ( ${MY_SRC_URI} )
-"
-# Keep this separate to allow easy commenting out if not yet built
-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}/${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}/${MY_P}-mips64-unknown-linux-gnuabi64.tar.xz )
-# !big-endian? (
${GENTOO_BIN_BASEURI}/${MY_P}-mips64el-unknown-linux-gnuabi64.tar.xz )
-# )
-#)"
-
-LICENSE="|| ( MIT Apache-2.0 ) BSD BSD-1 BSD-2 BSD-4"
-SLOT="${PV}"
-KEYWORDS="amd64 arm arm64 ~loong ppc ppc64 ~riscv ~s390 sparc x86"
-IUSE="big-endian clippy cpu_flags_x86_sse2 doc prefix rust-analyzer rust-src
rustfmt"
-
-RDEPEND="
- >=app-eselect/eselect-rust-20190311
- dev-libs/openssl
- sys-apps/lsb-release
- sys-devel/gcc:*
- !dev-lang/rust:stable
- !dev-lang/rust-bin:stable
-"
-BDEPEND="
- prefix? ( dev-util/patchelf )
- verify-sig? ( sec-keys/openpgp-keys-rust )
-"
-
-REQUIRED_USE="x86? ( cpu_flags_x86_sse2 )"
-
-# stripping rust may break it (at least on x86_64)
-# https://github.com/rust-lang/rust/issues/112286
-RESTRICT="strip"
-
-QA_PREBUILT="
- opt/${P}/bin/.*
- opt/${P}/lib/.*.so
- opt/${P}/libexec/.*
- opt/${P}/lib/rustlib/.*/bin/.*
- opt/${P}/lib/rustlib/.*/lib/.*
-"
-
-# An rmeta file is custom binary format that contains the metadata for the
crate.
-# rmeta files do not support linking, since they do not contain compiled
object files.
-# so we can safely silence the warning for this QA check.
-QA_EXECSTACK="opt/${P}/lib/rustlib/*/lib*.rlib:lib.rmeta"
-
-VERIFY_SIG_OPENPGP_KEY_PATH="/usr/share/openpgp-keys/rust.asc"
-
-pkg_pretend() {
- if [[ "$(tc-is-softfloat)" != "no" ]] && [[ ${CHOST} == armv7* ]]; then
- die "${CHOST} is not supported by upstream Rust. You must use a
hard float version."
- fi
-}
-
-src_unpack() {
- # sadly rust-src tarball does not have corresponding .asc file
- # so do partial verification
- if use verify-sig; then
- for f in ${A}; do
- if [[ -f ${DISTDIR}/${f}.asc ]]; then
- verify-sig_verify_detached "${DISTDIR}/${f}"
"${DISTDIR}/${f}.asc"
- fi
- done
- fi
-
- default_src_unpack
-
- mv "${WORKDIR}/${MY_P}-$(rust_abi)" "${S}" || die
-}
-
-patchelf_for_bin() {
- local filetype=$(file -b ${1})
- if [[ ${filetype} == *ELF*interpreter* ]]; then
- einfo "${1}'s interpreter changed"
- patchelf ${1} --set-interpreter ${2} || die
- elif [[ ${filetype} == *script* ]]; then
- hprefixify ${1}
- fi
-}
-
-multilib_src_install() {
- if multilib_is_native_abi; then
-
- # start native abi install
- pushd "${S}" >/dev/null || die
- local analysis std
- analysis="$(grep 'analysis' ./components)"
- std="$(grep 'std' ./components)"
- local components="rustc,cargo,${std}"
- use doc && components="${components},rust-docs"
- use clippy && components="${components},clippy-preview"
- use rustfmt && components="${components},rustfmt-preview"
- use rust-analyzer &&
components="${components},rust-analyzer-preview,${analysis}"
- # Rust component 'rust-src' is extracted from separate archive
- if use rust-src; then
- einfo "Combining rust and rust-src installers"
- mv -v "${WORKDIR}/rust-src-${PV}/rust-src" "${S}" || die
- echo rust-src >> ./components || die
- components="${components},rust-src"
- fi
- ./install.sh \
- --components="${components}" \
- --disable-verify \
- --prefix="${ED}/opt/${P}" \
- --mandir="${ED}/opt/${P}/man" \
- --disable-ldconfig \
- || die
-
- if use prefix; then
- local interpreter=$(patchelf --print-interpreter
"${EPREFIX}"/bin/bash)
- ebegin "Changing interpreter to ${interpreter} for Gentoo
prefix at ${ED}/opt/${P}/bin"
- find "${ED}/opt/${P}/bin" -type f -print0 | \
- while IFS= read -r -d '' filename; do
- patchelf_for_bin ${filename} ${interpreter} \;
|| die
- done
- eend ${PIPESTATUS[0]}
- fi
-
- local symlinks=(
- cargo
- rustc
- rustdoc
- rust-gdb
- rust-gdbgui
- rust-lldb
- )
-
- use clippy && symlinks+=( clippy-driver cargo-clippy )
- use rustfmt && symlinks+=( rustfmt cargo-fmt )
- use rust-analyzer && symlinks+=( rust-analyzer )
-
- einfo "installing eselect-rust symlinks and paths"
- local i
- for i in "${symlinks[@]}"; do
- # we need realpath on /usr/bin/* symlink return
version-appended binary path.
- # so /usr/bin/rustc should point to
/opt/rust-bin-<ver>/bin/rustc-<ver>
- local ver_i="${i}-bin-${PV}"
- ln -v "${ED}/opt/${P}/bin/${i}" "${ED}/opt/${P}/bin/${ver_i}"
|| die
- dosym "../../opt/${P}/bin/${ver_i}" "/usr/bin/${ver_i}"
- done
-
- # symlinks to switch components to active rust in eselect
- dosym "../../../opt/${P}/lib" "/usr/lib/rust/lib-bin-${PV}"
- dosym "../../../opt/${P}/man" "/usr/lib/rust/man-bin-${PV}"
- dosym "../../opt/${P}/lib/rustlib" "/usr/lib/rustlib-bin-${PV}"
- dosym "../../../opt/${P}/share/doc/rust" "/usr/share/doc/${P}"
-
- # make all capital underscored variable
- local CARGO_TRIPLET="$(rust_abi)"
- CARGO_TRIPLET="${CARGO_TRIPLET//-/_}"
- CARGO_TRIPLET="${CARGO_TRIPLET^^}"
- cat <<-_EOF_ > "${T}/50${P}"
- LDPATH="${EPREFIX}/usr/lib/rust/lib-bin-${PV}"
- MANPATH="${EPREFIX}/usr/lib/rust/man-bin-${PV}"
- $(usev elibc_musl "CARGO_TARGET_${CARGO_TRIPLET}_RUSTFLAGS=\"-C
target-feature=-crt-static\"")
- _EOF_
- doenvd "${T}/50${P}"
-
- # note: eselect-rust adds EROOT to all paths below
- cat <<-_EOF_ > "${T}/provider-${P}"
- /usr/bin/cargo
- /usr/bin/rustdoc
- /usr/bin/rust-gdb
- /usr/bin/rust-gdbgui
- /usr/bin/rust-lldb
- /usr/lib/rustlib
- /usr/lib/rust/lib
- /usr/lib/rust/man
- /usr/share/doc/rust
- _EOF_
-
- if use clippy; then
- echo /usr/bin/clippy-driver >> "${T}/provider-${P}"
- echo /usr/bin/cargo-clippy >> "${T}/provider-${P}"
- fi
- if use rustfmt; then
- echo /usr/bin/rustfmt >> "${T}/provider-${P}"
- echo /usr/bin/cargo-fmt >> "${T}/provider-${P}"
- fi
- if use rust-analyzer; then
- echo /usr/bin/rust-analyzer >> "${T}/provider-${P}"
- fi
-
- insinto /etc/env.d/rust
- doins "${T}/provider-${P}"
- popd >/dev/null || die
- #end native abi install
-
- else
- local rust_target
- rust_target="$(rust_abi $(get_abi_CHOST ${v##*.}))"
- dodir "/opt/${P}/lib/rustlib"
- cp -vr
"${WORKDIR}/rust-${PV}-${rust_target}/rust-std-${rust_target}/lib/rustlib/${rust_target}"\
- "${ED}/opt/${P}/lib/rustlib" || die
- fi
-
- # BUG: installs x86_64 binary on other arches
- rm -f "${ED}/opt/${P}/lib/rustlib/"*/bin/rust-llvm-dwp || die
-}
-
-pkg_postinst() {
- eselect rust update
-
- if has_version dev-debug/gdb || has_version llvm-core/lldb; then
- elog "Rust installs helper scripts for calling GDB and LLDB,"
- elog "for convenience they are installed under
/usr/bin/rust-{gdb,lldb}-${PV}."
- fi
-
- if has_version app-editors/emacs; then
- elog "install app-emacs/rust-mode to get emacs support for
rust."
- fi
-
- if has_version app-editors/gvim || has_version app-editors/vim; then
- elog "install app-vim/rust-vim to get vim support for rust."
- fi
-}
-
-pkg_postrm() {
- eselect rust cleanup
-}
diff --git a/dev-lang/rust-bin/rust-bin-1.77.1-r101.ebuild
b/dev-lang/rust-bin/rust-bin-1.77.1-r101.ebuild
deleted file mode 100644
index 5eb6567f5cdd..000000000000
--- a/dev-lang/rust-bin/rust-bin-1.77.1-r101.ebuild
+++ /dev/null
@@ -1,246 +0,0 @@
-# Copyright 1999-2024 Gentoo Authors
-# Distributed under the terms of the GNU General Public License v2
-
-EAPI=8
-
-LLVM_COMPAT=( 17 )
-LLVM_OPTIONAL="yes"
-
-inherit llvm-r1 multilib prefix rust-toolchain toolchain-funcs verify-sig
multilib-minimal
-
-MY_P="rust-${PV}"
-# curl -L static.rust-lang.org/dist/channel-rust-${PV}.toml 2>/dev/null | grep
"xz_url.*rust-src"
-MY_SRC_URI="${RUST_TOOLCHAIN_BASEURL%/}/2024-03-28/rust-src-${PV}.tar.xz"
-GENTOO_BIN_BASEURI="https://dev.gentoo.org/~arthurzam/distfiles/${CATEGORY}/${PN}"
# omit leading slash
-
-DESCRIPTION="Systems programming language from Mozilla"
-HOMEPAGE="https://www.rust-lang.org/"
-SRC_URI="$(rust_all_arch_uris ${MY_P})
- rust-src? ( ${MY_SRC_URI} )
-"
-# Keep this separate to allow easy commenting out if not yet built
-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}/${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}/${MY_P}-mips64-unknown-linux-gnuabi64.tar.xz )
- !big-endian? (
${GENTOO_BIN_BASEURI}/${MY_P}-mips64el-unknown-linux-gnuabi64.tar.xz )
- )
-)"
-
-LICENSE="|| ( MIT Apache-2.0 ) BSD BSD-1 BSD-2 BSD-4"
-SLOT="${PV}"
-KEYWORDS="amd64 arm arm64 ~loong ~mips ppc ppc64 ~riscv ~s390 sparc x86"
-IUSE="big-endian clippy cpu_flags_x86_sse2 doc prefix rust-analyzer rust-src
rustfmt"
-
-RDEPEND="
- >=app-eselect/eselect-rust-20190311
- dev-libs/openssl
- sys-apps/lsb-release
- sys-devel/gcc:*
- !dev-lang/rust:stable
- !dev-lang/rust-bin:stable
-"
-BDEPEND="
- prefix? ( dev-util/patchelf )
- verify-sig? ( sec-keys/openpgp-keys-rust )
-"
-
-REQUIRED_USE="x86? ( cpu_flags_x86_sse2 )"
-
-# stripping rust may break it (at least on x86_64)
-# https://github.com/rust-lang/rust/issues/112286
-RESTRICT="strip"
-
-QA_PREBUILT="
- opt/${P}/bin/.*
- opt/${P}/lib/.*.so
- opt/${P}/libexec/.*
- opt/${P}/lib/rustlib/.*/bin/.*
- opt/${P}/lib/rustlib/.*/lib/.*
-"
-
-# An rmeta file is custom binary format that contains the metadata for the
crate.
-# rmeta files do not support linking, since they do not contain compiled
object files.
-# so we can safely silence the warning for this QA check.
-QA_EXECSTACK="opt/${P}/lib/rustlib/*/lib*.rlib:lib.rmeta"
-
-VERIFY_SIG_OPENPGP_KEY_PATH="/usr/share/openpgp-keys/rust.asc"
-
-pkg_pretend() {
- if [[ "$(tc-is-softfloat)" != "no" ]] && [[ ${CHOST} == armv7* ]]; then
- die "${CHOST} is not supported by upstream Rust. You must use a
hard float version."
- fi
-}
-
-src_unpack() {
- # sadly rust-src tarball does not have corresponding .asc file
- # so do partial verification
- if use verify-sig; then
- for f in ${A}; do
- if [[ -f ${DISTDIR}/${f}.asc ]]; then
- verify-sig_verify_detached "${DISTDIR}/${f}"
"${DISTDIR}/${f}.asc"
- fi
- done
- fi
-
- default_src_unpack
-
- mv "${WORKDIR}/${MY_P}-$(rust_abi)" "${S}" || die
-}
-
-patchelf_for_bin() {
- local filetype=$(file -b ${1})
- if [[ ${filetype} == *ELF*interpreter* ]]; then
- einfo "${1}'s interpreter changed"
- patchelf ${1} --set-interpreter ${2} || die
- elif [[ ${filetype} == *script* ]]; then
- hprefixify ${1}
- fi
-}
-
-multilib_src_install() {
- if multilib_is_native_abi; then
-
- # start native abi install
- pushd "${S}" >/dev/null || die
- local analysis std
- analysis="$(grep 'analysis' ./components)"
- std="$(grep 'std' ./components)"
- local components="rustc,cargo,rust-demangler-preview,${std}"
- use doc && components="${components},rust-docs"
- use clippy && components="${components},clippy-preview"
- use rustfmt && components="${components},rustfmt-preview"
- use rust-analyzer &&
components="${components},rust-analyzer-preview,${analysis}"
- # Rust component 'rust-src' is extracted from separate archive
- if use rust-src; then
- einfo "Combining rust and rust-src installers"
- mv -v "${WORKDIR}/rust-src-${PV}/rust-src" "${S}" || die
- echo rust-src >> ./components || die
- components="${components},rust-src"
- fi
- ./install.sh \
- --components="${components}" \
- --disable-verify \
- --prefix="${ED}/opt/${P}" \
- --mandir="${ED}/opt/${P}/man" \
- --disable-ldconfig \
- || die
-
- if use prefix; then
- local interpreter=$(patchelf --print-interpreter
"${EPREFIX}"/bin/bash)
- ebegin "Changing interpreter to ${interpreter} for Gentoo
prefix at ${ED}/opt/${P}/bin"
- find "${ED}/opt/${P}/bin" -type f -print0 | \
- while IFS= read -r -d '' filename; do
- patchelf_for_bin ${filename} ${interpreter} \;
|| die
- done
- eend ${PIPESTATUS[0]}
- fi
-
- local symlinks=(
- cargo
- rustc
- rustdoc
- rust-demangler
- rust-gdb
- rust-gdbgui
- rust-lldb
- )
-
- use clippy && symlinks+=( clippy-driver cargo-clippy )
- use rustfmt && symlinks+=( rustfmt cargo-fmt )
- use rust-analyzer && symlinks+=( rust-analyzer )
-
- einfo "installing eselect-rust symlinks and paths"
- local i
- for i in "${symlinks[@]}"; do
- # we need realpath on /usr/bin/* symlink return
version-appended binary path.
- # so /usr/bin/rustc should point to
/opt/rust-bin-<ver>/bin/rustc-<ver>
- local ver_i="${i}-bin-${PV}"
- ln -v "${ED}/opt/${P}/bin/${i}" "${ED}/opt/${P}/bin/${ver_i}"
|| die
- dosym "../../opt/${P}/bin/${ver_i}" "/usr/bin/${ver_i}"
- done
-
- # symlinks to switch components to active rust in eselect
- dosym "../../../opt/${P}/lib" "/usr/lib/rust/lib-bin-${PV}"
- dosym "../../../opt/${P}/man" "/usr/lib/rust/man-bin-${PV}"
- dosym "../../opt/${P}/lib/rustlib" "/usr/lib/rustlib-bin-${PV}"
- dosym "../../../opt/${P}/share/doc/rust" "/usr/share/doc/${P}"
-
- # make all capital underscored variable
- local CARGO_TRIPLET="$(rust_abi)"
- CARGO_TRIPLET="${CARGO_TRIPLET//-/_}"
- CARGO_TRIPLET="${CARGO_TRIPLET^^}"
- cat <<-_EOF_ > "${T}/50${P}"
- LDPATH="${EPREFIX}/usr/lib/rust/lib-bin-${PV}"
- MANPATH="${EPREFIX}/usr/lib/rust/man-bin-${PV}"
- $(usev elibc_musl "CARGO_TARGET_${CARGO_TRIPLET}_RUSTFLAGS=\"-C
target-feature=-crt-static\"")
- _EOF_
- doenvd "${T}/50${P}"
-
- # note: eselect-rust adds EROOT to all paths below
- cat <<-_EOF_ > "${T}/provider-${P}"
- /usr/bin/cargo
- /usr/bin/rustdoc
- /usr/bin/rust-demangler
- /usr/bin/rust-gdb
- /usr/bin/rust-gdbgui
- /usr/bin/rust-lldb
- /usr/lib/rustlib
- /usr/lib/rust/lib
- /usr/lib/rust/man
- /usr/share/doc/rust
- _EOF_
-
- if use clippy; then
- echo /usr/bin/clippy-driver >> "${T}/provider-${P}"
- echo /usr/bin/cargo-clippy >> "${T}/provider-${P}"
- fi
- if use rustfmt; then
- echo /usr/bin/rustfmt >> "${T}/provider-${P}"
- echo /usr/bin/cargo-fmt >> "${T}/provider-${P}"
- fi
- if use rust-analyzer; then
- echo /usr/bin/rust-analyzer >> "${T}/provider-${P}"
- fi
-
- insinto /etc/env.d/rust
- doins "${T}/provider-${P}"
- popd >/dev/null || die
- #end native abi install
-
- else
- local rust_target
- rust_target="$(rust_abi $(get_abi_CHOST ${v##*.}))"
- dodir "/opt/${P}/lib/rustlib"
- cp -vr
"${WORKDIR}/rust-${PV}-${rust_target}/rust-std-${rust_target}/lib/rustlib/${rust_target}"\
- "${ED}/opt/${P}/lib/rustlib" || die
- fi
-
- # BUG: installs x86_64 binary on other arches
- rm -f "${ED}/opt/${P}/lib/rustlib/"*/bin/rust-llvm-dwp || die
-}
-
-pkg_postinst() {
- eselect rust update
-
- if has_version dev-debug/gdb || has_version llvm-core/lldb; then
- elog "Rust installs helper scripts for calling GDB and LLDB,"
- elog "for convenience they are installed under
/usr/bin/rust-{gdb,lldb}-${PV}."
- fi
-
- if has_version app-editors/emacs; then
- elog "install app-emacs/rust-mode to get emacs support for
rust."
- fi
-
- if has_version app-editors/gvim || has_version app-editors/vim; then
- elog "install app-vim/rust-vim to get vim support for rust."
- fi
-}
-
-pkg_postrm() {
- eselect rust cleanup
-}
diff --git a/dev-lang/rust-bin/rust-bin-1.79.0-r101.ebuild
b/dev-lang/rust-bin/rust-bin-1.79.0-r101.ebuild
deleted file mode 100644
index 55b9d0d15962..000000000000
--- a/dev-lang/rust-bin/rust-bin-1.79.0-r101.ebuild
+++ /dev/null
@@ -1,249 +0,0 @@
-# Copyright 1999-2024 Gentoo Authors
-# Distributed under the terms of the GNU General Public License v2
-
-EAPI=8
-
-LLVM_COMPAT=( 18 )
-LLVM_OPTIONAL="yes"
-
-inherit llvm-r1 multilib prefix rust-toolchain toolchain-funcs verify-sig
multilib-minimal
-
-MY_P="rust-${PV}"
-# curl -L static.rust-lang.org/dist/channel-rust-${PV}.toml 2>/dev/null | grep
"xz_url.*rust-src"
-MY_SRC_URI="${RUST_TOOLCHAIN_BASEURL%/}/2024-06-13/rust-src-${PV}.tar.xz"
-GENTOO_BIN_BASEURI="https://dev.gentoo.org/~arthurzam/distfiles/${CATEGORY}/${PN}"
# omit leading slash
-
-DESCRIPTION="Systems programming language from Mozilla"
-HOMEPAGE="https://www.rust-lang.org/"
-SRC_URI="$(rust_all_arch_uris ${MY_P})
- rust-src? ( ${MY_SRC_URI} )
-"
-# Keep this separate to allow easy commenting out if not yet built
-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}/${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}/${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}/${MY_P}-riscv64gc-unknown-linux-musl.tar.xz )
-)"
-
-LICENSE="|| ( MIT Apache-2.0 ) BSD BSD-1 BSD-2 BSD-4"
-SLOT="${PV}"
-KEYWORDS="amd64 arm arm64 ~loong ~mips ppc ppc64 ~riscv ~s390 sparc x86"
-IUSE="big-endian clippy cpu_flags_x86_sse2 doc prefix rust-analyzer rust-src
rustfmt"
-
-RDEPEND="
- >=app-eselect/eselect-rust-20190311
- dev-libs/openssl
- sys-apps/lsb-release
- sys-devel/gcc:*
- !dev-lang/rust:stable
- !dev-lang/rust-bin:stable
-"
-BDEPEND="
- prefix? ( dev-util/patchelf )
- verify-sig? ( sec-keys/openpgp-keys-rust )
-"
-
-REQUIRED_USE="x86? ( cpu_flags_x86_sse2 )"
-
-# stripping rust may break it (at least on x86_64)
-# https://github.com/rust-lang/rust/issues/112286
-RESTRICT="strip"
-
-QA_PREBUILT="
- opt/${P}/bin/.*
- opt/${P}/lib/.*.so*
- opt/${P}/libexec/.*
- opt/${P}/lib/rustlib/.*/bin/.*
- opt/${P}/lib/rustlib/.*/lib/.*
-"
-
-# An rmeta file is custom binary format that contains the metadata for the
crate.
-# rmeta files do not support linking, since they do not contain compiled
object files.
-# so we can safely silence the warning for this QA check.
-QA_EXECSTACK="opt/${P}/lib/rustlib/*/lib*.rlib:lib.rmeta"
-
-VERIFY_SIG_OPENPGP_KEY_PATH="/usr/share/openpgp-keys/rust.asc"
-
-pkg_pretend() {
- if [[ "$(tc-is-softfloat)" != "no" ]] && [[ ${CHOST} == armv7* ]]; then
- die "${CHOST} is not supported by upstream Rust. You must use a
hard float version."
- fi
-}
-
-src_unpack() {
- # sadly rust-src tarball does not have corresponding .asc file
- # so do partial verification
- if use verify-sig; then
- for f in ${A}; do
- if [[ -f ${DISTDIR}/${f}.asc ]]; then
- verify-sig_verify_detached "${DISTDIR}/${f}"
"${DISTDIR}/${f}.asc"
- fi
- done
- fi
-
- default_src_unpack
-
- mv "${WORKDIR}/${MY_P}-$(rust_abi)" "${S}" || die
-}
-
-patchelf_for_bin() {
- local filetype=$(file -b ${1})
- if [[ ${filetype} == *ELF*interpreter* ]]; then
- einfo "${1}'s interpreter changed"
- patchelf ${1} --set-interpreter ${2} || die
- elif [[ ${filetype} == *script* ]]; then
- hprefixify ${1}
- fi
-}
-
-multilib_src_install() {
- if multilib_is_native_abi; then
-
- # start native abi install
- pushd "${S}" >/dev/null || die
- local analysis std
- analysis="$(grep 'analysis' ./components)"
- std="$(grep 'std' ./components)"
- local components="rustc,cargo,rust-demangler-preview,${std}"
- use doc && components="${components},rust-docs"
- use clippy && components="${components},clippy-preview"
- use rustfmt && components="${components},rustfmt-preview"
- use rust-analyzer &&
components="${components},rust-analyzer-preview,${analysis}"
- # Rust component 'rust-src' is extracted from separate archive
- if use rust-src; then
- einfo "Combining rust and rust-src installers"
- mv -v "${WORKDIR}/rust-src-${PV}/rust-src" "${S}" || die
- echo rust-src >> ./components || die
- components="${components},rust-src"
- fi
- ./install.sh \
- --components="${components}" \
- --disable-verify \
- --prefix="${ED}/opt/${P}" \
- --mandir="${ED}/opt/${P}/man" \
- --disable-ldconfig \
- || die
-
- if use prefix; then
- local interpreter=$(patchelf --print-interpreter
"${EPREFIX}"/bin/bash)
- ebegin "Changing interpreter to ${interpreter} for Gentoo
prefix at ${ED}/opt/${P}/bin"
- find "${ED}/opt/${P}/bin" -type f -print0 | \
- while IFS= read -r -d '' filename; do
- patchelf_for_bin ${filename} ${interpreter} \;
|| die
- done
- eend ${PIPESTATUS[0]}
- fi
-
- local symlinks=(
- cargo
- rustc
- rustdoc
- rust-demangler
- rust-gdb
- rust-gdbgui
- rust-lldb
- )
-
- use clippy && symlinks+=( clippy-driver cargo-clippy )
- use rustfmt && symlinks+=( rustfmt cargo-fmt )
- use rust-analyzer && symlinks+=( rust-analyzer )
-
- einfo "installing eselect-rust symlinks and paths"
- local i
- for i in "${symlinks[@]}"; do
- # we need realpath on /usr/bin/* symlink return
version-appended binary path.
- # so /usr/bin/rustc should point to
/opt/rust-bin-<ver>/bin/rustc-<ver>
- local ver_i="${i}-bin-${PV}"
- ln -v "${ED}/opt/${P}/bin/${i}" "${ED}/opt/${P}/bin/${ver_i}"
|| die
- dosym "../../opt/${P}/bin/${ver_i}" "/usr/bin/${ver_i}"
- done
-
- # symlinks to switch components to active rust in eselect
- dosym "../../../opt/${P}/lib" "/usr/lib/rust/lib-bin-${PV}"
- dosym "../../../opt/${P}/man" "/usr/lib/rust/man-bin-${PV}"
- dosym "../../opt/${P}/lib/rustlib" "/usr/lib/rustlib-bin-${PV}"
- dosym "../../../opt/${P}/share/doc/rust" "/usr/share/doc/${P}"
-
- # make all capital underscored variable
- local CARGO_TRIPLET="$(rust_abi)"
- CARGO_TRIPLET="${CARGO_TRIPLET//-/_}"
- CARGO_TRIPLET="${CARGO_TRIPLET^^}"
- cat <<-_EOF_ > "${T}/50${P}"
- LDPATH="${EPREFIX}/usr/lib/rust/lib-bin-${PV}"
- MANPATH="${EPREFIX}/usr/lib/rust/man-bin-${PV}"
- $(usev elibc_musl "CARGO_TARGET_${CARGO_TRIPLET}_RUSTFLAGS=\"-C
target-feature=-crt-static\"")
- _EOF_
- doenvd "${T}/50${P}"
-
- # note: eselect-rust adds EROOT to all paths below
- cat <<-_EOF_ > "${T}/provider-${P}"
- /usr/bin/cargo
- /usr/bin/rustdoc
- /usr/bin/rust-demangler
- /usr/bin/rust-gdb
- /usr/bin/rust-gdbgui
- /usr/bin/rust-lldb
- /usr/lib/rustlib
- /usr/lib/rust/lib
- /usr/lib/rust/man
- /usr/share/doc/rust
- _EOF_
-
- if use clippy; then
- echo /usr/bin/clippy-driver >> "${T}/provider-${P}"
- echo /usr/bin/cargo-clippy >> "${T}/provider-${P}"
- fi
- if use rustfmt; then
- echo /usr/bin/rustfmt >> "${T}/provider-${P}"
- echo /usr/bin/cargo-fmt >> "${T}/provider-${P}"
- fi
- if use rust-analyzer; then
- echo /usr/bin/rust-analyzer >> "${T}/provider-${P}"
- fi
-
- insinto /etc/env.d/rust
- doins "${T}/provider-${P}"
- popd >/dev/null || die
- #end native abi install
-
- else
- local rust_target
- rust_target="$(rust_abi $(get_abi_CHOST ${v##*.}))"
- dodir "/opt/${P}/lib/rustlib"
- cp -vr
"${WORKDIR}/rust-${PV}-${rust_target}/rust-std-${rust_target}/lib/rustlib/${rust_target}"\
- "${ED}/opt/${P}/lib/rustlib" || die
- fi
-
- # BUG: installs x86_64 binary on other arches
- rm -f "${ED}/opt/${P}/lib/rustlib/"*/bin/rust-llvm-dwp || die
-}
-
-pkg_postinst() {
- eselect rust update
-
- if has_version dev-debug/gdb || has_version llvm-core/lldb; then
- elog "Rust installs helper scripts for calling GDB and LLDB,"
- elog "for convenience they are installed under
/usr/bin/rust-{gdb,lldb}-${PV}."
- fi
-
- if has_version app-editors/emacs; then
- elog "install app-emacs/rust-mode to get emacs support for
rust."
- fi
-
- if has_version app-editors/gvim || has_version app-editors/vim; then
- elog "install app-vim/rust-vim to get vim support for rust."
- fi
-}
-
-pkg_postrm() {
- eselect rust cleanup
-}
diff --git a/dev-lang/rust-bin/rust-bin-1.80.1-r101.ebuild
b/dev-lang/rust-bin/rust-bin-1.80.1-r101.ebuild
deleted file mode 100644
index 8b3aab679bda..000000000000
--- a/dev-lang/rust-bin/rust-bin-1.80.1-r101.ebuild
+++ /dev/null
@@ -1,253 +0,0 @@
-# Copyright 1999-2024 Gentoo Authors
-# Distributed under the terms of the GNU General Public License v2
-
-EAPI=8
-
-LLVM_COMPAT=( 18 )
-LLVM_OPTIONAL="yes"
-
-inherit llvm-r1 multilib prefix rust-toolchain toolchain-funcs verify-sig
multilib-minimal
-
-MY_P="rust-${PV}"
-# curl -L static.rust-lang.org/dist/channel-rust-${PV}.toml 2>/dev/null | grep
"xz_url.*rust-src"
-MY_SRC_URI="${RUST_TOOLCHAIN_BASEURL%/}/2024-08-08/rust-src-${PV}.tar.xz"
-GENTOO_BIN_BASEURI="https://dev.gentoo.org/~arthurzam/distfiles/${CATEGORY}/${PN}"
# omit leading slash
-
-DESCRIPTION="Systems programming language from Mozilla"
-HOMEPAGE="https://www.rust-lang.org/"
-SRC_URI="$(rust_all_arch_uris ${MY_P})
- rust-src? ( ${MY_SRC_URI} )
-"
-# Keep this separate to allow easy commenting out if not yet built
-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}/${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}/${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}/${MY_P}-riscv64gc-unknown-linux-musl.tar.xz )
-)"
-SRC_URI+=" ppc64? ( elibc_musl? (
- big-endian? (
${GENTOO_BIN_BASEURI}/${MY_P}-powerpc64-unknown-linux-musl.tar.xz )
- !big-endian? (
${GENTOO_BIN_BASEURI}/${MY_P}-powerpc64le-unknown-linux-musl.tar.xz )
-) )"
-
-LICENSE="|| ( MIT Apache-2.0 ) BSD BSD-1 BSD-2 BSD-4"
-SLOT="${PV}"
-KEYWORDS="amd64 arm arm64 ~loong ~mips ppc ppc64 ~riscv ~s390 sparc x86"
-IUSE="big-endian clippy cpu_flags_x86_sse2 doc prefix rust-analyzer rust-src
rustfmt"
-
-RDEPEND="
- >=app-eselect/eselect-rust-20190311
- dev-libs/openssl
- sys-apps/lsb-release
- sys-devel/gcc:*
- !dev-lang/rust:stable
- !dev-lang/rust-bin:stable
-"
-BDEPEND="
- prefix? ( dev-util/patchelf )
- verify-sig? ( sec-keys/openpgp-keys-rust )
-"
-
-REQUIRED_USE="x86? ( cpu_flags_x86_sse2 )"
-
-# stripping rust may break it (at least on x86_64)
-# https://github.com/rust-lang/rust/issues/112286
-RESTRICT="strip"
-
-QA_PREBUILT="
- opt/${P}/bin/.*
- opt/${P}/lib/.*.so*
- opt/${P}/libexec/.*
- opt/${P}/lib/rustlib/.*/bin/.*
- opt/${P}/lib/rustlib/.*/lib/.*
-"
-
-# An rmeta file is custom binary format that contains the metadata for the
crate.
-# rmeta files do not support linking, since they do not contain compiled
object files.
-# so we can safely silence the warning for this QA check.
-QA_EXECSTACK="opt/${P}/lib/rustlib/*/lib*.rlib:lib.rmeta"
-
-VERIFY_SIG_OPENPGP_KEY_PATH="/usr/share/openpgp-keys/rust.asc"
-
-pkg_pretend() {
- if [[ "$(tc-is-softfloat)" != "no" ]] && [[ ${CHOST} == armv7* ]]; then
- die "${CHOST} is not supported by upstream Rust. You must use a
hard float version."
- fi
-}
-
-src_unpack() {
- # sadly rust-src tarball does not have corresponding .asc file
- # so do partial verification
- if use verify-sig; then
- for f in ${A}; do
- if [[ -f ${DISTDIR}/${f}.asc ]]; then
- verify-sig_verify_detached "${DISTDIR}/${f}"
"${DISTDIR}/${f}.asc"
- fi
- done
- fi
-
- default_src_unpack
-
- mv "${WORKDIR}/${MY_P}-$(rust_abi)" "${S}" || die
-}
-
-patchelf_for_bin() {
- local filetype=$(file -b ${1})
- if [[ ${filetype} == *ELF*interpreter* ]]; then
- einfo "${1}'s interpreter changed"
- patchelf ${1} --set-interpreter ${2} || die
- elif [[ ${filetype} == *script* ]]; then
- hprefixify ${1}
- fi
-}
-
-multilib_src_install() {
- if multilib_is_native_abi; then
-
- # start native abi install
- pushd "${S}" >/dev/null || die
- local analysis std
- analysis="$(grep 'analysis' ./components)"
- std="$(grep 'std' ./components)"
- local components="rustc,cargo,rust-demangler-preview,${std}"
- use doc && components="${components},rust-docs"
- use clippy && components="${components},clippy-preview"
- use rustfmt && components="${components},rustfmt-preview"
- use rust-analyzer &&
components="${components},rust-analyzer-preview,${analysis}"
- # Rust component 'rust-src' is extracted from separate archive
- if use rust-src; then
- einfo "Combining rust and rust-src installers"
- mv -v "${WORKDIR}/rust-src-${PV}/rust-src" "${S}" || die
- echo rust-src >> ./components || die
- components="${components},rust-src"
- fi
- ./install.sh \
- --components="${components}" \
- --disable-verify \
- --prefix="${ED}/opt/${P}" \
- --mandir="${ED}/opt/${P}/man" \
- --disable-ldconfig \
- || die
-
- if use prefix; then
- local interpreter=$(patchelf --print-interpreter
"${EPREFIX}"/bin/bash)
- ebegin "Changing interpreter to ${interpreter} for Gentoo
prefix at ${ED}/opt/${P}/bin"
- find "${ED}/opt/${P}/bin" -type f -print0 | \
- while IFS= read -r -d '' filename; do
- patchelf_for_bin ${filename} ${interpreter} \;
|| die
- done
- eend ${PIPESTATUS[0]}
- fi
-
- local symlinks=(
- cargo
- rustc
- rustdoc
- rust-demangler
- rust-gdb
- rust-gdbgui
- rust-lldb
- )
-
- use clippy && symlinks+=( clippy-driver cargo-clippy )
- use rustfmt && symlinks+=( rustfmt cargo-fmt )
- use rust-analyzer && symlinks+=( rust-analyzer )
-
- einfo "installing eselect-rust symlinks and paths"
- local i
- for i in "${symlinks[@]}"; do
- # we need realpath on /usr/bin/* symlink return
version-appended binary path.
- # so /usr/bin/rustc should point to
/opt/rust-bin-<ver>/bin/rustc-<ver>
- local ver_i="${i}-bin-${PV}"
- ln -v "${ED}/opt/${P}/bin/${i}" "${ED}/opt/${P}/bin/${ver_i}"
|| die
- dosym "../../opt/${P}/bin/${ver_i}" "/usr/bin/${ver_i}"
- done
-
- # symlinks to switch components to active rust in eselect
- dosym "../../../opt/${P}/lib" "/usr/lib/rust/lib-bin-${PV}"
- dosym "../../../opt/${P}/man" "/usr/lib/rust/man-bin-${PV}"
- dosym "../../opt/${P}/lib/rustlib" "/usr/lib/rustlib-bin-${PV}"
- dosym "../../../opt/${P}/share/doc/rust" "/usr/share/doc/${P}"
-
- # make all capital underscored variable
- local CARGO_TRIPLET="$(rust_abi)"
- CARGO_TRIPLET="${CARGO_TRIPLET//-/_}"
- CARGO_TRIPLET="${CARGO_TRIPLET^^}"
- cat <<-_EOF_ > "${T}/50${P}"
- LDPATH="${EPREFIX}/usr/lib/rust/lib-bin-${PV}"
- MANPATH="${EPREFIX}/usr/lib/rust/man-bin-${PV}"
- $(usev elibc_musl "CARGO_TARGET_${CARGO_TRIPLET}_RUSTFLAGS=\"-C
target-feature=-crt-static\"")
- _EOF_
- doenvd "${T}/50${P}"
-
- # note: eselect-rust adds EROOT to all paths below
- cat <<-_EOF_ > "${T}/provider-${P}"
- /usr/bin/cargo
- /usr/bin/rustdoc
- /usr/bin/rust-demangler
- /usr/bin/rust-gdb
- /usr/bin/rust-gdbgui
- /usr/bin/rust-lldb
- /usr/lib/rustlib
- /usr/lib/rust/lib
- /usr/lib/rust/man
- /usr/share/doc/rust
- _EOF_
-
- if use clippy; then
- echo /usr/bin/clippy-driver >> "${T}/provider-${P}"
- echo /usr/bin/cargo-clippy >> "${T}/provider-${P}"
- fi
- if use rustfmt; then
- echo /usr/bin/rustfmt >> "${T}/provider-${P}"
- echo /usr/bin/cargo-fmt >> "${T}/provider-${P}"
- fi
- if use rust-analyzer; then
- echo /usr/bin/rust-analyzer >> "${T}/provider-${P}"
- fi
-
- insinto /etc/env.d/rust
- doins "${T}/provider-${P}"
- popd >/dev/null || die
- #end native abi install
-
- else
- local rust_target
- rust_target="$(rust_abi $(get_abi_CHOST ${v##*.}))"
- dodir "/opt/${P}/lib/rustlib"
- cp -vr
"${WORKDIR}/rust-${PV}-${rust_target}/rust-std-${rust_target}/lib/rustlib/${rust_target}"\
- "${ED}/opt/${P}/lib/rustlib" || die
- fi
-
- # BUG: installs x86_64 binary on other arches
- rm -f "${ED}/opt/${P}/lib/rustlib/"*/bin/rust-llvm-dwp || die
-}
-
-pkg_postinst() {
- eselect rust update
-
- if has_version dev-debug/gdb || has_version llvm-core/lldb; then
- elog "Rust installs helper scripts for calling GDB and LLDB,"
- elog "for convenience they are installed under
/usr/bin/rust-{gdb,lldb}-${PV}."
- fi
-
- if has_version app-editors/emacs; then
- elog "install app-emacs/rust-mode to get emacs support for
rust."
- fi
-
- if has_version app-editors/gvim || has_version app-editors/vim; then
- elog "install app-vim/rust-vim to get vim support for rust."
- fi
-}
-
-pkg_postrm() {
- eselect rust cleanup
-}
diff --git a/dev-lang/rust-bin/rust-bin-1.81.0-r101.ebuild
b/dev-lang/rust-bin/rust-bin-1.81.0-r101.ebuild
deleted file mode 100644
index aabb1ed9c384..000000000000
--- a/dev-lang/rust-bin/rust-bin-1.81.0-r101.ebuild
+++ /dev/null
@@ -1,251 +0,0 @@
-# Copyright 1999-2024 Gentoo Authors
-# Distributed under the terms of the GNU General Public License v2
-
-EAPI=8
-
-LLVM_COMPAT=( 18 )
-LLVM_OPTIONAL="yes"
-
-inherit llvm-r1 multilib prefix rust-toolchain toolchain-funcs verify-sig
multilib-minimal optfeature
-
-MY_P="rust-${PV}"
-# curl -L static.rust-lang.org/dist/channel-rust-${PV}.toml 2>/dev/null | grep
"xz_url.*rust-src"
-MY_SRC_URI="${RUST_TOOLCHAIN_BASEURL%/}/2024-09-05/rust-src-${PV}.tar.xz"
-GENTOO_BIN_BASEURI="https://dev.gentoo.org/~arthurzam/distfiles/${CATEGORY}/${PN}"
# omit leading slash
-
-DESCRIPTION="Systems programming language from Mozilla"
-HOMEPAGE="https://www.rust-lang.org/"
-SRC_URI="$(rust_all_arch_uris ${MY_P})
- rust-src? ( ${MY_SRC_URI} )
-"
-# Keep this separate to allow easy commenting out if not yet built
-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}/${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}/${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}/${MY_P}-riscv64gc-unknown-linux-musl.tar.xz )
-)"
-SRC_URI+=" ppc64? ( elibc_musl? (
- big-endian? (
${GENTOO_BIN_BASEURI}/${MY_P}-powerpc64-unknown-linux-musl.tar.xz )
- !big-endian? (
${GENTOO_BIN_BASEURI}/${MY_P}-powerpc64le-unknown-linux-musl.tar.xz )
-) )"
-
-LICENSE="|| ( MIT Apache-2.0 ) BSD BSD-1 BSD-2 BSD-4"
-SLOT="${PV}"
-KEYWORDS="amd64 arm arm64 ~loong ~mips ppc ppc64 ~riscv ~s390 sparc x86"
-IUSE="big-endian clippy cpu_flags_x86_sse2 doc prefix rust-analyzer rust-src
rustfmt"
-
-RDEPEND="
- >=app-eselect/eselect-rust-20190311
- dev-libs/openssl
- sys-apps/lsb-release
- sys-devel/gcc:*
- !dev-lang/rust:stable
- !dev-lang/rust-bin:stable
-"
-BDEPEND="
- prefix? ( dev-util/patchelf )
- verify-sig? ( sec-keys/openpgp-keys-rust )
-"
-
-REQUIRED_USE="x86? ( cpu_flags_x86_sse2 )"
-
-# stripping rust may break it (at least on x86_64)
-# https://github.com/rust-lang/rust/issues/112286
-RESTRICT="strip"
-
-QA_PREBUILT="
- opt/${P}/bin/.*
- opt/${P}/lib/.*.so*
- opt/${P}/libexec/.*
- opt/${P}/lib/rustlib/.*/bin/.*
- opt/${P}/lib/rustlib/.*/lib/.*
-"
-
-# An rmeta file is custom binary format that contains the metadata for the
crate.
-# rmeta files do not support linking, since they do not contain compiled
object files.
-# so we can safely silence the warning for this QA check.
-QA_EXECSTACK="opt/${P}/lib/rustlib/*/lib*.rlib:lib.rmeta"
-
-VERIFY_SIG_OPENPGP_KEY_PATH="/usr/share/openpgp-keys/rust.asc"
-
-pkg_pretend() {
- if [[ "$(tc-is-softfloat)" != "no" ]] && [[ ${CHOST} == armv7* ]]; then
- die "${CHOST} is not supported by upstream Rust. You must use a
hard float version."
- fi
-}
-
-src_unpack() {
- # sadly rust-src tarball does not have corresponding .asc file
- # so do partial verification
- if use verify-sig; then
- for f in ${A}; do
- if [[ -f ${DISTDIR}/${f}.asc ]]; then
- verify-sig_verify_detached "${DISTDIR}/${f}"
"${DISTDIR}/${f}.asc"
- fi
- done
- fi
-
- default_src_unpack
-
- mv "${WORKDIR}/${MY_P}-$(rust_abi)" "${S}" || die
-}
-
-patchelf_for_bin() {
- local filetype=$(file -b ${1})
- if [[ ${filetype} == *ELF*interpreter* ]]; then
- einfo "${1}'s interpreter changed"
- patchelf ${1} --set-interpreter ${2} || die
- elif [[ ${filetype} == *script* ]]; then
- hprefixify ${1}
- fi
-}
-
-multilib_src_install() {
- if multilib_is_native_abi; then
-
- # start native abi install
- pushd "${S}" >/dev/null || die
- local analysis std
- analysis="$(grep 'analysis' ./components)"
- std="$(grep 'std' ./components)"
- local components="rustc,cargo,${std}"
- use doc && components="${components},rust-docs"
- use clippy && components="${components},clippy-preview"
- use rustfmt && components="${components},rustfmt-preview"
- use rust-analyzer &&
components="${components},rust-analyzer-preview,${analysis}"
- # Rust component 'rust-src' is extracted from separate archive
- if use rust-src; then
- einfo "Combining rust and rust-src installers"
- mv -v "${WORKDIR}/rust-src-${PV}/rust-src" "${S}" || die
- echo rust-src >> ./components || die
- components="${components},rust-src"
- fi
- ./install.sh \
- --components="${components}" \
- --disable-verify \
- --prefix="${ED}/opt/${P}" \
- --mandir="${ED}/opt/${P}/man" \
- --disable-ldconfig \
- || die
-
- if use prefix; then
- local interpreter=$(patchelf --print-interpreter
"${EPREFIX}"/bin/bash)
- ebegin "Changing interpreter to ${interpreter} for Gentoo
prefix at ${ED}/opt/${P}/bin"
- find "${ED}/opt/${P}/bin" -type f -print0 | \
- while IFS= read -r -d '' filename; do
- patchelf_for_bin ${filename} ${interpreter} \;
|| die
- done
- eend ${PIPESTATUS[0]}
- fi
-
- local symlinks=(
- cargo
- rustc
- rustdoc
- rust-gdb
- rust-gdbgui
- rust-lldb
- )
-
- use clippy && symlinks+=( clippy-driver cargo-clippy )
- use rustfmt && symlinks+=( rustfmt cargo-fmt )
- use rust-analyzer && symlinks+=( rust-analyzer )
-
- einfo "installing eselect-rust symlinks and paths"
- local i
- for i in "${symlinks[@]}"; do
- # we need realpath on /usr/bin/* symlink return
version-appended binary path.
- # so /usr/bin/rustc should point to
/opt/rust-bin-<ver>/bin/rustc-<ver>
- local ver_i="${i}-bin-${PV}"
- ln -v "${ED}/opt/${P}/bin/${i}" "${ED}/opt/${P}/bin/${ver_i}"
|| die
- dosym "../../opt/${P}/bin/${ver_i}" "/usr/bin/${ver_i}"
- done
-
- # symlinks to switch components to active rust in eselect
- dosym "../../../opt/${P}/lib" "/usr/lib/rust/lib-bin-${PV}"
- dosym "../../../opt/${P}/man" "/usr/lib/rust/man-bin-${PV}"
- dosym "../../opt/${P}/lib/rustlib" "/usr/lib/rustlib-bin-${PV}"
- dosym "../../../opt/${P}/share/doc/rust" "/usr/share/doc/${P}"
-
- # make all capital underscored variable
- local CARGO_TRIPLET="$(rust_abi)"
- CARGO_TRIPLET="${CARGO_TRIPLET//-/_}"
- CARGO_TRIPLET="${CARGO_TRIPLET^^}"
- cat <<-_EOF_ > "${T}/50${P}"
- LDPATH="${EPREFIX}/usr/lib/rust/lib-bin-${PV}"
- MANPATH="${EPREFIX}/usr/lib/rust/man-bin-${PV}"
- $(usev elibc_musl "CARGO_TARGET_${CARGO_TRIPLET}_RUSTFLAGS=\"-C
target-feature=-crt-static\"")
- _EOF_
- doenvd "${T}/50${P}"
-
- # note: eselect-rust adds EROOT to all paths below
- cat <<-_EOF_ > "${T}/provider-${P}"
- /usr/bin/cargo
- /usr/bin/rustdoc
- /usr/bin/rust-gdb
- /usr/bin/rust-gdbgui
- /usr/bin/rust-lldb
- /usr/lib/rustlib
- /usr/lib/rust/lib
- /usr/lib/rust/man
- /usr/share/doc/rust
- _EOF_
-
- if use clippy; then
- echo /usr/bin/clippy-driver >> "${T}/provider-${P}"
- echo /usr/bin/cargo-clippy >> "${T}/provider-${P}"
- fi
- if use rustfmt; then
- echo /usr/bin/rustfmt >> "${T}/provider-${P}"
- echo /usr/bin/cargo-fmt >> "${T}/provider-${P}"
- fi
- if use rust-analyzer; then
- echo /usr/bin/rust-analyzer >> "${T}/provider-${P}"
- fi
-
- insinto /etc/env.d/rust
- doins "${T}/provider-${P}"
- popd >/dev/null || die
- #end native abi install
-
- else
- local rust_target
- rust_target="$(rust_abi $(get_abi_CHOST ${v##*.}))"
- dodir "/opt/${P}/lib/rustlib"
- cp -vr
"${WORKDIR}/rust-${PV}-${rust_target}/rust-std-${rust_target}/lib/rustlib/${rust_target}"\
- "${ED}/opt/${P}/lib/rustlib" || die
- fi
-
- # BUG: installs x86_64 binary on other arches
- rm -f "${ED}/opt/${P}/lib/rustlib/"*/bin/rust-llvm-dwp || die
-}
-
-pkg_postinst() {
- eselect rust update
-
- if has_version dev-debug/gdb || has_version llvm-core/lldb; then
- elog "Rust installs helper scripts for calling GDB and LLDB,"
- elog "for convenience they are installed under
/usr/bin/rust-{gdb,lldb}-${PV}."
- fi
-
- if has_version app-editors/emacs; then
- optfeature "emacs support for rust" app-emacs/rust-mode
- fi
-
- if has_version app-editors/gvim || has_version app-editors/vim; then
- optfeature "vim support for rust" app-vim/rust-vim
- fi
-}
-
-pkg_postrm() {
- eselect rust cleanup
-}
diff --git a/dev-lang/rust-bin/rust-bin-1.82.0-r101.ebuild
b/dev-lang/rust-bin/rust-bin-1.82.0-r101.ebuild
deleted file mode 100644
index b1a1d5f9037b..000000000000
--- a/dev-lang/rust-bin/rust-bin-1.82.0-r101.ebuild
+++ /dev/null
@@ -1,253 +0,0 @@
-# Copyright 1999-2024 Gentoo Authors
-# Distributed under the terms of the GNU General Public License v2
-
-EAPI=8
-
-LLVM_COMPAT=( 19 )
-LLVM_OPTIONAL="yes"
-
-inherit llvm-r1 multilib prefix rust-toolchain toolchain-funcs verify-sig
multilib-minimal optfeature
-
-MY_P="rust-${PV}"
-# curl -L static.rust-lang.org/dist/channel-rust-${PV}.toml 2>/dev/null | grep
"xz_url.*rust-src"
-MY_SRC_URI="${RUST_TOOLCHAIN_BASEURL%/}/2024-10-17/rust-src-${PV}.tar.xz"
-GENTOO_BIN_BASEURI="https://dev.gentoo.org/~arthurzam/distfiles/${CATEGORY}/${PN}"
# omit leading slash
-
-DESCRIPTION="Systems programming language from Mozilla"
-HOMEPAGE="https://www.rust-lang.org/"
-SRC_URI="$(rust_all_arch_uris ${MY_P})
- rust-src? ( ${MY_SRC_URI} )
-"
-# Keep this separate to allow easy commenting out if not yet built
-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}/${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}/${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}/${MY_P}-riscv64gc-unknown-linux-musl.tar.xz )
-)"
-SRC_URI+=" ppc64? ( elibc_musl? (
- big-endian? (
${GENTOO_BIN_BASEURI}/${MY_P}-powerpc64-unknown-linux-musl.tar.xz )
- !big-endian? (
${GENTOO_BIN_BASEURI}/${MY_P}-powerpc64le-unknown-linux-musl.tar.xz )
-) )"
-
-LICENSE="|| ( MIT Apache-2.0 ) BSD BSD-1 BSD-2 BSD-4"
-SLOT="${PV}"
-KEYWORDS="amd64 arm arm64 ~loong ~mips ppc ppc64 ~riscv ~s390 sparc x86"
-IUSE="big-endian clippy cpu_flags_x86_sse2 doc prefix rust-analyzer rust-src
rustfmt"
-
-RDEPEND="
- >=app-eselect/eselect-rust-20190311
- dev-libs/openssl
- sys-apps/lsb-release
- sys-devel/gcc:*
- !dev-lang/rust:stable
- !dev-lang/rust-bin:stable
-"
-BDEPEND="
- prefix? ( dev-util/patchelf )
- verify-sig? ( sec-keys/openpgp-keys-rust )
-"
-
-REQUIRED_USE="x86? ( cpu_flags_x86_sse2 )"
-
-# stripping rust may break it (at least on x86_64)
-# https://github.com/rust-lang/rust/issues/112286
-RESTRICT="strip"
-
-QA_PREBUILT="
- opt/${P}/bin/.*
- opt/${P}/lib/.*.so*
- opt/${P}/libexec/.*
- opt/${P}/lib/rustlib/.*/bin/.*
- opt/${P}/lib/rustlib/.*/lib/.*
-"
-
-# An rmeta file is custom binary format that contains the metadata for the
crate.
-# rmeta files do not support linking, since they do not contain compiled
object files.
-# so we can safely silence the warning for this QA check.
-QA_EXECSTACK="opt/${P}/lib/rustlib/*/lib*.rlib:lib.rmeta"
-
-VERIFY_SIG_OPENPGP_KEY_PATH="/usr/share/openpgp-keys/rust.asc"
-
-pkg_pretend() {
- if [[ "$(tc-is-softfloat)" != "no" ]] && [[ ${CHOST} == armv7* ]]; then
- die "${CHOST} is not supported by upstream Rust. You must use a
hard float version."
- fi
-}
-
-src_unpack() {
- # sadly rust-src tarball does not have corresponding .asc file
- # so do partial verification
- if use verify-sig; then
- for f in ${A}; do
- if [[ -f ${DISTDIR}/${f}.asc ]]; then
- verify-sig_verify_detached "${DISTDIR}/${f}"
"${DISTDIR}/${f}.asc"
- fi
- done
- fi
-
- default_src_unpack
-
- mv "${WORKDIR}/${MY_P}-$(rust_abi)" "${S}" || die
-}
-
-patchelf_for_bin() {
- local filetype=$(file -b ${1})
- if [[ ${filetype} == *ELF*interpreter* ]]; then
- einfo "${1}'s interpreter changed"
- patchelf ${1} --set-interpreter ${2} || die
- elif [[ ${filetype} == *script* ]]; then
- hprefixify ${1}
- fi
-}
-
-multilib_src_install() {
- if multilib_is_native_abi; then
-
- # start native abi install
- pushd "${S}" >/dev/null || die
- local analysis std
- analysis="$(grep 'analysis' ./components)"
- std="$(grep 'std' ./components)"
- local components="rustc,cargo,${std}"
- use doc && components="${components},rust-docs"
- use clippy && components="${components},clippy-preview"
- use rustfmt && components="${components},rustfmt-preview"
- use rust-analyzer &&
components="${components},rust-analyzer-preview,${analysis}"
- # Rust component 'rust-src' is extracted from separate archive
- if use rust-src; then
- einfo "Combining rust and rust-src installers"
- mv -v "${WORKDIR}/rust-src-${PV}/rust-src" "${S}" || die
- echo rust-src >> ./components || die
- components="${components},rust-src"
- fi
- ./install.sh \
- --components="${components}" \
- --disable-verify \
- --prefix="${ED}/opt/${P}" \
- --mandir="${ED}/opt/${P}/man" \
- --disable-ldconfig \
- || die
-
- docompress /opt/${P}/man/
-
- if use prefix; then
- local interpreter=$(patchelf --print-interpreter
"${EPREFIX}"/bin/bash)
- ebegin "Changing interpreter to ${interpreter} for Gentoo
prefix at ${ED}/opt/${P}/bin"
- find "${ED}/opt/${P}/bin" -type f -print0 | \
- while IFS= read -r -d '' filename; do
- patchelf_for_bin ${filename} ${interpreter} \;
|| die
- done
- eend ${PIPESTATUS[0]}
- fi
-
- local symlinks=(
- cargo
- rustc
- rustdoc
- rust-gdb
- rust-gdbgui
- rust-lldb
- )
-
- use clippy && symlinks+=( clippy-driver cargo-clippy )
- use rustfmt && symlinks+=( rustfmt cargo-fmt )
- use rust-analyzer && symlinks+=( rust-analyzer )
-
- einfo "installing eselect-rust symlinks and paths"
- local i
- for i in "${symlinks[@]}"; do
- # we need realpath on /usr/bin/* symlink return
version-appended binary path.
- # so /usr/bin/rustc should point to
/opt/rust-bin-<ver>/bin/rustc-<ver>
- local ver_i="${i}-bin-${PV}"
- ln -v "${ED}/opt/${P}/bin/${i}" "${ED}/opt/${P}/bin/${ver_i}"
|| die
- dosym "../../opt/${P}/bin/${ver_i}" "/usr/bin/${ver_i}"
- done
-
- # symlinks to switch components to active rust in eselect
- dosym "../../../opt/${P}/lib" "/usr/lib/rust/lib-bin-${PV}"
- dosym "../../../opt/${P}/man" "/usr/lib/rust/man-bin-${PV}"
- dosym "../../opt/${P}/lib/rustlib" "/usr/lib/rustlib-bin-${PV}"
- dosym "../../../opt/${P}/share/doc/rust" "/usr/share/doc/${P}"
-
- # make all capital underscored variable
- local CARGO_TRIPLET="$(rust_abi)"
- CARGO_TRIPLET="${CARGO_TRIPLET//-/_}"
- CARGO_TRIPLET="${CARGO_TRIPLET^^}"
- cat <<-_EOF_ > "${T}/50${P}"
- LDPATH="${EPREFIX}/usr/lib/rust/lib-bin-${PV}"
- MANPATH="${EPREFIX}/usr/lib/rust/man-bin-${PV}"
- $(usev elibc_musl "CARGO_TARGET_${CARGO_TRIPLET}_RUSTFLAGS=\"-C
target-feature=-crt-static\"")
- _EOF_
- doenvd "${T}/50${P}"
-
- # note: eselect-rust adds EROOT to all paths below
- cat <<-_EOF_ > "${T}/provider-${P}"
- /usr/bin/cargo
- /usr/bin/rustdoc
- /usr/bin/rust-gdb
- /usr/bin/rust-gdbgui
- /usr/bin/rust-lldb
- /usr/lib/rustlib
- /usr/lib/rust/lib
- /usr/lib/rust/man
- /usr/share/doc/rust
- _EOF_
-
- if use clippy; then
- echo /usr/bin/clippy-driver >> "${T}/provider-${P}"
- echo /usr/bin/cargo-clippy >> "${T}/provider-${P}"
- fi
- if use rustfmt; then
- echo /usr/bin/rustfmt >> "${T}/provider-${P}"
- echo /usr/bin/cargo-fmt >> "${T}/provider-${P}"
- fi
- if use rust-analyzer; then
- echo /usr/bin/rust-analyzer >> "${T}/provider-${P}"
- fi
-
- insinto /etc/env.d/rust
- doins "${T}/provider-${P}"
- popd >/dev/null || die
- #end native abi install
-
- else
- local rust_target
- rust_target="$(rust_abi $(get_abi_CHOST ${v##*.}))"
- dodir "/opt/${P}/lib/rustlib"
- cp -vr
"${WORKDIR}/rust-${PV}-${rust_target}/rust-std-${rust_target}/lib/rustlib/${rust_target}"\
- "${ED}/opt/${P}/lib/rustlib" || die
- fi
-
- # BUG: installs x86_64 binary on other arches
- rm -f "${ED}/opt/${P}/lib/rustlib/"*/bin/rust-llvm-dwp || die
-}
-
-pkg_postinst() {
- eselect rust update
-
- if has_version dev-debug/gdb || has_version llvm-core/lldb; then
- elog "Rust installs helper scripts for calling GDB and LLDB,"
- elog "for convenience they are installed under
/usr/bin/rust-{gdb,lldb}-${PV}."
- fi
-
- if has_version app-editors/emacs; then
- optfeature "emacs support for rust" app-emacs/rust-mode
- fi
-
- if has_version app-editors/gvim || has_version app-editors/vim; then
- optfeature "vim support for rust" app-vim/rust-vim
- fi
-}
-
-pkg_postrm() {
- eselect rust cleanup
-}
diff --git a/dev-lang/rust-bin/rust-bin-1.83.0.ebuild
b/dev-lang/rust-bin/rust-bin-1.83.0.ebuild
deleted file mode 100644
index eae591d46115..000000000000
--- a/dev-lang/rust-bin/rust-bin-1.83.0.ebuild
+++ /dev/null
@@ -1,253 +0,0 @@
-# Copyright 1999-2025 Gentoo Authors
-# Distributed under the terms of the GNU General Public License v2
-
-EAPI=8
-
-LLVM_COMPAT=( 19 )
-LLVM_OPTIONAL="yes"
-
-inherit llvm-r1 multilib prefix rust-toolchain toolchain-funcs verify-sig
multilib-minimal optfeature
-
-MY_P="rust-${PV}"
-# curl -L static.rust-lang.org/dist/channel-rust-${PV}.toml 2>/dev/null | grep
"xz_url.*rust-src"
-MY_SRC_URI="${RUST_TOOLCHAIN_BASEURL%/}/2024-11-28/rust-src-${PV}.tar.xz"
-GENTOO_BIN_BASEURI="https://dev.gentoo.org/~arthurzam/distfiles/${CATEGORY}/${PN}"
# omit leading slash
-
-DESCRIPTION="Systems programming language from Mozilla"
-HOMEPAGE="https://www.rust-lang.org/"
-SRC_URI="$(rust_all_arch_uris ${MY_P})
- rust-src? ( ${MY_SRC_URI} )
-"
-# Keep this separate to allow easy commenting out if not yet built
-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}/${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}/${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}/${MY_P}-riscv64gc-unknown-linux-musl.tar.xz )
-)"
-SRC_URI+=" ppc64? ( elibc_musl? (
- big-endian? (
${GENTOO_BIN_BASEURI}/${MY_P}-powerpc64-unknown-linux-musl.tar.xz )
- !big-endian? (
${GENTOO_BIN_BASEURI}/${MY_P}-powerpc64le-unknown-linux-musl.tar.xz )
-) )"
-
-LICENSE="|| ( MIT Apache-2.0 ) BSD BSD-1 BSD-2 BSD-4"
-SLOT="${PV}"
-KEYWORDS="amd64 arm arm64 ~loong ~mips ppc ppc64 ~riscv ~s390 sparc x86"
-IUSE="big-endian clippy cpu_flags_x86_sse2 doc prefix rust-analyzer rust-src
rustfmt"
-
-RDEPEND="
- >=app-eselect/eselect-rust-20190311
- dev-libs/openssl
- sys-apps/lsb-release
- sys-devel/gcc:*
- !dev-lang/rust:stable
- !dev-lang/rust-bin:stable
-"
-BDEPEND="
- prefix? ( dev-util/patchelf )
- verify-sig? ( sec-keys/openpgp-keys-rust )
-"
-
-REQUIRED_USE="x86? ( cpu_flags_x86_sse2 )"
-
-# stripping rust may break it (at least on x86_64)
-# https://github.com/rust-lang/rust/issues/112286
-RESTRICT="strip"
-
-QA_PREBUILT="
- opt/${P}/bin/.*
- opt/${P}/lib/.*.so*
- opt/${P}/libexec/.*
- opt/${P}/lib/rustlib/.*/bin/.*
- opt/${P}/lib/rustlib/.*/lib/.*
-"
-
-# An rmeta file is custom binary format that contains the metadata for the
crate.
-# rmeta files do not support linking, since they do not contain compiled
object files.
-# so we can safely silence the warning for this QA check.
-QA_EXECSTACK="opt/${P}/lib/rustlib/*/lib*.rlib:lib.rmeta"
-
-VERIFY_SIG_OPENPGP_KEY_PATH="/usr/share/openpgp-keys/rust.asc"
-
-pkg_pretend() {
- if [[ "$(tc-is-softfloat)" != "no" ]] && [[ ${CHOST} == armv7* ]]; then
- die "${CHOST} is not supported by upstream Rust. You must use a
hard float version."
- fi
-}
-
-src_unpack() {
- # sadly rust-src tarball does not have corresponding .asc file
- # so do partial verification
- if use verify-sig; then
- for f in ${A}; do
- if [[ -f ${DISTDIR}/${f}.asc ]]; then
- verify-sig_verify_detached "${DISTDIR}/${f}"
"${DISTDIR}/${f}.asc"
- fi
- done
- fi
-
- default_src_unpack
-
- mv "${WORKDIR}/${MY_P}-$(rust_abi)" "${S}" || die
-}
-
-patchelf_for_bin() {
- local filetype=$(file -b ${1})
- if [[ ${filetype} == *ELF*interpreter* ]]; then
- einfo "${1}'s interpreter changed"
- patchelf ${1} --set-interpreter ${2} || die
- elif [[ ${filetype} == *script* ]]; then
- hprefixify ${1}
- fi
-}
-
-multilib_src_install() {
- if multilib_is_native_abi; then
-
- # start native abi install
- pushd "${S}" >/dev/null || die
- local analysis std
- analysis="$(grep 'analysis' ./components)"
- std="$(grep 'std' ./components)"
- local components="rustc,cargo,${std}"
- use doc && components="${components},rust-docs"
- use clippy && components="${components},clippy-preview"
- use rustfmt && components="${components},rustfmt-preview"
- use rust-analyzer &&
components="${components},rust-analyzer-preview,${analysis}"
- # Rust component 'rust-src' is extracted from separate archive
- if use rust-src; then
- einfo "Combining rust and rust-src installers"
- mv -v "${WORKDIR}/rust-src-${PV}/rust-src" "${S}" || die
- echo rust-src >> ./components || die
- components="${components},rust-src"
- fi
- ./install.sh \
- --components="${components}" \
- --disable-verify \
- --prefix="${ED}/opt/${P}" \
- --mandir="${ED}/opt/${P}/man" \
- --disable-ldconfig \
- || die
-
- docompress /opt/${P}/man/
-
- if use prefix; then
- local interpreter=$(patchelf --print-interpreter
"${EPREFIX}"/bin/bash)
- ebegin "Changing interpreter to ${interpreter} for Gentoo
prefix at ${ED}/opt/${P}/bin"
- find "${ED}/opt/${P}/bin" -type f -print0 | \
- while IFS= read -r -d '' filename; do
- patchelf_for_bin ${filename} ${interpreter} \;
|| die
- done
- eend $?
- fi
-
- local symlinks=(
- cargo
- rustc
- rustdoc
- rust-gdb
- rust-gdbgui
- rust-lldb
- )
-
- use clippy && symlinks+=( clippy-driver cargo-clippy )
- use rustfmt && symlinks+=( rustfmt cargo-fmt )
- use rust-analyzer && symlinks+=( rust-analyzer )
-
- einfo "installing eselect-rust symlinks and paths"
- local i
- for i in "${symlinks[@]}"; do
- # we need realpath on /usr/bin/* symlink return
version-appended binary path.
- # so /usr/bin/rustc should point to
/opt/rust-bin-<ver>/bin/rustc-<ver>
- local ver_i="${i}-bin-${PV}"
- ln -v "${ED}/opt/${P}/bin/${i}" "${ED}/opt/${P}/bin/${ver_i}"
|| die
- dosym "../../opt/${P}/bin/${ver_i}" "/usr/bin/${ver_i}"
- done
-
- # symlinks to switch components to active rust in eselect
- dosym "../../../opt/${P}/lib" "/usr/lib/rust/lib-bin-${PV}"
- dosym "../../../opt/${P}/man" "/usr/lib/rust/man-bin-${PV}"
- dosym "../../opt/${P}/lib/rustlib" "/usr/lib/rustlib-bin-${PV}"
- dosym "../../../opt/${P}/share/doc/rust" "/usr/share/doc/${P}"
-
- # make all capital underscored variable
- local CARGO_TRIPLET="$(rust_abi)"
- CARGO_TRIPLET="${CARGO_TRIPLET//-/_}"
- CARGO_TRIPLET="${CARGO_TRIPLET^^}"
- cat <<-_EOF_ > "${T}/50${P}"
- LDPATH="${EPREFIX}/usr/lib/rust/lib-bin-${PV}"
- MANPATH="${EPREFIX}/usr/lib/rust/man-bin-${PV}"
- $(usev elibc_musl "CARGO_TARGET_${CARGO_TRIPLET}_RUSTFLAGS=\"-C
target-feature=-crt-static\"")
- _EOF_
- doenvd "${T}/50${P}"
-
- # note: eselect-rust adds EROOT to all paths below
- cat <<-_EOF_ > "${T}/provider-${P}"
- /usr/bin/cargo
- /usr/bin/rustdoc
- /usr/bin/rust-gdb
- /usr/bin/rust-gdbgui
- /usr/bin/rust-lldb
- /usr/lib/rustlib
- /usr/lib/rust/lib
- /usr/lib/rust/man
- /usr/share/doc/rust
- _EOF_
-
- if use clippy; then
- echo /usr/bin/clippy-driver >> "${T}/provider-${P}"
- echo /usr/bin/cargo-clippy >> "${T}/provider-${P}"
- fi
- if use rustfmt; then
- echo /usr/bin/rustfmt >> "${T}/provider-${P}"
- echo /usr/bin/cargo-fmt >> "${T}/provider-${P}"
- fi
- if use rust-analyzer; then
- echo /usr/bin/rust-analyzer >> "${T}/provider-${P}"
- fi
-
- insinto /etc/env.d/rust
- doins "${T}/provider-${P}"
- popd >/dev/null || die
- #end native abi install
-
- else
- local rust_target
- rust_target="$(rust_abi $(get_abi_CHOST ${v##*.}))"
- dodir "/opt/${P}/lib/rustlib"
- cp -vr
"${WORKDIR}/rust-${PV}-${rust_target}/rust-std-${rust_target}/lib/rustlib/${rust_target}"\
- "${ED}/opt/${P}/lib/rustlib" || die
- fi
-
- # BUG: installs x86_64 binary on other arches
- rm -f "${ED}/opt/${P}/lib/rustlib/"*/bin/rust-llvm-dwp || die
-}
-
-pkg_postinst() {
- eselect rust update
-
- if has_version dev-debug/gdb || has_version llvm-core/lldb; then
- elog "Rust installs helper scripts for calling GDB and LLDB,"
- elog "for convenience they are installed under
/usr/bin/rust-{gdb,lldb}-${PV}."
- fi
-
- if has_version app-editors/emacs; then
- optfeature "emacs support for rust" app-emacs/rust-mode
- fi
-
- if has_version app-editors/gvim || has_version app-editors/vim; then
- optfeature "vim support for rust" app-vim/rust-vim
- fi
-}
-
-pkg_postrm() {
- eselect rust cleanup
-}
diff --git a/dev-lang/rust-bin/rust-bin-1.84.0.ebuild
b/dev-lang/rust-bin/rust-bin-1.84.0.ebuild
deleted file mode 100644
index 48da1d3e8bd5..000000000000
--- a/dev-lang/rust-bin/rust-bin-1.84.0.ebuild
+++ /dev/null
@@ -1,253 +0,0 @@
-# Copyright 1999-2025 Gentoo Authors
-# Distributed under the terms of the GNU General Public License v2
-
-EAPI=8
-
-LLVM_COMPAT=( 19 )
-LLVM_OPTIONAL="yes"
-
-inherit llvm-r1 multilib prefix rust-toolchain toolchain-funcs verify-sig
multilib-minimal optfeature
-
-MY_P="rust-${PV}"
-# curl -L static.rust-lang.org/dist/channel-rust-${PV}.toml 2>/dev/null | grep
"xz_url.*rust-src"
-MY_SRC_URI="${RUST_TOOLCHAIN_BASEURL%/}/2025-01-09/rust-src-${PV}.tar.xz"
-GENTOO_BIN_BASEURI="https://dev.gentoo.org/~arthurzam/distfiles/${CATEGORY}/${PN}"
# omit leading slash
-
-DESCRIPTION="Systems programming language from Mozilla"
-HOMEPAGE="https://www.rust-lang.org/"
-SRC_URI="$(rust_all_arch_uris ${MY_P})
- rust-src? ( ${MY_SRC_URI} )
-"
-# Keep this separate to allow easy commenting out if not yet built
-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}/${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}/${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}/${MY_P}-riscv64gc-unknown-linux-musl.tar.xz )
-)"
-SRC_URI+=" ppc64? ( elibc_musl? (
- big-endian? (
${GENTOO_BIN_BASEURI}/${MY_P}-powerpc64-unknown-linux-musl.tar.xz )
- !big-endian? (
${GENTOO_BIN_BASEURI}/${MY_P}-powerpc64le-unknown-linux-musl.tar.xz )
-) )"
-
-LICENSE="|| ( MIT Apache-2.0 ) BSD BSD-1 BSD-2 BSD-4"
-SLOT="${PV}"
-KEYWORDS="~amd64 ~arm ~arm64 ~loong ~mips ~ppc ~ppc64 ~riscv ~s390 ~sparc ~x86"
-IUSE="big-endian clippy cpu_flags_x86_sse2 doc prefix rust-analyzer rust-src
rustfmt"
-
-RDEPEND="
- >=app-eselect/eselect-rust-20190311
- dev-libs/openssl
- sys-apps/lsb-release
- sys-devel/gcc:*
- !dev-lang/rust:stable
- !dev-lang/rust-bin:stable
-"
-BDEPEND="
- prefix? ( dev-util/patchelf )
- verify-sig? ( sec-keys/openpgp-keys-rust )
-"
-
-REQUIRED_USE="x86? ( cpu_flags_x86_sse2 )"
-
-# stripping rust may break it (at least on x86_64)
-# https://github.com/rust-lang/rust/issues/112286
-RESTRICT="strip"
-
-QA_PREBUILT="
- opt/${P}/bin/.*
- opt/${P}/lib/.*.so*
- opt/${P}/libexec/.*
- opt/${P}/lib/rustlib/.*/bin/.*
- opt/${P}/lib/rustlib/.*/lib/.*
-"
-
-# An rmeta file is custom binary format that contains the metadata for the
crate.
-# rmeta files do not support linking, since they do not contain compiled
object files.
-# so we can safely silence the warning for this QA check.
-QA_EXECSTACK="opt/${P}/lib/rustlib/*/lib*.rlib:lib.rmeta"
-
-VERIFY_SIG_OPENPGP_KEY_PATH="/usr/share/openpgp-keys/rust.asc"
-
-pkg_pretend() {
- if [[ "$(tc-is-softfloat)" != "no" ]] && [[ ${CHOST} == armv7* ]]; then
- die "${CHOST} is not supported by upstream Rust. You must use a
hard float version."
- fi
-}
-
-src_unpack() {
- # sadly rust-src tarball does not have corresponding .asc file
- # so do partial verification
- if use verify-sig; then
- for f in ${A}; do
- if [[ -f ${DISTDIR}/${f}.asc ]]; then
- verify-sig_verify_detached "${DISTDIR}/${f}"
"${DISTDIR}/${f}.asc"
- fi
- done
- fi
-
- default_src_unpack
-
- mv "${WORKDIR}/${MY_P}-$(rust_abi)" "${S}" || die
-}
-
-patchelf_for_bin() {
- local filetype=$(file -b ${1})
- if [[ ${filetype} == *ELF*interpreter* ]]; then
- einfo "${1}'s interpreter changed"
- patchelf ${1} --set-interpreter ${2} || die
- elif [[ ${filetype} == *script* ]]; then
- hprefixify ${1}
- fi
-}
-
-multilib_src_install() {
- if multilib_is_native_abi; then
-
- # start native abi install
- pushd "${S}" >/dev/null || die
- local analysis std
- analysis="$(grep 'analysis' ./components)"
- std="$(grep 'std' ./components)"
- local components="rustc,cargo,${std}"
- use doc && components="${components},rust-docs"
- use clippy && components="${components},clippy-preview"
- use rustfmt && components="${components},rustfmt-preview"
- use rust-analyzer &&
components="${components},rust-analyzer-preview,${analysis}"
- # Rust component 'rust-src' is extracted from separate archive
- if use rust-src; then
- einfo "Combining rust and rust-src installers"
- mv -v "${WORKDIR}/rust-src-${PV}/rust-src" "${S}" || die
- echo rust-src >> ./components || die
- components="${components},rust-src"
- fi
- ./install.sh \
- --components="${components}" \
- --disable-verify \
- --prefix="${ED}/opt/${P}" \
- --mandir="${ED}/opt/${P}/man" \
- --disable-ldconfig \
- || die
-
- docompress /opt/${P}/man/
-
- if use prefix; then
- local interpreter=$(patchelf --print-interpreter
"${EPREFIX}"/bin/bash)
- ebegin "Changing interpreter to ${interpreter} for Gentoo
prefix at ${ED}/opt/${P}/bin"
- find "${ED}/opt/${P}/bin" -type f -print0 | \
- while IFS= read -r -d '' filename; do
- patchelf_for_bin ${filename} ${interpreter} \;
|| die
- done
- eend $?
- fi
-
- local symlinks=(
- cargo
- rustc
- rustdoc
- rust-gdb
- rust-gdbgui
- rust-lldb
- )
-
- use clippy && symlinks+=( clippy-driver cargo-clippy )
- use rustfmt && symlinks+=( rustfmt cargo-fmt )
- use rust-analyzer && symlinks+=( rust-analyzer )
-
- einfo "installing eselect-rust symlinks and paths"
- local i
- for i in "${symlinks[@]}"; do
- # we need realpath on /usr/bin/* symlink return
version-appended binary path.
- # so /usr/bin/rustc should point to
/opt/rust-bin-<ver>/bin/rustc-<ver>
- local ver_i="${i}-bin-${PV}"
- ln -v "${ED}/opt/${P}/bin/${i}" "${ED}/opt/${P}/bin/${ver_i}"
|| die
- dosym "../../opt/${P}/bin/${ver_i}" "/usr/bin/${ver_i}"
- done
-
- # symlinks to switch components to active rust in eselect
- dosym "../../../opt/${P}/lib" "/usr/lib/rust/lib-bin-${PV}"
- dosym "../../../opt/${P}/man" "/usr/lib/rust/man-bin-${PV}"
- dosym "../../opt/${P}/lib/rustlib" "/usr/lib/rustlib-bin-${PV}"
- dosym "../../../opt/${P}/share/doc/rust" "/usr/share/doc/${P}"
-
- # make all capital underscored variable
- local CARGO_TRIPLET="$(rust_abi)"
- CARGO_TRIPLET="${CARGO_TRIPLET//-/_}"
- CARGO_TRIPLET="${CARGO_TRIPLET^^}"
- cat <<-_EOF_ > "${T}/50${P}"
- LDPATH="${EPREFIX}/usr/lib/rust/lib-bin-${PV}"
- MANPATH="${EPREFIX}/usr/lib/rust/man-bin-${PV}"
- $(usev elibc_musl "CARGO_TARGET_${CARGO_TRIPLET}_RUSTFLAGS=\"-C
target-feature=-crt-static\"")
- _EOF_
- doenvd "${T}/50${P}"
-
- # note: eselect-rust adds EROOT to all paths below
- cat <<-_EOF_ > "${T}/provider-${P}"
- /usr/bin/cargo
- /usr/bin/rustdoc
- /usr/bin/rust-gdb
- /usr/bin/rust-gdbgui
- /usr/bin/rust-lldb
- /usr/lib/rustlib
- /usr/lib/rust/lib
- /usr/lib/rust/man
- /usr/share/doc/rust
- _EOF_
-
- if use clippy; then
- echo /usr/bin/clippy-driver >> "${T}/provider-${P}"
- echo /usr/bin/cargo-clippy >> "${T}/provider-${P}"
- fi
- if use rustfmt; then
- echo /usr/bin/rustfmt >> "${T}/provider-${P}"
- echo /usr/bin/cargo-fmt >> "${T}/provider-${P}"
- fi
- if use rust-analyzer; then
- echo /usr/bin/rust-analyzer >> "${T}/provider-${P}"
- fi
-
- insinto /etc/env.d/rust
- doins "${T}/provider-${P}"
- popd >/dev/null || die
- #end native abi install
-
- else
- local rust_target
- rust_target="$(rust_abi $(get_abi_CHOST ${v##*.}))"
- dodir "/opt/${P}/lib/rustlib"
- cp -vr
"${WORKDIR}/rust-${PV}-${rust_target}/rust-std-${rust_target}/lib/rustlib/${rust_target}"\
- "${ED}/opt/${P}/lib/rustlib" || die
- fi
-
- # BUG: installs x86_64 binary on other arches
- rm -f "${ED}/opt/${P}/lib/rustlib/"*/bin/rust-llvm-dwp || die
-}
-
-pkg_postinst() {
- eselect rust update
-
- if has_version dev-debug/gdb || has_version llvm-core/lldb; then
- elog "Rust installs helper scripts for calling GDB and LLDB,"
- elog "for convenience they are installed under
/usr/bin/rust-{gdb,lldb}-${PV}."
- fi
-
- if has_version app-editors/emacs; then
- optfeature "emacs support for rust" app-emacs/rust-mode
- fi
-
- if has_version app-editors/gvim || has_version app-editors/vim; then
- optfeature "vim support for rust" app-vim/rust-vim
- fi
-}
-
-pkg_postrm() {
- eselect rust cleanup
-}
diff --git a/dev-lang/rust-bin/rust-bin-1.84.1.ebuild
b/dev-lang/rust-bin/rust-bin-1.84.1.ebuild
deleted file mode 100644
index 338e50f2b5d5..000000000000
--- a/dev-lang/rust-bin/rust-bin-1.84.1.ebuild
+++ /dev/null
@@ -1,253 +0,0 @@
-# Copyright 1999-2025 Gentoo Authors
-# Distributed under the terms of the GNU General Public License v2
-
-EAPI=8
-
-LLVM_COMPAT=( 19 )
-LLVM_OPTIONAL="yes"
-
-inherit llvm-r1 multilib prefix rust-toolchain toolchain-funcs verify-sig
multilib-minimal optfeature
-
-MY_P="rust-${PV}"
-# curl -L static.rust-lang.org/dist/channel-rust-${PV}.toml 2>/dev/null | grep
"xz_url.*rust-src"
-MY_SRC_URI="${RUST_TOOLCHAIN_BASEURL%/}/2025-01-30/rust-src-${PV}.tar.xz"
-GENTOO_BIN_BASEURI="https://dev.gentoo.org/~arthurzam/distfiles/${CATEGORY}/${PN}"
# omit leading slash
-
-DESCRIPTION="Systems programming language from Mozilla"
-HOMEPAGE="https://www.rust-lang.org/"
-SRC_URI="$(rust_all_arch_uris ${MY_P})
- rust-src? ( ${MY_SRC_URI} )
-"
-# Keep this separate to allow easy commenting out if not yet built
-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}/${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}/${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}/${MY_P}-riscv64gc-unknown-linux-musl.tar.xz )
-)"
-SRC_URI+=" ppc64? ( elibc_musl? (
- big-endian? (
${GENTOO_BIN_BASEURI}/${MY_P}-powerpc64-unknown-linux-musl.tar.xz )
- !big-endian? (
${GENTOO_BIN_BASEURI}/${MY_P}-powerpc64le-unknown-linux-musl.tar.xz )
-) )"
-
-LICENSE="|| ( MIT Apache-2.0 ) BSD BSD-1 BSD-2 BSD-4"
-SLOT="${PV}"
-KEYWORDS="~amd64 ~arm ~arm64 ~loong ~mips ~ppc ~ppc64 ~riscv ~s390 ~sparc ~x86"
-IUSE="big-endian clippy cpu_flags_x86_sse2 doc prefix rust-analyzer rust-src
rustfmt"
-
-RDEPEND="
- >=app-eselect/eselect-rust-20190311
- dev-libs/openssl
- sys-apps/lsb-release
- sys-devel/gcc:*
- !dev-lang/rust:stable
- !dev-lang/rust-bin:stable
-"
-BDEPEND="
- prefix? ( dev-util/patchelf )
- verify-sig? ( sec-keys/openpgp-keys-rust )
-"
-
-REQUIRED_USE="x86? ( cpu_flags_x86_sse2 )"
-
-# stripping rust may break it (at least on x86_64)
-# https://github.com/rust-lang/rust/issues/112286
-RESTRICT="strip"
-
-QA_PREBUILT="
- opt/${P}/bin/.*
- opt/${P}/lib/.*.so*
- opt/${P}/libexec/.*
- opt/${P}/lib/rustlib/.*/bin/.*
- opt/${P}/lib/rustlib/.*/lib/.*
-"
-
-# An rmeta file is custom binary format that contains the metadata for the
crate.
-# rmeta files do not support linking, since they do not contain compiled
object files.
-# so we can safely silence the warning for this QA check.
-QA_EXECSTACK="opt/${P}/lib/rustlib/*/lib*.rlib:lib.rmeta"
-
-VERIFY_SIG_OPENPGP_KEY_PATH="/usr/share/openpgp-keys/rust.asc"
-
-pkg_pretend() {
- if [[ "$(tc-is-softfloat)" != "no" ]] && [[ ${CHOST} == armv7* ]]; then
- die "${CHOST} is not supported by upstream Rust. You must use a
hard float version."
- fi
-}
-
-src_unpack() {
- # sadly rust-src tarball does not have corresponding .asc file
- # so do partial verification
- if use verify-sig; then
- for f in ${A}; do
- if [[ -f ${DISTDIR}/${f}.asc ]]; then
- verify-sig_verify_detached "${DISTDIR}/${f}"
"${DISTDIR}/${f}.asc"
- fi
- done
- fi
-
- default_src_unpack
-
- mv "${WORKDIR}/${MY_P}-$(rust_abi)" "${S}" || die
-}
-
-patchelf_for_bin() {
- local filetype=$(file -b ${1})
- if [[ ${filetype} == *ELF*interpreter* ]]; then
- einfo "${1}'s interpreter changed"
- patchelf ${1} --set-interpreter ${2} || die
- elif [[ ${filetype} == *script* ]]; then
- hprefixify ${1}
- fi
-}
-
-multilib_src_install() {
- if multilib_is_native_abi; then
-
- # start native abi install
- pushd "${S}" >/dev/null || die
- local analysis std
- analysis="$(grep 'analysis' ./components)"
- std="$(grep 'std' ./components)"
- local components="rustc,cargo,${std}"
- use doc && components="${components},rust-docs"
- use clippy && components="${components},clippy-preview"
- use rustfmt && components="${components},rustfmt-preview"
- use rust-analyzer &&
components="${components},rust-analyzer-preview,${analysis}"
- # Rust component 'rust-src' is extracted from separate archive
- if use rust-src; then
- einfo "Combining rust and rust-src installers"
- mv -v "${WORKDIR}/rust-src-${PV}/rust-src" "${S}" || die
- echo rust-src >> ./components || die
- components="${components},rust-src"
- fi
- ./install.sh \
- --components="${components}" \
- --disable-verify \
- --prefix="${ED}/opt/${P}" \
- --mandir="${ED}/opt/${P}/man" \
- --disable-ldconfig \
- || die
-
- docompress /opt/${P}/man/
-
- if use prefix; then
- local interpreter=$(patchelf --print-interpreter
"${EPREFIX}"/bin/bash)
- ebegin "Changing interpreter to ${interpreter} for Gentoo
prefix at ${ED}/opt/${P}/bin"
- find "${ED}/opt/${P}/bin" -type f -print0 | \
- while IFS= read -r -d '' filename; do
- patchelf_for_bin ${filename} ${interpreter} \;
|| die
- done
- eend $?
- fi
-
- local symlinks=(
- cargo
- rustc
- rustdoc
- rust-gdb
- rust-gdbgui
- rust-lldb
- )
-
- use clippy && symlinks+=( clippy-driver cargo-clippy )
- use rustfmt && symlinks+=( rustfmt cargo-fmt )
- use rust-analyzer && symlinks+=( rust-analyzer )
-
- einfo "installing eselect-rust symlinks and paths"
- local i
- for i in "${symlinks[@]}"; do
- # we need realpath on /usr/bin/* symlink return
version-appended binary path.
- # so /usr/bin/rustc should point to
/opt/rust-bin-<ver>/bin/rustc-<ver>
- local ver_i="${i}-bin-${PV}"
- ln -v "${ED}/opt/${P}/bin/${i}" "${ED}/opt/${P}/bin/${ver_i}"
|| die
- dosym "../../opt/${P}/bin/${ver_i}" "/usr/bin/${ver_i}"
- done
-
- # symlinks to switch components to active rust in eselect
- dosym "../../../opt/${P}/lib" "/usr/lib/rust/lib-bin-${PV}"
- dosym "../../../opt/${P}/man" "/usr/lib/rust/man-bin-${PV}"
- dosym "../../opt/${P}/lib/rustlib" "/usr/lib/rustlib-bin-${PV}"
- dosym "../../../opt/${P}/share/doc/rust" "/usr/share/doc/${P}"
-
- # make all capital underscored variable
- local CARGO_TRIPLET="$(rust_abi)"
- CARGO_TRIPLET="${CARGO_TRIPLET//-/_}"
- CARGO_TRIPLET="${CARGO_TRIPLET^^}"
- cat <<-_EOF_ > "${T}/50${P}"
- LDPATH="${EPREFIX}/usr/lib/rust/lib-bin-${PV}"
- MANPATH="${EPREFIX}/usr/lib/rust/man-bin-${PV}"
- $(usev elibc_musl "CARGO_TARGET_${CARGO_TRIPLET}_RUSTFLAGS=\"-C
target-feature=-crt-static\"")
- _EOF_
- doenvd "${T}/50${P}"
-
- # note: eselect-rust adds EROOT to all paths below
- cat <<-_EOF_ > "${T}/provider-${P}"
- /usr/bin/cargo
- /usr/bin/rustdoc
- /usr/bin/rust-gdb
- /usr/bin/rust-gdbgui
- /usr/bin/rust-lldb
- /usr/lib/rustlib
- /usr/lib/rust/lib
- /usr/lib/rust/man
- /usr/share/doc/rust
- _EOF_
-
- if use clippy; then
- echo /usr/bin/clippy-driver >> "${T}/provider-${P}"
- echo /usr/bin/cargo-clippy >> "${T}/provider-${P}"
- fi
- if use rustfmt; then
- echo /usr/bin/rustfmt >> "${T}/provider-${P}"
- echo /usr/bin/cargo-fmt >> "${T}/provider-${P}"
- fi
- if use rust-analyzer; then
- echo /usr/bin/rust-analyzer >> "${T}/provider-${P}"
- fi
-
- insinto /etc/env.d/rust
- doins "${T}/provider-${P}"
- popd >/dev/null || die
- #end native abi install
-
- else
- local rust_target
- rust_target="$(rust_abi $(get_abi_CHOST ${v##*.}))"
- dodir "/opt/${P}/lib/rustlib"
- cp -vr
"${WORKDIR}/rust-${PV}-${rust_target}/rust-std-${rust_target}/lib/rustlib/${rust_target}"\
- "${ED}/opt/${P}/lib/rustlib" || die
- fi
-
- # BUG: installs x86_64 binary on other arches
- rm -f "${ED}/opt/${P}/lib/rustlib/"*/bin/rust-llvm-dwp || die
-}
-
-pkg_postinst() {
- eselect rust update
-
- if has_version dev-debug/gdb || has_version llvm-core/lldb; then
- elog "Rust installs helper scripts for calling GDB and LLDB,"
- elog "for convenience they are installed under
/usr/bin/rust-{gdb,lldb}-${PV}."
- fi
-
- if has_version app-editors/emacs; then
- optfeature "emacs support for rust" app-emacs/rust-mode
- fi
-
- if has_version app-editors/gvim || has_version app-editors/vim; then
- optfeature "vim support for rust" app-vim/rust-vim
- fi
-}
-
-pkg_postrm() {
- eselect rust cleanup
-}