summaryrefslogtreecommitdiff
path: root/dev-lang
diff options
context:
space:
mode:
Diffstat (limited to 'dev-lang')
-rw-r--r--dev-lang/rust/Manifest8
-rw-r--r--dev-lang/rust/rust-1.90.0-r991.ebuild (renamed from dev-lang/rust/rust-1.88.0-r991.ebuild)34
2 files changed, 27 insertions, 15 deletions
diff --git a/dev-lang/rust/Manifest b/dev-lang/rust/Manifest
index e2bd9b4..d852454 100644
--- a/dev-lang/rust/Manifest
+++ b/dev-lang/rust/Manifest
@@ -1,8 +1,8 @@
-DIST rust-patches-1.88.0.tar.bz2 4062 BLAKE2B 64168ffa608f2edf2e0b3d079152c3b5dd59d0cea29078894f286bf91488e2e7769c55ede2d43769368d2147b46699d1bf981190d6800dc3d41c736289122eaf SHA512 b565acfb4d1146e52b1fb66b4a242927407cc34f1b38c2a100135cbbde24c8374af1997bc22069cca25f33cc8d747e56391f3d98a2d4e13dc0abcec0d6f88b0b
DIST rust-patches-1.89.0.tar.bz2 4091 BLAKE2B 0fea3488a39d2b00627084f6b192dfbd7ed49bdceabbb1141d1a849ba053f786e31115e00365679b1b6fb5b0ccdf5dc0dc0803057cbffbcf0ae3d75ae9830d94 SHA512 de6c9b693bdd719d06605b5da730ee5d9cf9a1d88d58194a0ba48bd378a951c66723f561e39181222d28abb38e974a2921e14ea1f40156caf7b903778cf65790
-DIST rustc-1.88.0-src.tar.xz 283294344 BLAKE2B fc17efbc8b2e54f2da61384097dcb3b8f595f27f7853f56cef034913f6b46a718113af0fe66f0e3b0afd184ec506b35f3b74172926cf727ddc061f567d54fa4c SHA512 e6c62af2953f49462b2369e9551b12f2bec114577f90e3e76049636da4279b1e7f4d53bc6896f5d0d4715d90ef6d29dacff529a45690ffac6af62ad64600db40
-DIST rustc-1.88.0-src.tar.xz.asc 801 BLAKE2B 858e987ad1fc49c1e1cbc5ea709f835c60fce907e89205e431c843bfad97dc0ccbcf399fc7d87319b8455561cbc24020bd88cb572cbe932cb8b80a8adec39687 SHA512 64ab398dc602fed3ad7bf232249e80cc0a9831aa90c7eb37658f7dc5b2af04ee391f9633aae7a1d90f743d019cec531318384f71384ecbe4f6169e6e88b7ba0e
+DIST rust-patches-1.90.0.tar.bz2 4183 BLAKE2B e6cc7516bd386c020be208e9931221edb301a94b6b5cf8140d68ddd5e13b1ddaaa53b52b4b7b039faf2a7caf44107f170afb01e15ac7487c6fe5146feff3789b SHA512 0cbf6dd9fc8b68e265dd146423c82c72bccf1ef7f81c5bab87c5d53dda1ecce80ffad361f2c276ab713616847126c277af7b1e48327d433f6202361e25cf5201
DIST rustc-1.89.0-src.tar.xz 267487572 BLAKE2B 9f6e3c595f843c239b57f14e26685e9856cffa10189b75627fee4dc82970a9b5f2c6f42e145d1c1042d934bd4db0334014c046450f7594d621b378d951546d5d SHA512 3ac0f02baaff12c67fe35cef4d56b315134d0a043bb6103a248a2842456c74733c6e3039f079bacfb8b8ab9b7487f92d678987e588bd41276abf9bf7c2f7870b
DIST rustc-1.89.0-src.tar.xz.asc 801 BLAKE2B cd94da916d3646048d8f90c6de658de2981d0c815a1f8da01fe58ab6ec133e47180c8b506a41e22c68b3cb77aff5bd3bfc966a71ae2b73849918096d68764386 SHA512 006b91bf41fbedf91c39b8a6e483b089f69af7e78026f2903928fed64e44ee6aa53e46fd19bae31b1576b53a80dab66bf3e53a3bf79f820066d36285d706b90c
-EBUILD rust-1.88.0-r991.ebuild 26315 BLAKE2B 553310be960b3478202c9f65c0fbae6ec15b38ad0687b7eae23172901fefce859b84573126766b008a841875db22bbd043f324966fc7080ca742adcb567677b1 SHA512 2de9182edfa8152113bc8c14e53f53e58ab36b35594c1f16fe6a6267bd4d52d35408f4db19aef06edcf6eebc73a88c1c5621dc125006a0f4e6b6dadab2f00a40
+DIST rustc-1.90.0-src.tar.xz 272348992 BLAKE2B 82dbbe3b5fe79f623c74fb81a4c4372b14e7d765f0e9af3d76a6c4bde9899007c85c8af70dfd9facc06c37a9c8d03a4597ec87b2d053585ccbc2287332b27e70 SHA512 fb0798b4c7450754db2fcbb641202909d209c6db2d9181d7df7282217b8320dc52f5e9853de9d7bdb79177f1f920389450cab07674dea5fb5501eaab5816662a
+DIST rustc-1.90.0-src.tar.xz.asc 801 BLAKE2B 1e84c6134c4fedbbd52610c259c1bdacb45bc97e8cce7a6b5a8c92827a072c88fcf8984893a5e6aa28c2d5d82bd849bb9d38390c783cfaa503a18c99bcaabcde SHA512 fc8f6dfbb4b50777ae8e499883f95b64861db0ca37119b34b3670b4adf51dd248b0b33daafee90e0f22f66b1d8bd8ae6a6107106e95e73f5c2c5a8dc29532e2e
EBUILD rust-1.89.0-r990.ebuild 26451 BLAKE2B 8bd999d54bbaaec33e01dbc232a8d1e1596a40ff80bf7850ff28cb1c3502328614b881f0e6cda616f4390db5a1cd54187dd31ea1c81a19f4377c146a27b64bd5 SHA512 45059e9dc65262973d4d0b071656cd9fc3e0ef48941a4501fb84d7b57b3bea7bb4dffcf3e1d8320676e256c3c2aefd8e1d764ae1d955df51cda622ebc3fb74d1
+EBUILD rust-1.90.0-r991.ebuild 26977 BLAKE2B fd7f8291dd1c2577fa90204c148ee4106f2146fe5eea4af67ed6472aff62b73d57c3c13824b7d8fbddf3af2ad52e698dd9de0abb0be164b20235a171c1d0d537 SHA512 2a843a4b9253577a7e7ab59cbbf3440958b7eee38df5a6b5e231f89a3653467f847aa6554463577fb44a046c09170ae3a7b25e59fd98c6d00040a22c7204e01b
diff --git a/dev-lang/rust/rust-1.88.0-r991.ebuild b/dev-lang/rust/rust-1.90.0-r991.ebuild
index ab26045..dba01af 100644
--- a/dev-lang/rust/rust-1.88.0-r991.ebuild
+++ b/dev-lang/rust/rust-1.90.0-r991.ebuild
@@ -6,7 +6,7 @@ EAPI=8
LLVM_COMPAT=( 20 )
PYTHON_COMPAT=( python3_{11..14} )
-RUST_PATCH_VER="1.88.0"
+RUST_PATCH_VER=${PV}
RUST_MAX_VER=${PV%%_*}
if [[ ${PV} == *9999* ]]; then
@@ -62,10 +62,15 @@ for _x in "${_ALL_RUST_EXPERIMENTAL_TARGETS[@]}"; do
ALL_RUST_EXPERIMENTAL_TARGETS["llvm_targets_${_x}"]=0
done
+# Bare metal targets which can be built on the host system and have no
+# dependency on compiler runtime, libc and unwinder.
+ALL_RUST_SYSROOTS=( bpf wasm )
+ALL_RUST_SYSROOTS=( "${ALL_RUST_SYSROOTS[@]/#/rust_sysroots_}" )
+
LICENSE="|| ( MIT Apache-2.0 ) BSD BSD-1 BSD-2 BSD-4"
SLOT="${PV%%_*}" # Beta releases get to share the same SLOT as the eventual stable
-IUSE="big-endian clippy cpu_flags_x86_sse2 debug dist doc llvm-libunwind lto rustfmt rust-analyzer rust-src +system-llvm test wasm ${ALL_LLVM_TARGETS[*]}"
+IUSE="big-endian clippy cpu_flags_x86_sse2 debug dist doc llvm-libunwind lto rustfmt rust-analyzer rust-src +system-llvm test ${ALL_LLVM_TARGETS[*]} ${ALL_RUST_SYSROOTS[*]}"
if [[ ${PV} = *9999* ]]; then
# These USE flags require nightly rust
@@ -76,12 +81,12 @@ IUSE+=" nightly"
LLVM_DEPEND=()
# splitting usedeps needed to avoid CI/pkgcheck's UncheckableDep limitation
for _x in "${ALL_LLVM_TARGETS[@]}"; do
- LLVM_DEPEND+=( " ${_x}? ( $(llvm_gen_dep "llvm-core/llvm:\${LLVM_SLOT}[${_x}]") )" )
+ LLVM_DEPEND+=( " ${_x}? ( $(llvm_gen_dep "llvm-core/llvm:\${LLVM_SLOT}[${_x}=]") )" )
if [[ -v ALL_RUST_EXPERIMENTAL_TARGETS["${_x}"] ]] ; then
ALL_RUST_EXPERIMENTAL_TARGETS["${_x}"]=1
fi
done
-LLVM_DEPEND+=( " wasm? ( $(llvm_gen_dep 'llvm-core/lld:${LLVM_SLOT}') )" )
+LLVM_DEPEND+=( " rust_sysroots_wasm? ( $(llvm_gen_dep 'llvm-core/lld:${LLVM_SLOT}') )" )
LLVM_DEPEND+=( " $(llvm_gen_dep 'llvm-core/llvm:${LLVM_SLOT}')" )
# dev-libs/oniguruma is used for documentation
@@ -133,7 +138,8 @@ RDEPEND="${DEPEND}
REQUIRED_USE="|| ( ${ALL_LLVM_TARGETS[*]} )
rust-analyzer? ( rust-src )
test? ( ${ALL_LLVM_TARGETS[*]} )
- wasm? ( llvm_targets_WebAssembly )
+ rust_sysroots_bpf? ( llvm_targets_BPF )
+ rust_sysroots_wasm? ( llvm_targets_WebAssembly )
x86? ( cpu_flags_x86_sse2 )
"
@@ -195,7 +201,8 @@ pre_build_checks() {
M=$(( $(usex ${ltarget} 256 0) + ${M} ))
done
fi
- M=$(( $(usex wasm 256 0) + ${M} ))
+ M=$(( $(usex rust_sysroots_bpf 256 0) + ${M} ))
+ M=$(( $(usex rust_sysroots_wasm 256 0) + ${M} ))
M=$(( $(usex debug 2 1) * ${M} ))
eshopts_push -s extglob
if is-flagq '-g?(gdb)?([1-9])'; then
@@ -321,6 +328,8 @@ src_prepare() {
${CARGO} generate-lockfile --offline || die "Failed to generate lockfiles"
fi
+ # Commit patches to the appropriate branch in proj/rust-patches.git
+ # then cut a new tag / tarball. Don't add patches to ${FILESDIR}
PATCHES=(
"${WORKDIR}/rust-patches-${RUST_PATCH_VER}/"
)
@@ -354,7 +363,10 @@ src_configure() {
for v in $(multilib_get_enabled_abi_pairs); do
rust_targets+=",\"$(rust_abi $(get_abi_CHOST ${v##*.}))\""
done
- if use wasm; then
+ if use rust_sysroots_bpf; then
+ rust_targets+=",\"bpfeb-unknown-none\",\"bpfel-unknown-none\""
+ fi
+ if use rust_sysroots_wasm; then
rust_targets+=",\"wasm32-unknown-unknown\""
if use system-llvm; then
# un-hardcode rust-lld linker for this target
@@ -460,6 +472,7 @@ src_configure() {
cargo = "${rust_stage0_root}/bin/cargo"
rustc = "${rust_stage0_root}/bin/rustc"
rustfmt = "${rust_stage0_root}/bin/rustfmt"
+ description = "gentoo"
docs = $(toml_usex doc)
compiler-docs = false
submodules = false
@@ -497,7 +510,6 @@ src_configure() {
echo "default-linker = \"${CHOST}-cc\""
fi)
channel = "${build_channel}"
- description = "gentoo"
rpath = true
verbose-tests = true
optimize-tests = $(toml_usex !debug)
@@ -505,14 +517,14 @@ src_configure() {
omit-git-hash = false
dist-src = false
remap-debuginfo = true
- lld = $(usex system-llvm false $(toml_usex wasm))
+ lld = $(usex system-llvm false $(toml_usex rust_sysroots_wasm))
$(if use lto && tc-is-clang && ! tc-ld-is-mold; then
echo "use-lld = true"
fi)
# only deny warnings if doc+wasm are NOT requested, documenting stage0 wasm std fails without it
# https://github.com/rust-lang/rust/issues/74976
# https://github.com/rust-lang/rust/issues/76526
- deny-warnings = $(usex wasm $(usex doc false true) true)
+ deny-warnings = $(usex rust_sysroots_wasm $(usex doc false true) true)
backtrace-on-ice = true
jemalloc = false
# See https://github.com/rust-lang/rust/issues/121124
@@ -552,7 +564,7 @@ src_configure() {
_EOF_
fi
done
- if use wasm; then
+ if use rust_sysroots_wasm; then
wasm_target="wasm32-unknown-unknown"
export CFLAGS_${wasm_target//-/_}="$(filter-flags '-mcpu*' '-march*' '-mtune*'; echo "$CFLAGS")"
cat <<- _EOF_ >> "${S}"/bootstrap.toml