diff --git a/srcpkgs/cargo-bootstrap/template b/srcpkgs/cargo-bootstrap/template index 925bdd0a1c6b51..b49c8f0d82c164 100644 --- a/srcpkgs/cargo-bootstrap/template +++ b/srcpkgs/cargo-bootstrap/template @@ -1,6 +1,6 @@ # Template file for 'cargo-bootstrap' pkgname=cargo-bootstrap -version=1.97.1 +version=1.98.0 revision=1 short_desc="Bootstrap binaries of Rust package manager" maintainer="Orphaned " @@ -24,23 +24,23 @@ esac case "$XBPS_TARGET_MACHINE" in i686) distfiles="${_bootstrap_url}/cargo-${version}-i686-unknown-linux-gnu.tar.xz" - checksum="b76d87a7a550c51c48d4e9396cec29917b2e8fcac7b7ffeb6da01b22e2b723dc" + checksum="b768fe07ae4bd233e5c3f864f935620abb8b72139f7369c869e964a0c30ae419" ;; x86_64) distfiles="${_bootstrap_url}/cargo-${version}-x86_64-unknown-linux-gnu.tar.xz" - checksum="e1be5f5ff7f7f80ca506fb65770b759edbdc6d303781ed71c5de8ec8a8394779" + checksum="2f512d170d3dd23e16ababcda32ee2e6d5172d861a7af1f504e0b1e270cafab9" ;; x86_64-musl) distfiles="${_bootstrap_url}/cargo-${version}-x86_64-unknown-linux-musl.tar.xz" - checksum="623a1315bdbddc5e7a807aaf7e1911d1435a294758e170b8758f49fc57a3e67c" + checksum="8a4da98a9a099e2bf8c210a236cd0cc8d6a259254f4b8fdf6997177ea9e1e4bf" ;; aarch64) distfiles="${_bootstrap_url}/cargo-${version}-aarch64-unknown-linux-gnu.tar.xz" - checksum="8f70bcaccea5ba4db187c3fd4d64e24592b4e16af513497201f5909d61691dbe" + checksum="5784379d73ac881d15a9e67eed2882cd58c747c276221c23cdf9aff37e015ff6" ;; aarch64-musl) distfiles="${_bootstrap_url}/cargo-${version}-aarch64-unknown-linux-musl.tar.xz" - checksum="7a0f929c8cfb1fa6b594915a4dc7c0b9f41fd3dfe2deadef76ba5eb50589dc9e" + checksum="0d4ad14495f631df4d680b1ee970b69ec10f7249d939e85aadc313e04450219f" ;; # placeholders for user-supplied distfiles ppc64le) diff --git a/srcpkgs/cargo/template b/srcpkgs/cargo/template index ff4595359f1ac1..d1bd6ba1b36386 100644 --- a/srcpkgs/cargo/template +++ b/srcpkgs/cargo/template @@ -1,8 +1,8 @@ # Template file for 'cargo' pkgname=cargo -version=1.97.0 +version=1.98.0 revision=1 -_cargo_revision=0.98.0 +_cargo_revision=0.99.0 build_helper=rust hostmakedepends="cargo-bootstrap rust pkg-config" makedepends="rust libcurl-devel openssl-devel" @@ -12,8 +12,9 @@ maintainer="Enno Boland " license="Apache-2.0 OR MIT" homepage="https://crates.io/" distfiles="https://github.com/rust-lang/cargo/archive/refs/tags/${_cargo_revision}.tar.gz" -checksum=7c11186fb61d20a8237b777b35beedd224c1103934f35b85fdd64ea2a9c77f07 +checksum=40e14b9e843aa85582450a9a97001db5f43ecf65622593d767b3943c4628a4b0 replaces="cargo-tree>=0" +nocross="save the builders" build_options="static bindist" desc_option_bindist="Generate a tarball for bootstrap" diff --git a/srcpkgs/rust-bootstrap/template b/srcpkgs/rust-bootstrap/template index b6a37def954103..e642eaf9655f6d 100644 --- a/srcpkgs/rust-bootstrap/template +++ b/srcpkgs/rust-bootstrap/template @@ -1,6 +1,6 @@ # Template file for 'rust-bootstrap' pkgname=rust-bootstrap -version=1.97.1 +version=1.98.0 revision=1 short_desc="Rust programming language bootstrap toolchain" maintainer="Orphaned " @@ -31,40 +31,40 @@ case "$XBPS_TARGET_MACHINE" in ${_bootstrap_url}/rustc-${version}-i686-unknown-linux-gnu.tar.xz ${_bootstrap_url}/rust-std-${version}-i686-unknown-linux-gnu.tar.xz" checksum=" - c096e21362fe1390e7aefc731671bce208a43828a83bcc32a35ffb8302f5802e - 7f4be0697e96dd81f75f66f0e25a51d595223e7c58af6675810f066cab6ef584" + 5244bd76687b64cd7305ef038d8f349774eee494174899474535c23dcbeaa009 + 11c7a5cfa324e4324611793692a863490902bdff8b9ccd197404711cb8dc24d4" ;; x86_64) distfiles=" ${_bootstrap_url}/rustc-${version}-x86_64-unknown-linux-gnu.tar.xz ${_bootstrap_url}/rust-std-${version}-x86_64-unknown-linux-gnu.tar.xz" checksum=" - 9819d0a32d56bd339585319c80260e332779f5541fd66838ab7e016d6c814819 - 1c1e704ae80126b7de34f72ea2825f7fd01736dec20732faed47374b95282fba" + 0e37cb339f447fc44d6d781073bacacebfdc5612f2600e4c7e84c266f5f3aced + f5022e6c95a5ad23cca2513dc8281200f585fa188de6370aa37b128a43f876a3" ;; x86_64-musl) distfiles=" ${_bootstrap_url}/rustc-${version}-x86_64-unknown-linux-musl.tar.xz ${_bootstrap_url}/rust-std-${version}-x86_64-unknown-linux-musl.tar.xz" checksum=" - 1b1f926d3b5bf8036c858180dbc9518c6c317154718ee5c5460bb23d23bacf5d - 51d83178680556f73a5fa8ad865b76a1ff541867445c00fc65dc67246bc2de66" + 4783d0963e5566b03e5e5be6bcb900672c177389d148d138fe1d75bc52554c91 + 1a76f782db2d540e1cd16ea47829b323f4a8f4dda64bca4b23be189109c510f8" ;; aarch64) distfiles=" ${_bootstrap_url}/rustc-${version}-aarch64-unknown-linux-gnu.tar.xz ${_bootstrap_url}/rust-std-${version}-aarch64-unknown-linux-gnu.tar.xz" checksum=" - b344b81f0cd4c2246c7da8b197fe7a339d7dd02bb15cb69b2524115d9c75224c - 46aed8e63186350004d8ec6afca798811e6530b514352e5a8a26f3dc4939b3be" + 00590657f2356d7163ca5ef295283523974c340fa21bb94b420ce794f29b358c + a36f7ac98af20ef0ba6368aace0345efabbebaef7962eba99f47190fd256162d" ;; aarch64-musl) distfiles=" ${_bootstrap_url}/rustc-${version}-aarch64-unknown-linux-musl.tar.xz ${_bootstrap_url}/rust-std-${version}-aarch64-unknown-linux-musl.tar.xz" checksum=" - d6b7d9babbad6ad2bd68e98e41a06efd3df7b405f85f173f689bcace3cd9197f - 49ff0879d94e2e8e86d5e85eb15a9215943e8c78b51363d6553443598cab5d31" + 97ecfb023dd7dd5ce1cfa0d2d3c32b725f48bc1301c1be5b1dde80f6d8c5d00c + 36f82e96e86ec8a02d0a0a66574f4b7be086771cec41bb8e9d40ba5cbd64c93a" ;; # placeholders for user-supplied distfiles ppc64le) diff --git a/srcpkgs/rust/patches/0002-remove-a-bunch-of-unused-junk.patch b/srcpkgs/rust/patches/0002-remove-a-bunch-of-unused-junk.patch index fc2660e5b5081a..79fb04241ae93b 100644 --- a/srcpkgs/rust/patches/0002-remove-a-bunch-of-unused-junk.patch +++ b/srcpkgs/rust/patches/0002-remove-a-bunch-of-unused-junk.patch @@ -4,7 +4,7 @@ Date: Fri, 30 May 2025 12:33:02 +0200 Subject: [PATCH 02/15] remove a bunch of unused junk diff --git a/compiler/rustc_target/src/spec/base/linux_musl.rs b/compiler/rustc_target/src/spec/base/linux_musl.rs -index 6d3124b55..056eeaa81 100644 +index 6d3124b559..056eeaa810 100644 --- a/compiler/rustc_target/src/spec/base/linux_musl.rs +++ b/compiler/rustc_target/src/spec/base/linux_musl.rs @@ -1,11 +1,8 @@ @@ -21,7 +21,7 @@ index 6d3124b55..056eeaa81 100644 } } diff --git a/compiler/rustc_target/src/spec/crt_objects.rs b/compiler/rustc_target/src/spec/crt_objects.rs -index 2d84e78f2..607a777eb 100644 +index 2d84e78f25..607a777eb3 100644 --- a/compiler/rustc_target/src/spec/crt_objects.rs +++ b/compiler/rustc_target/src/spec/crt_objects.rs @@ -48,7 +48,10 @@ use crate::spec::LinkOutputKind; @@ -66,10 +66,10 @@ index 2d84e78f2..607a777eb 100644 new(&[ (LinkOutputKind::DynamicNoPicExe, &["crt2.o"]), diff --git a/src/bootstrap/configure.py b/src/bootstrap/configure.py -index 1915986be..7f5721594 100755 +index fda8f004ef..3e7e828a0c 100755 --- a/src/bootstrap/configure.py +++ b/src/bootstrap/configure.py -@@ -180,106 +180,6 @@ v("llvm-config", None, "set path to llvm-config") +@@ -185,106 +185,6 @@ v("llvm-config", None, "set path to llvm-config") v("llvm-filecheck", None, "set path to LLVM's FileCheck utility") v("python", "build.python", "set path to python") v("android-ndk", "build.android-ndk", "set path to Android NDK") @@ -177,10 +177,10 @@ index 1915986be..7f5721594 100755 "qemu-armhf-rootfs", "target.arm-unknown-linux-gnueabihf.qemu-rootfs", diff --git a/src/bootstrap/src/core/build_steps/compile.rs b/src/bootstrap/src/core/build_steps/compile.rs -index 02940a802..d105f128b 100644 +index ffbe4f4e74..d03c10d990 100644 --- a/src/bootstrap/src/core/build_steps/compile.rs +++ b/src/bootstrap/src/core/build_steps/compile.rs -@@ -375,54 +375,7 @@ fn copy_self_contained_objects( +@@ -382,54 +382,7 @@ fn copy_self_contained_objects( t!(fs::create_dir_all(&libdir_self_contained)); let mut target_deps = vec![]; @@ -236,7 +236,7 @@ index 02940a802..d105f128b 100644 let srcdir = builder.wasi_libdir(target).unwrap_or_else(|| { panic!( "Target {:?} does not have a \"wasi-root\" key in bootstrap.toml \ -@@ -656,15 +609,6 @@ pub fn std_cargo( +@@ -670,15 +623,6 @@ pub fn std_cargo( .arg("--manifest-path") .arg(builder.src.join("library/sysroot/Cargo.toml")); @@ -253,10 +253,10 @@ index 02940a802..d105f128b 100644 && let Some(dir) = builder.wasi_libdir(target) { diff --git a/src/bootstrap/src/core/build_steps/llvm.rs b/src/bootstrap/src/core/build_steps/llvm.rs -index db2a76c4a..d08d8d8d0 100644 +index 087a395a06..0d9eb58a8e 100644 --- a/src/bootstrap/src/core/build_steps/llvm.rs +++ b/src/bootstrap/src/core/build_steps/llvm.rs -@@ -1320,10 +1320,7 @@ impl Step for CrtBeginEnd { +@@ -1600,10 +1600,7 @@ impl Step for CrtBeginEnd { run.path("src/llvm-project/compiler-rt/lib/crt") } @@ -269,10 +269,10 @@ index db2a76c4a..d08d8d8d0 100644 /// Build crtbegin.o/crtend.o for musl target. diff --git a/src/bootstrap/src/core/config/config.rs b/src/bootstrap/src/core/config/config.rs -index 2f493658e..0236d8170 100644 +index 267e21c599..6184818d7d 100644 --- a/src/bootstrap/src/core/config/config.rs +++ b/src/bootstrap/src/core/config/config.rs -@@ -262,8 +262,6 @@ pub struct Config { +@@ -269,8 +269,6 @@ pub struct Config { pub print_step_timings: bool, pub print_step_rusage: bool, @@ -281,7 +281,7 @@ index 2f493658e..0236d8170 100644 pub prefix: Option, pub sysconfdir: Option, pub datadir: Option, -@@ -539,7 +537,6 @@ impl Config { +@@ -557,7 +555,6 @@ impl Config { randomize_layout: rust_randomize_layout, default_linker: rust_default_linker, channel: rust_channel, @@ -289,7 +289,7 @@ index 2f493658e..0236d8170 100644 rpath: rust_rpath, verbose_tests: rust_verbose_tests, optimize_tests: rust_optimize_tests, -@@ -868,8 +865,6 @@ impl Config { +@@ -897,8 +894,6 @@ impl Config { rpath: target_rpath, rustflags: target_rustflags, crt_static: target_crt_static, @@ -298,7 +298,7 @@ index 2f493658e..0236d8170 100644 wasi_root: target_wasi_root, qemu_rootfs: target_qemu_rootfs, no_std: target_no_std, -@@ -942,8 +937,6 @@ impl Config { +@@ -971,8 +966,6 @@ impl Config { target.crt_static = target_crt_static; target.default_linker = target_default_linker; target.default_linker_linux_override = default_linker_linux_override; @@ -307,7 +307,7 @@ index 2f493658e..0236d8170 100644 target.wasi_root = target_wasi_root.map(PathBuf::from); target.qemu_rootfs = target_qemu_rootfs.map(PathBuf::from); target.runner = target_runner; -@@ -1393,7 +1386,6 @@ impl Config { +@@ -1446,7 +1439,6 @@ NOTE: Please add `--stage 2` to your command line, or if you're sure you want to low_priority: build_low_priority.unwrap_or(false), mandir: install_mandir.map(PathBuf::from), miri_info, @@ -316,10 +316,10 @@ index 2f493658e..0236d8170 100644 nodejs: build_nodejs.map(PathBuf::from), omit_git_hash, diff --git a/src/bootstrap/src/core/config/target_selection.rs b/src/bootstrap/src/core/config/target_selection.rs -index 47f6d6f38..a519b6655 100644 +index 62abd30387..ca311f58bc 100644 --- a/src/bootstrap/src/core/config/target_selection.rs +++ b/src/bootstrap/src/core/config/target_selection.rs -@@ -96,10 +96,6 @@ impl TargetSelection { +@@ -104,10 +104,6 @@ impl TargetSelection { env::var("OSTYPE").is_ok_and(|v| v.to_lowercase().contains("cygwin")) } @@ -331,10 +331,10 @@ index 47f6d6f38..a519b6655 100644 pub fn filepath(&self) -> Option<&Path> { self.file.as_ref().map(Path::new) diff --git a/src/bootstrap/src/core/config/toml/rust.rs b/src/bootstrap/src/core/config/toml/rust.rs -index 48042ba56..083970f1b 100644 +index 2facf83952..3aedf0d0db 100644 --- a/src/bootstrap/src/core/config/toml/rust.rs +++ b/src/bootstrap/src/core/config/toml/rust.rs -@@ -31,7 +31,6 @@ define_config! { +@@ -33,7 +33,6 @@ define_config! { incremental: Option = "incremental", default_linker: Option = "default-linker", channel: Option = "channel", @@ -342,7 +342,7 @@ index 48042ba56..083970f1b 100644 rpath: Option = "rpath", rustflags: Option> = "rustflags", strip: Option = "strip", -@@ -346,7 +345,6 @@ pub fn check_incompatible_options_for_ci_rustc( +@@ -349,7 +348,6 @@ pub fn check_incompatible_options_for_ci_rustc( debuginfo_level_tools: _, debuginfo_level_tests: _, backtrace: _, @@ -351,10 +351,10 @@ index 48042ba56..083970f1b 100644 optimize_tests: _, codegen_tests: _, diff --git a/src/bootstrap/src/core/config/toml/target.rs b/src/bootstrap/src/core/config/toml/target.rs -index 847b75e69..5ad42917a 100644 +index 311d9add9a..23e2ebc707 100644 --- a/src/bootstrap/src/core/config/toml/target.rs +++ b/src/bootstrap/src/core/config/toml/target.rs -@@ -39,8 +39,6 @@ define_config! { +@@ -40,8 +40,6 @@ define_config! { rpath: Option = "rpath", rustflags: Option> = "rustflags", crt_static: Option = "crt-static", @@ -363,7 +363,7 @@ index 847b75e69..5ad42917a 100644 wasi_root: Option = "wasi-root", qemu_rootfs: Option = "qemu-rootfs", no_std: Option = "no-std", -@@ -73,8 +71,6 @@ pub struct Target { +@@ -75,8 +73,6 @@ pub struct Target { pub rpath: Option, pub rustflags: Vec, pub crt_static: Option, @@ -373,19 +373,10 @@ index 847b75e69..5ad42917a 100644 pub qemu_rootfs: Option, pub runner: Option, diff --git a/src/bootstrap/src/core/sanity.rs b/src/bootstrap/src/core/sanity.rs -index 50d815401..3818e081b 100644 +index 99d9c8a04c..8fce44814f 100644 --- a/src/bootstrap/src/core/sanity.rs +++ b/src/bootstrap/src/core/sanity.rs -@@ -12,7 +12,7 @@ - use std::collections::{HashMap, HashSet}; - use std::ffi::{OsStr, OsString}; - use std::path::PathBuf; --use std::{env, fs}; -+use std::env; - - #[cfg(not(test))] - use crate::builder::Builder; -@@ -367,22 +367,6 @@ than building it. +@@ -366,22 +366,6 @@ than building it. continue; } @@ -409,10 +400,10 @@ index 50d815401..3818e081b 100644 // There are three builds of cmake on windows: MSVC, MinGW, and // Cygwin. The Cygwin build does not have generators for Visual diff --git a/src/bootstrap/src/lib.rs b/src/bootstrap/src/lib.rs -index a31eb0c1c..a78506c39 100644 +index 2231e0886b..8969e7efcc 100644 --- a/src/bootstrap/src/lib.rs +++ b/src/bootstrap/src/lib.rs -@@ -1394,35 +1394,6 @@ impl Build { +@@ -1407,35 +1407,6 @@ impl Build { } } @@ -449,10 +440,10 @@ index a31eb0c1c..a78506c39 100644 /// configured. /// diff --git a/src/bootstrap/src/utils/cc_detect.rs b/src/bootstrap/src/utils/cc_detect.rs -index 0662ae304..f6373f44e 100644 +index 320dfcc4e6..139480bb3a 100644 --- a/src/bootstrap/src/utils/cc_detect.rs +++ b/src/bootstrap/src/utils/cc_detect.rs -@@ -195,30 +195,6 @@ fn default_compiler( +@@ -201,30 +201,6 @@ fn default_compiler( } } diff --git a/srcpkgs/rust/patches/0003-move-debugger-scripts-to-usr-share-rust.patch b/srcpkgs/rust/patches/0003-move-debugger-scripts-to-usr-share-rust.patch index 3942afac76c0aa..b32bec297ea84f 100644 --- a/srcpkgs/rust/patches/0003-move-debugger-scripts-to-usr-share-rust.patch +++ b/srcpkgs/rust/patches/0003-move-debugger-scripts-to-usr-share-rust.patch @@ -3,18 +3,11 @@ From: q66 Date: Thu, 4 Jan 2024 15:01:57 +0100 Subject: [PATCH 03/15] move debugger scripts to /usr/share/rust ---- - src/bootstrap/src/core/build_steps/dist.rs | 2 +- - src/etc/rust-gdb | 2 +- - src/etc/rust-gdbgui | 2 +- - src/etc/rust-lldb | 4 ++-- - 4 files changed, 5 insertions(+), 5 deletions(-) - diff --git a/src/bootstrap/src/core/build_steps/dist.rs b/src/bootstrap/src/core/build_steps/dist.rs -index 411d42962..66ecbbb88 100644 +index 114387d963..07483dd9b8 100644 --- a/src/bootstrap/src/core/build_steps/dist.rs +++ b/src/bootstrap/src/core/build_steps/dist.rs -@@ -660,7 +660,7 @@ impl Step for DebuggerScripts { +@@ -714,7 +714,7 @@ impl Step for DebuggerScripts { fn run(self, builder: &Builder<'_>) { let target = self.target; let sysroot = self.sysroot; @@ -24,7 +17,7 @@ index 411d42962..66ecbbb88 100644 let cp_debugger_script = |file: &str| { builder.install(&builder.src.join("src/etc/").join(file), &dst, FileType::Regular); diff --git a/src/etc/rust-gdb b/src/etc/rust-gdb -index 9abed30ea..4c7f953ed 100755 +index 9abed30ea6..4c7f953edf 100755 --- a/src/etc/rust-gdb +++ b/src/etc/rust-gdb @@ -12,7 +12,7 @@ fi @@ -37,7 +30,7 @@ index 9abed30ea..4c7f953ed 100755 RUSTC_COMMIT_HASH="$("$RUSTC" -vV | sed -n 's/commit-hash: \([a-zA-Z0-9_]*\)/\1/p')" diff --git a/src/etc/rust-gdbgui b/src/etc/rust-gdbgui -index 471810cbb..ba4e27241 100755 +index 471810cbb1..ba4e272412 100755 --- a/src/etc/rust-gdbgui +++ b/src/etc/rust-gdbgui @@ -41,7 +41,7 @@ fi @@ -50,20 +43,15 @@ index 471810cbb..ba4e27241 100755 RUSTC_COMMIT_HASH="$("$RUSTC" -vV | sed -n 's/commit-hash: \([a-zA-Z0-9_]*\)/\1/p')" diff --git a/src/etc/rust-lldb b/src/etc/rust-lldb -index bce72f1ba..8abb01245 100755 +index 91c6591171..6ecc6b9948 100755 --- a/src/etc/rust-lldb +++ b/src/etc/rust-lldb -@@ -30,8 +30,8 @@ EOF +@@ -30,7 +30,7 @@ EOF fi fi -script_import="command script import \"$RUSTC_SYSROOT/lib/rustlib/etc/lldb_lookup.py\"" --commands_file="$RUSTC_SYSROOT/lib/rustlib/etc/lldb_commands" +script_import="command script import \"$RUSTC_SYSROOT/share/rust/lldb_lookup.py\"" -+commands_file="$RUSTC_SYSROOT/share/rust/lldb_commands" # Call LLDB with the commands added to the argument list - exec "$lldb" --one-line-before-file "$script_import" --source-before-file "$commands_file" "$@" --- -2.51.2 - + exec "$lldb" --one-line-before-file "$script_import" "$@" diff --git a/srcpkgs/rust/patches/0005-fix-rustdoc-when-cross-compiling.patch b/srcpkgs/rust/patches/0005-fix-rustdoc-when-cross-compiling.patch index 47ed4be067480c..4a9cb1bc5412a1 100644 --- a/srcpkgs/rust/patches/0005-fix-rustdoc-when-cross-compiling.patch +++ b/srcpkgs/rust/patches/0005-fix-rustdoc-when-cross-compiling.patch @@ -3,17 +3,13 @@ From: q66 Date: Mon, 9 Sep 2024 17:54:43 +0200 Subject: [PATCH 05/15] fix rustdoc when cross-compiling ---- - src/bootstrap/src/bin/rustdoc.rs | 10 +++------- - 1 file changed, 3 insertions(+), 7 deletions(-) - diff --git a/src/bootstrap/src/bin/rustdoc.rs b/src/bootstrap/src/bin/rustdoc.rs -index efb51bdce..d038a3135 100644 +index ef2462af95..75579842eb 100644 --- a/src/bootstrap/src/bin/rustdoc.rs +++ b/src/bootstrap/src/bin/rustdoc.rs @@ -7,8 +7,7 @@ use std::path::PathBuf; - use std::process::Command; + use arg_file_command::ArgFileCommand; use shared_helpers::{ - dylib_path, dylib_path_var, maybe_dump, parse_rustc_stage, parse_rustc_verbose, - parse_value_from_args, @@ -21,17 +17,17 @@ index efb51bdce..d038a3135 100644 }; #[path = "../utils/shared_helpers.rs"] -@@ -28,9 +27,6 @@ fn main() { +@@ -31,9 +30,6 @@ fn main() { // is passed (a bit janky...) let target = parse_value_from_args(&args, "--target"); - let mut dylib_path = dylib_path(); - dylib_path.insert(0, PathBuf::from(libdir.clone())); - - let mut cmd = Command::new(rustdoc); + let mut cmd = ArgFileCommand::new(rustdoc); if target.is_some() { -@@ -43,7 +39,7 @@ fn main() { +@@ -52,7 +48,7 @@ fn main() { } cmd.args(&args); @@ -40,7 +36,7 @@ index efb51bdce..d038a3135 100644 // Force all crates compiled by this compiler to (a) be unstable and (b) // allow the `rustc_private` feature to link to other unstable crates -@@ -66,7 +62,7 @@ fn main() { +@@ -91,7 +87,7 @@ fn main() { eprintln!( "rustdoc command: {:?}={:?} {:?}", dylib_path_var(), @@ -49,6 +45,3 @@ index efb51bdce..d038a3135 100644 cmd, ); eprintln!("sysroot: {sysroot:?}"); --- -2.51.2 - diff --git a/srcpkgs/rust/patches/0011-allow-specifying-native-sysroot-to-use-for-linkage.patch b/srcpkgs/rust/patches/0011-allow-specifying-native-sysroot-to-use-for-linkage.patch index 7908ad36fd84e0..ae20659c80f49c 100644 --- a/srcpkgs/rust/patches/0011-allow-specifying-native-sysroot-to-use-for-linkage.patch +++ b/srcpkgs/rust/patches/0011-allow-specifying-native-sysroot-to-use-for-linkage.patch @@ -5,18 +5,12 @@ Subject: [PATCH 11/15] allow specifying native sysroot to use for linkage This allows us to get around the linker attempting to use incompatible libs. ---- - src/bootstrap/src/core/builder/cargo.rs | 4 ++++ - src/bootstrap/src/core/config/config.rs | 2 ++ - src/bootstrap/src/core/config/toml/target.rs | 2 ++ - src/bootstrap/src/lib.rs | 4 ++++ - 4 files changed, 12 insertions(+) diff --git a/src/bootstrap/src/core/builder/cargo.rs b/src/bootstrap/src/core/builder/cargo.rs -index 03f66ac91..9de6dd773 100644 +index db3f393828..65819f203b 100644 --- a/src/bootstrap/src/core/builder/cargo.rs +++ b/src/bootstrap/src/core/builder/cargo.rs -@@ -293,6 +293,10 @@ impl Cargo { +@@ -335,6 +335,10 @@ impl Cargo { self.hostflags.arg(&arg); } @@ -28,10 +22,10 @@ index 03f66ac91..9de6dd773 100644 let target = crate::envify(&target.triple); self.command.env(format!("CARGO_TARGET_{target}_LINKER"), target_linker); diff --git a/src/bootstrap/src/core/config/config.rs b/src/bootstrap/src/core/config/config.rs -index 09ccda806..f0b9ba34a 100644 +index 267e21c599..135dde154c 100644 --- a/src/bootstrap/src/core/config/config.rs +++ b/src/bootstrap/src/core/config/config.rs -@@ -844,6 +844,7 @@ impl Config { +@@ -888,6 +888,7 @@ impl Config { default_linker_linux_override: target_default_linker_linux_override, linker: target_linker, split_debuginfo: target_split_debuginfo, @@ -39,7 +33,7 @@ index 09ccda806..f0b9ba34a 100644 llvm_config: target_llvm_config, llvm_has_rust_patches: target_llvm_has_rust_patches, llvm_filecheck: target_llvm_filecheck, -@@ -921,6 +922,7 @@ impl Config { +@@ -968,6 +969,7 @@ impl Config { target.ar = target_ar.map(PathBuf::from); target.ranlib = target_ranlib.map(PathBuf::from); target.linker = target_linker.map(PathBuf::from); @@ -48,10 +42,10 @@ index 09ccda806..f0b9ba34a 100644 target.default_linker = target_default_linker; target.default_linker_linux_override = default_linker_linux_override; diff --git a/src/bootstrap/src/core/config/toml/target.rs b/src/bootstrap/src/core/config/toml/target.rs -index 119f8d512..01de2a422 100644 +index 311d9add9a..1b2a238d4b 100644 --- a/src/bootstrap/src/core/config/toml/target.rs +++ b/src/bootstrap/src/core/config/toml/target.rs -@@ -30,6 +30,7 @@ define_config! { +@@ -31,6 +31,7 @@ define_config! { default_linker_linux_override: Option = "default-linker-linux-override", linker: Option = "linker", split_debuginfo: Option = "split-debuginfo", @@ -59,20 +53,20 @@ index 119f8d512..01de2a422 100644 llvm_config: Option = "llvm-config", llvm_has_rust_patches: Option = "llvm-has-rust-patches", llvm_filecheck: Option = "llvm-filecheck", -@@ -65,6 +66,7 @@ pub struct Target { - pub default_linker_linux_override: DefaultLinuxLinkerOverride, +@@ -70,6 +71,7 @@ pub struct Target { pub linker: Option, pub split_debuginfo: Option, + pub compress_debuginfo: Option, + pub sysroot: Option, pub sanitizers: Option, pub profiler: Option, pub rpath: Option, diff --git a/src/bootstrap/src/lib.rs b/src/bootstrap/src/lib.rs -index 3f609f3ce..c2909b7b0 100644 +index 2231e0886b..e51a5b731a 100644 --- a/src/bootstrap/src/lib.rs +++ b/src/bootstrap/src/lib.rs -@@ -1388,6 +1388,10 @@ impl Build { - } +@@ -1436,6 +1436,10 @@ impl Build { + .or_else(|| self.musl_root(target).map(|root| root.join("lib"))) } + fn native_sysroot(&self, target: TargetSelection) -> Option<&Path> { @@ -82,6 +76,3 @@ index 3f609f3ce..c2909b7b0 100644 /// Returns the `lib` directory for the WASI target specified, if /// configured. /// --- -2.51.2 - diff --git a/srcpkgs/rust/patches/0014-do-not-statically-link-musl-by-default.patch b/srcpkgs/rust/patches/0014-do-not-statically-link-musl-by-default.patch index 2617cbc96dc6ef..71189fc6bdb593 100644 --- a/srcpkgs/rust/patches/0014-do-not-statically-link-musl-by-default.patch +++ b/srcpkgs/rust/patches/0014-do-not-statically-link-musl-by-default.patch @@ -3,19 +3,11 @@ From: Duncan Overbruck Date: Mon, 3 Nov 2025 23:15:15 +0100 Subject: [PATCH 14/15] do not statically link musl by default ---- - .../src/spec/targets/aarch64_unknown_linux_musl.rs | 3 --- - .../src/spec/targets/arm_unknown_linux_musleabihf.rs | 2 -- - .../src/spec/targets/armv7_unknown_linux_musleabihf.rs | 2 -- - .../rustc_target/src/spec/targets/i686_unknown_linux_musl.rs | 2 -- - .../rustc_target/src/spec/targets/x86_64_unknown_linux_musl.rs | 2 -- - 5 files changed, 11 deletions(-) - diff --git a/compiler/rustc_target/src/spec/targets/aarch64_unknown_linux_musl.rs b/compiler/rustc_target/src/spec/targets/aarch64_unknown_linux_musl.rs -index 478726fbe..b7b345e56 100644 +index 93319d23bf..0781b7dc25 100644 --- a/compiler/rustc_target/src/spec/targets/aarch64_unknown_linux_musl.rs +++ b/compiler/rustc_target/src/spec/targets/aarch64_unknown_linux_musl.rs -@@ -14,9 +14,6 @@ pub(crate) fn target() -> Target { +@@ -15,9 +15,6 @@ pub(crate) fn target() -> Target { | SanitizerSet::MEMORY | SanitizerSet::THREAD; @@ -26,11 +18,11 @@ index 478726fbe..b7b345e56 100644 llvm_target: "aarch64-unknown-linux-musl".into(), metadata: TargetMetadata { diff --git a/compiler/rustc_target/src/spec/targets/arm_unknown_linux_musleabihf.rs b/compiler/rustc_target/src/spec/targets/arm_unknown_linux_musleabihf.rs -index ca52e5b3c..1012b5b1a 100644 +index 5b1d1e2a5a..88538ae5d8 100644 --- a/compiler/rustc_target/src/spec/targets/arm_unknown_linux_musleabihf.rs +++ b/compiler/rustc_target/src/spec/targets/arm_unknown_linux_musleabihf.rs @@ -20,8 +20,6 @@ pub(crate) fn target() -> Target { - features: "+strict-align,+v6,+vfp2,-d32".into(), + features: "+strict-align,+v6,+vfp2".into(), max_atomic_width: Some(64), mcount: "\u{1}mcount".into(), - // FIXME(compiler-team#422): musl targets should be dynamically linked by default. @@ -39,11 +31,11 @@ index ca52e5b3c..1012b5b1a 100644 }, } diff --git a/compiler/rustc_target/src/spec/targets/armv7_unknown_linux_musleabihf.rs b/compiler/rustc_target/src/spec/targets/armv7_unknown_linux_musleabihf.rs -index a3ac0223c..ec43eebfc 100644 +index 6ce45de909..17d2da14f3 100644 --- a/compiler/rustc_target/src/spec/targets/armv7_unknown_linux_musleabihf.rs +++ b/compiler/rustc_target/src/spec/targets/armv7_unknown_linux_musleabihf.rs @@ -23,8 +23,6 @@ pub(crate) fn target() -> Target { - features: "+v7,+vfp3,-d32,+thumb2,-neon".into(), + features: "+v7,+vfp3d16,+thumb2,-neon".into(), max_atomic_width: Some(64), mcount: "\u{1}mcount".into(), - // FIXME(compiler-team#422): musl targets should be dynamically linked by default. @@ -52,31 +44,28 @@ index a3ac0223c..ec43eebfc 100644 }, } diff --git a/compiler/rustc_target/src/spec/targets/i686_unknown_linux_musl.rs b/compiler/rustc_target/src/spec/targets/i686_unknown_linux_musl.rs -index 47a7eb3d5..da1026485 100644 +index 212c2b8db5..c14fab8bd5 100644 --- a/compiler/rustc_target/src/spec/targets/i686_unknown_linux_musl.rs +++ b/compiler/rustc_target/src/spec/targets/i686_unknown_linux_musl.rs -@@ -11,8 +11,6 @@ pub(crate) fn target() -> Target { - base.max_atomic_width = Some(64); +@@ -13,8 +13,6 @@ pub(crate) fn target() -> Target { base.add_pre_link_args(LinkerFlavor::Gnu(Cc::Yes, Lld::No), &["-m32", "-Wl,-melf_i386"]); base.stack_probes = StackProbeType::Inline; + base.supports_fentry = true; - // FIXME(compiler-team#422): musl targets should be dynamically linked by default. - base.crt_static_default = true; // The unwinder used by i686-unknown-linux-musl, the LLVM libunwind // implementation, apparently relies on frame pointers existing... somehow. diff --git a/compiler/rustc_target/src/spec/targets/x86_64_unknown_linux_musl.rs b/compiler/rustc_target/src/spec/targets/x86_64_unknown_linux_musl.rs -index cc5f88862..0203c776a 100644 +index a664f22479..d47b9bd807 100644 --- a/compiler/rustc_target/src/spec/targets/x86_64_unknown_linux_musl.rs +++ b/compiler/rustc_target/src/spec/targets/x86_64_unknown_linux_musl.rs -@@ -16,8 +16,6 @@ pub(crate) fn target() -> Target { - | SanitizerSet::MEMORY +@@ -17,8 +17,6 @@ pub(crate) fn target() -> Target { | SanitizerSet::THREAD; + base.supports_fentry = true; base.supports_xray = true; - // FIXME(compiler-team#422): musl targets should be dynamically linked by default. - base.crt_static_default = true; Target { llvm_target: "x86_64-unknown-linux-musl".into(), --- -2.51.2 - diff --git a/srcpkgs/rust/template b/srcpkgs/rust/template index 6f05955381e28b..5be043b4aa60a9 100644 --- a/srcpkgs/rust/template +++ b/srcpkgs/rust/template @@ -8,9 +8,9 @@ # uploaded to https://repo-default.voidlinux.org/distfiles/ # pkgname=rust -version=1.97.1 +version=1.98.0 revision=1 -_change_id=154587 +_change_id=158169 _llvmver=22 hostmakedepends="curl pkg-config python3 tar cargo-bootstrap $(vopt_if wasi "clang${_llvmver} llvm${_llvmver} wasi-libc")" makedepends="libffi-devel ncurses-devel libxml2-devel libzstd-devel zlib-devel llvm${_llvmver}-devel" @@ -20,10 +20,11 @@ maintainer="Enno Boland " license="Apache-2.0 OR MIT" homepage="https://www.rust-lang.org/" distfiles="https://static.rust-lang.org/dist/rustc-${version}-src.tar.gz" -checksum=622c2b429c53cbfdc0dd3a51d03554e91cd63ebec1912c1f5709640cdfef1a9d +checksum=b226aef375ffbe9fbe2b85fde996b50716d59d55268e240d052396534b75e929 lib32disabled=yes make_check=no # CBA for now python_version=3 # needed for python files in rust-src +nocross="save the builders" build_helper="qemu"