sys-devel/rust-std: add 1.98.1

Signed-off-by: Arthur Zamarin <arthurzam@gentoo.org>
This commit is contained in:
Arthur Zamarin
2026-09-03 19:06:57 +03:00
parent 43fbc60b7a
commit 02251efc84
2 changed files with 173 additions and 0 deletions

View File

@@ -36,3 +36,5 @@ DIST rustc-1.96.1-src.tar.xz 241602032 BLAKE2B b8a489293a232faf24a7eaaa439f752bc
DIST rustc-1.96.1-src.tar.xz.asc 801 BLAKE2B b54bed57d90fed66806fe0b16c6d81d880bf0398030d639cdc440d7df5a8699d1d0ec5803baee9f0ffd9503be11be3b202f6f4ec86a2167f5349317a714bd265 SHA512 1765666d2509d93cbbad5f47507ba7510fc07cf650689238a8d39d33be0d85a06c4cd67281d78a1b5e29258002d7dd6da912c9015a8d0e942ee01fc46fa0dca3
DIST rustc-1.97.1-src.tar.xz 242787896 BLAKE2B d54e89d84b25d68761663f1c243480f1bb061c30ee17e731f3d9cd1ff52639cf198647347884d7325f2dbc1582a3d8095908352edcb944a49e5b0581160d5fb6 SHA512 a04178bf0f2c43cbb503a5ea48145eebfee371766a589c0855079ae6a7f3945223850dcc6bce2a94b9f9ead1595d99de09bb00cd6180300e0da58dc247f043eb
DIST rustc-1.97.1-src.tar.xz.asc 801 BLAKE2B d0841e9decf17d18c13c33bf0bdb8a51873799465bafa402090f7f680046d141eea0a633278a7387ee741a8a5dd6ceac40384b4a06132e99b34bb7e22f740d04 SHA512 9d3ca698b1a1a453cac8758622609414f10868e8890491d8cd8c0eed796b689623f91cc28377c1e4c33095f02e92af7d1230458fe4e1fd830b6139799af50f32
DIST rustc-1.98.1-src.tar.xz 244440824 BLAKE2B a055c8341556f29a6e2ca5137ca7943365d61d3b7dc30b182c5c62907659d16ad0caf8c5e884ce2bcf79a01844e19563c9c208fecbebe0c38f8ae6473f60e0eb SHA512 58941e5606651d5a254f36d9771bf6524347068a69ad6fcfb72d0f02b066b16fb415e5d54c8e1266fef777a64ede69c47042f13525a29e39be3e9da84dbccdf4
DIST rustc-1.98.1-src.tar.xz.asc 801 BLAKE2B abee669a3b9545a50cbc8e4c604a8ff167bf4f0ebf77ef5efebe2c38141e22930ab11ec6c54cd2892bca5295510cb4b65a5a28eba5f70b148cd474921e4fd140 SHA512 2c030148eca74e2d1e5f497b6dc0725a3d3d5dc328ad9f854d46067f24b682f99e7cee9de415b3450e8c315015dd73c1945dd2785163d12dfd0119d089b78276

View File

@@ -0,0 +1,171 @@
# Copyright 2020-2026 Gentoo Authors
# Distributed under the terms of the GNU General Public License v2
EAPI=8
PYTHON_COMPAT=( python3_{12..14} )
inherit edo flag-o-matic multiprocessing python-any-r1 rust-toolchain toolchain-funcs verify-sig crossdev
DESCRIPTION="Rust standard library, standalone (for crossdev)"
HOMEPAGE="https://rust-lang.org/"
if [[ ${PV} = *9999* ]]; then
inherit git-r3
EGIT_REPO_URI="https://github.com/rust-lang/rust.git"
EGIT_SUBMODULES=(
"*"
"-src/gcc"
)
elif [[ ${PV} == *beta* ]]; then
# Identify the snapshot date of the beta release:
# curl -Ls static.rust-lang.org/dist/channel-rust-beta.toml | grep beta-src.tar.xz
betaver=${PV//*beta}
BETA_SNAPSHOT="${betaver:0:4}-${betaver:4:2}-${betaver:6:2}"
MY_P="rustc-beta"
SRC_URI="https://static.rust-lang.org/dist/${BETA_SNAPSHOT}/rustc-beta-src.tar.xz -> rustc-${PV}-src.tar.xz
verify-sig? ( https://static.rust-lang.org/dist/${BETA_SNAPSHOT}/rustc-beta-src.tar.xz.asc
-> rustc-${PV}-src.tar.xz.asc )
"
S="${WORKDIR}/${MY_P}-src"
else
MY_P="rustc-${PV}"
SRC_URI="https://static.rust-lang.org/dist/${MY_P}-src.tar.xz
verify-sig? ( https://static.rust-lang.org/dist/${MY_P}-src.tar.xz.asc )
"
S="${WORKDIR}/${MY_P}-src"
fi
LICENSE="|| ( MIT Apache-2.0 ) BSD-1 BSD-2 BSD-4"
SLOT="stable/$(ver_cut 1-2)"
# please do not keyword
#KEYWORDS="" #nowarn
IUSE="debug llvm-libunwind"
BDEPEND="
${PYTHON_DEPS}
~dev-lang/rust-${PV}:=
verify-sig? ( sec-keys/openpgp-keys-rust )
"
DEPEND="||
(
>="${CATEGORY}"/gcc-4.7:*
>="${CATEGORY/sys-devel/llvm-core}"/clang-3.5:*
)
"
RDEPEND="${DEPEND}"
# need full compiler to run tests
RESTRICT="test"
VERIFY_SIG_OPENPGP_KEY_PATH=/usr/share/openpgp-keys/rust.asc
QA_FLAGS_IGNORED="usr/lib/rust/${PV}/rustlib/.*/lib/lib.*.so"
toml_usex() {
usex "$1" true false
}
pkg_pretend() {
is_crosspkg || die "${PN} should only be used for cross"
}
pkg_setup() {
python-any-r1_pkg_setup
}
src_prepare() {
default
}
src_configure() {
# do the great cleanup
strip-flags
filter-flags '-mcpu=*' '-march=*' '-mtune=*' '-m32' '-m64'
strip-unsupported-flags
local rust_root x
rust_root="$(rustc --print sysroot)"
rtarget="$(rust_abi ${CTARGET})"
rtarget="${ERUST_STD_RTARGET:-${rtarget}}" # some targets need to be custom.
rbuild="$(rust_abi ${CBUILD})"
rhost="$(rust_abi ${CHOST})"
echo
for x in CATEGORY rust_root rbuild rhost rtarget RUSTFLAGS CFLAGS CXXFLAGS LDFLAGS; do
einfo "$(printf '%10s' ${x^^}:) ${!x}"
done
cat <<- EOF > "${S}"/bootstrap.toml
[build]
build = "${rbuild}"
host = ["${rhost}"]
target = ["${rtarget}"]
cargo = "${rust_root}/bin/cargo"
rustc = "${rust_root}/bin/rustc"
submodules = false
local-rebuild = true
python = "${EPYTHON}"
locked-deps = true
vendor = true
extended = true
verbose = 2
cargo-native-static = false
[install]
prefix = "${EPREFIX}/usr/lib/${PN}/${PV}"
sysconfdir = "etc"
docdir = "share/doc/rust"
bindir = "bin"
libdir = "lib"
mandir = "share/man"
[rust]
# https://github.com/rust-lang/rust/issues/54872
codegen-units-std = 1
optimize = true
debug = $(toml_usex debug)
debug-assertions = $(toml_usex debug)
debuginfo-level-rustc = 0
backtrace = true
incremental = false
default-linker = "$(tc-getCC)"
rpath = false
dist-src = false
remap-debuginfo = true
jemalloc = false
[dist]
src-tarball = false
[target.${rtarget}]
ar = "$(tc-getAR ${CTARGET})"
cc = "$(tc-getCC ${CTARGET})"
cxx = "$(tc-getCXX ${CTARGET})"
linker = "$(tc-getCC ${CTARGET})"
ranlib = "$(tc-getRANLIB ${CTARGET})"
llvm-libunwind = "$(usex llvm-libunwind in-tree no)"
EOF
if use elibc_musl; then
cat <<- _EOF_ >> "${S}"/bootstrap.toml
crt-static = false
musl-root = "/usr/${CTARGET}/usr"
_EOF_
fi
einfo "${PN^} configured with the following settings:"
cat "${S}"/bootstrap.toml || die
}
src_compile() {
edo env RUST_BACKTRACE=1 \
"${EPYTHON}" ./x.py build -vv --config="${S}"/bootstrap.toml -j$(makeopts_jobs) \
library/std --stage 0
}
src_test() {
ewarn "${PN} can't run tests"
}
src_install() {
local rustlib="lib/rust/${PV}/lib/rustlib"
dodir "/usr/${rustlib}"
pushd "build/${rhost}/stage0-sysroot/lib/rustlib" > /dev/null || die
cp -pPRv "${rtarget}" "${ED}/usr/${rustlib}" || die
popd > /dev/null || die
}