Merge branch 'c9-beta' into a9-beta-bootstrap
This commit is contained in:
commit
2f1b8536b0
35
.gitignore
vendored
35
.gitignore
vendored
@ -1,17 +1,18 @@
|
||||
SOURCES/rustc-1.88.0-src.tar.xz
|
||||
SOURCES/wasi-libc-640c0cfc19a96b099e0791824be5ef0105ce2084.tar.gz
|
||||
SOURCES/cargo-1.87.0-aarch64-unknown-linux-gnu.tar.xz
|
||||
SOURCES/cargo-1.87.0-i686-unknown-linux-gnu.tar.xz
|
||||
SOURCES/cargo-1.87.0-powerpc64le-unknown-linux-gnu.tar.xz
|
||||
SOURCES/cargo-1.87.0-s390x-unknown-linux-gnu.tar.xz
|
||||
SOURCES/cargo-1.87.0-x86_64-unknown-linux-gnu.tar.xz
|
||||
SOURCES/rust-std-1.87.0-aarch64-unknown-linux-gnu.tar.xz
|
||||
SOURCES/rust-std-1.87.0-i686-unknown-linux-gnu.tar.xz
|
||||
SOURCES/rust-std-1.87.0-powerpc64le-unknown-linux-gnu.tar.xz
|
||||
SOURCES/rust-std-1.87.0-s390x-unknown-linux-gnu.tar.xz
|
||||
SOURCES/rust-std-1.87.0-x86_64-unknown-linux-gnu.tar.xz
|
||||
SOURCES/rustc-1.87.0-aarch64-unknown-linux-gnu.tar.xz
|
||||
SOURCES/rustc-1.87.0-i686-unknown-linux-gnu.tar.xz
|
||||
SOURCES/rustc-1.87.0-powerpc64le-unknown-linux-gnu.tar.xz
|
||||
SOURCES/rustc-1.87.0-s390x-unknown-linux-gnu.tar.xz
|
||||
SOURCES/rustc-1.87.0-x86_64-unknown-linux-gnu.tar.xz
|
||||
SOURCES/rustc-1.97.1-src.tar.xz
|
||||
SOURCES/wasi-libc-wasi-sdk-32.tar.gz
|
||||
SOURCES/*tar.xz
|
||||
SOURCES/cargo-1.96.0-aarch64-unknown-linux-gnu.tar.xz
|
||||
SOURCES/cargo-1.96.0-i686-unknown-linux-gnu.tar.xz
|
||||
SOURCES/cargo-1.96.0-powerpc64le-unknown-linux-gnu.tar.xz
|
||||
SOURCES/cargo-1.96.0-s390x-unknown-linux-gnu.tar.xz
|
||||
SOURCES/cargo-1.96.0-x86_64-unknown-linux-gnu.tar.xz
|
||||
SOURCES/rust-std-1.96.0-aarch64-unknown-linux-gnu.tar.xz
|
||||
SOURCES/rust-std-1.96.0-i686-unknown-linux-gnu.tar.xz
|
||||
SOURCES/rust-std-1.96.0-powerpc64le-unknown-linux-gnu.tar.xz
|
||||
SOURCES/rust-std-1.96.0-s390x-unknown-linux-gnu.tar.xz
|
||||
SOURCES/rust-std-1.96.0-x86_64-unknown-linux-gnu.tar.xz
|
||||
SOURCES/rustc-1.96.0-aarch64-unknown-linux-gnu.tar.xz
|
||||
SOURCES/rustc-1.96.0-i686-unknown-linux-gnu.tar.xz
|
||||
SOURCES/rustc-1.96.0-powerpc64le-unknown-linux-gnu.tar.xz
|
||||
SOURCES/rustc-1.96.0-s390x-unknown-linux-gnu.tar.xz
|
||||
SOURCES/rustc-1.96.0-x86_64-unknown-linux-gnu.tar.xz
|
||||
|
||||
@ -1,17 +1,17 @@
|
||||
a5772a6462f53ffc71fda030bece8442d1214198 SOURCES/rustc-1.88.0-src.tar.xz
|
||||
d6330f7ed84d311d1338796af7fd60f011f3a707 SOURCES/wasi-libc-640c0cfc19a96b099e0791824be5ef0105ce2084.tar.gz
|
||||
9db2221e1661966bb075c661452db71f27b42c41 SOURCES/cargo-1.87.0-aarch64-unknown-linux-gnu.tar.xz
|
||||
8a14006ae0e34336304190e8d9411b1061a66da4 SOURCES/cargo-1.87.0-i686-unknown-linux-gnu.tar.xz
|
||||
be2b004db6f63991a61ef0c7cea9c8c5b97b10cd SOURCES/cargo-1.87.0-powerpc64le-unknown-linux-gnu.tar.xz
|
||||
1ba5567a3aa425b2391682d93917e697076e2081 SOURCES/cargo-1.87.0-s390x-unknown-linux-gnu.tar.xz
|
||||
eacf8a939ae7a59670e885e23b6e7fe051bf01b5 SOURCES/cargo-1.87.0-x86_64-unknown-linux-gnu.tar.xz
|
||||
e6cb528be346a3b0ee89cb6dc9d1cf926fa3307e SOURCES/rust-std-1.87.0-aarch64-unknown-linux-gnu.tar.xz
|
||||
9d34e6af2192af000a2c1c7ea8bb7fbb2cd6bff1 SOURCES/rust-std-1.87.0-i686-unknown-linux-gnu.tar.xz
|
||||
3beab8917d485941349f3142cc0a539fd89ea81a SOURCES/rust-std-1.87.0-powerpc64le-unknown-linux-gnu.tar.xz
|
||||
d9e6aecdc9ea4bd767b9b4e08b8dddb7188522ab SOURCES/rust-std-1.87.0-s390x-unknown-linux-gnu.tar.xz
|
||||
30391afc6455cdba697c8d29926a0c83788134c5 SOURCES/rust-std-1.87.0-x86_64-unknown-linux-gnu.tar.xz
|
||||
65b8fd98bf0881e066de71dfcf1da45ac5d20864 SOURCES/rustc-1.87.0-aarch64-unknown-linux-gnu.tar.xz
|
||||
b73832be27ac612d0ffb334c4e30e3bba949a563 SOURCES/rustc-1.87.0-i686-unknown-linux-gnu.tar.xz
|
||||
a64b055a86cf4f853dc589d9ace7ab001ab239e5 SOURCES/rustc-1.87.0-powerpc64le-unknown-linux-gnu.tar.xz
|
||||
2246258130c9a6028fe88c73217b4be50f7236cd SOURCES/rustc-1.87.0-s390x-unknown-linux-gnu.tar.xz
|
||||
7b35341d333ad5bd2f0b93ad9e8b68b1f137a347 SOURCES/rustc-1.87.0-x86_64-unknown-linux-gnu.tar.xz
|
||||
5082bcea4fb67c64f936dc29346603cc4003c183 SOURCES/rustc-1.97.1-src.tar.xz
|
||||
d968731dd5b0309fcaa2561ff3a43b84adc7d267 SOURCES/wasi-libc-wasi-sdk-32.tar.gz
|
||||
1f1c1f953e273a328485889d6db3e2d10cf4909b SOURCES/cargo-1.96.0-aarch64-unknown-linux-gnu.tar.xz
|
||||
ab19a3f5f1bbe006a5b8467d71bdd811858a4e2a SOURCES/cargo-1.96.0-i686-unknown-linux-gnu.tar.xz
|
||||
db5fb24356edec2cc66379442216d056ca1cd8a7 SOURCES/cargo-1.96.0-powerpc64le-unknown-linux-gnu.tar.xz
|
||||
28fd79e764b42a1d889b8c1684cfb1cae94d51a5 SOURCES/cargo-1.96.0-s390x-unknown-linux-gnu.tar.xz
|
||||
bed6a98863c11c700ad86a0977c7decf62893c9e SOURCES/cargo-1.96.0-x86_64-unknown-linux-gnu.tar.xz
|
||||
7247264ef004f47f405a3b31f2fc855cdb55e3f6 SOURCES/rust-std-1.96.0-aarch64-unknown-linux-gnu.tar.xz
|
||||
67b83447722cbcd67ebd2ee24818989592f6f497 SOURCES/rust-std-1.96.0-i686-unknown-linux-gnu.tar.xz
|
||||
40db3091aa840ccb04ab6c9daa347240fb1d97d1 SOURCES/rust-std-1.96.0-powerpc64le-unknown-linux-gnu.tar.xz
|
||||
43f94cb74ee8e4a463231e61dc1fbd3b63fedd41 SOURCES/rust-std-1.96.0-s390x-unknown-linux-gnu.tar.xz
|
||||
a63103c9c4bfa24f40193986507953c008211521 SOURCES/rust-std-1.96.0-x86_64-unknown-linux-gnu.tar.xz
|
||||
1d46a4910df30a736754fd634a89e3186fe46a6e SOURCES/rustc-1.96.0-aarch64-unknown-linux-gnu.tar.xz
|
||||
4dee2587e622dcc461959ffa4c9da7bbafcf793e SOURCES/rustc-1.96.0-i686-unknown-linux-gnu.tar.xz
|
||||
3788561146e4bb086493efa34d5514c38398fd5f SOURCES/rustc-1.96.0-powerpc64le-unknown-linux-gnu.tar.xz
|
||||
508a6f57ea7dd16360bd9e23c46a4f08bf9be5c7 SOURCES/rustc-1.96.0-s390x-unknown-linux-gnu.tar.xz
|
||||
61152a1448f6ae579e2327a288c564a54d143572 SOURCES/rustc-1.96.0-x86_64-unknown-linux-gnu.tar.xz
|
||||
|
||||
@ -1,4 +1,4 @@
|
||||
From 5273432acfae75d6e509bbebcf8d28b0f3d820d0 Mon Sep 17 00:00:00 2001
|
||||
From e54c0a4cc8bd8a76b155714b23a61d1d32a8d069 Mon Sep 17 00:00:00 2001
|
||||
From: Josh Stone <jistone@redhat.com>
|
||||
Date: Fri, 9 Jun 2023 15:23:08 -0700
|
||||
Subject: [PATCH] Let environment variables override some default CPUs
|
||||
@ -10,10 +10,10 @@ Subject: [PATCH] Let environment variables override some default CPUs
|
||||
3 files changed, 3 insertions(+), 3 deletions(-)
|
||||
|
||||
diff --git a/compiler/rustc_target/src/spec/targets/powerpc64le_unknown_linux_gnu.rs b/compiler/rustc_target/src/spec/targets/powerpc64le_unknown_linux_gnu.rs
|
||||
index 23913687a1fd..3253fbc84c74 100644
|
||||
index 9e406af53b5..9104903673f 100644
|
||||
--- a/compiler/rustc_target/src/spec/targets/powerpc64le_unknown_linux_gnu.rs
|
||||
+++ b/compiler/rustc_target/src/spec/targets/powerpc64le_unknown_linux_gnu.rs
|
||||
@@ -2,7 +2,7 @@
|
||||
@@ -4,7 +4,7 @@
|
||||
|
||||
pub(crate) fn target() -> Target {
|
||||
let mut base = base::linux_gnu::opts();
|
||||
@ -23,23 +23,23 @@ index 23913687a1fd..3253fbc84c74 100644
|
||||
base.max_atomic_width = Some(64);
|
||||
base.stack_probes = StackProbeType::Inline;
|
||||
diff --git a/compiler/rustc_target/src/spec/targets/s390x_unknown_linux_gnu.rs b/compiler/rustc_target/src/spec/targets/s390x_unknown_linux_gnu.rs
|
||||
index a84a18a433ff..441af1018ff3 100644
|
||||
index cdcf7d62a3e..02f24274ed2 100644
|
||||
--- a/compiler/rustc_target/src/spec/targets/s390x_unknown_linux_gnu.rs
|
||||
+++ b/compiler/rustc_target/src/spec/targets/s390x_unknown_linux_gnu.rs
|
||||
@@ -5,7 +5,7 @@ pub(crate) fn target() -> Target {
|
||||
@@ -6,7 +6,7 @@ pub(crate) fn target() -> Target {
|
||||
let mut base = base::linux_gnu::opts();
|
||||
base.endian = Endian::Big;
|
||||
// z10 is the oldest CPU supported by LLVM
|
||||
- base.cpu = "z10".into();
|
||||
+ base.cpu = option_env!("RUSTC_TARGET_CPU_S390X").unwrap_or("z10").into();
|
||||
base.max_atomic_width = Some(128);
|
||||
base.min_global_align = Some(16);
|
||||
base.min_global_align = Some(Align::from_bits(16).unwrap());
|
||||
base.stack_probes = StackProbeType::Inline;
|
||||
diff --git a/compiler/rustc_target/src/spec/targets/x86_64_unknown_linux_gnu.rs b/compiler/rustc_target/src/spec/targets/x86_64_unknown_linux_gnu.rs
|
||||
index 59ec6c7f9d5f..b6f1be890b20 100644
|
||||
index 0c8353fad18..c2515e700bb 100644
|
||||
--- a/compiler/rustc_target/src/spec/targets/x86_64_unknown_linux_gnu.rs
|
||||
+++ b/compiler/rustc_target/src/spec/targets/x86_64_unknown_linux_gnu.rs
|
||||
@@ -2,7 +2,7 @@
|
||||
@@ -4,7 +4,7 @@
|
||||
|
||||
pub(crate) fn target() -> Target {
|
||||
let mut base = base::linux_gnu::opts();
|
||||
@ -49,5 +49,5 @@ index 59ec6c7f9d5f..b6f1be890b20 100644
|
||||
base.max_atomic_width = Some(64);
|
||||
base.add_pre_link_args(LinkerFlavor::Gnu(Cc::Yes, Lld::No), &["-m64"]);
|
||||
--
|
||||
2.47.1
|
||||
2.49.0
|
||||
|
||||
|
||||
@ -1,23 +1,23 @@
|
||||
From 687112c89c9058ef1e79f1c3a974940b1ae43ea3 Mon Sep 17 00:00:00 2001
|
||||
From 2f68bbbaa31cef21b912ec4856e3187528ed9679 Mon Sep 17 00:00:00 2001
|
||||
From: Josh Stone <jistone@redhat.com>
|
||||
Date: Fri, 16 Aug 2024 10:12:58 -0700
|
||||
Subject: [PATCH] Use lld provided by system
|
||||
|
||||
---
|
||||
compiler/rustc_target/src/spec/base/wasm.rs | 3 +--
|
||||
.../src/spec/targets/aarch64_unknown_none_softfloat.rs | 2 +-
|
||||
.../src/spec/targets/aarch64_unknown_none_softfloat.rs | 1 -
|
||||
compiler/rustc_target/src/spec/targets/aarch64_unknown_uefi.rs | 1 +
|
||||
compiler/rustc_target/src/spec/targets/x86_64_unknown_none.rs | 2 +-
|
||||
compiler/rustc_target/src/spec/targets/x86_64_unknown_uefi.rs | 1 +
|
||||
5 files changed, 5 insertions(+), 4 deletions(-)
|
||||
5 files changed, 4 insertions(+), 4 deletions(-)
|
||||
|
||||
diff --git a/compiler/rustc_target/src/spec/base/wasm.rs b/compiler/rustc_target/src/spec/base/wasm.rs
|
||||
index 81b96cd39ffa..4c9916af826b 100644
|
||||
index 1f0f564a7790..9173337a1a69 100644
|
||||
--- a/compiler/rustc_target/src/spec/base/wasm.rs
|
||||
+++ b/compiler/rustc_target/src/spec/base/wasm.rs
|
||||
@@ -85,8 +85,7 @@ macro_rules! args {
|
||||
// arguments just yet
|
||||
limit_rdylib_exports: false,
|
||||
@@ -71,8 +71,7 @@ macro_rules! args {
|
||||
// threaded model which will legalize atomics to normal operations.
|
||||
singlethread: true,
|
||||
|
||||
- // we use the LLD shipped with the Rust toolchain by default
|
||||
- linker: Some("rust-lld".into()),
|
||||
@ -26,20 +26,19 @@ index 81b96cd39ffa..4c9916af826b 100644
|
||||
|
||||
pre_link_args,
|
||||
diff --git a/compiler/rustc_target/src/spec/targets/aarch64_unknown_none_softfloat.rs b/compiler/rustc_target/src/spec/targets/aarch64_unknown_none_softfloat.rs
|
||||
index 3b719ebaf07e..8b4fecee68f0 100644
|
||||
index 05876891ebd7..9f389f9abec7 100644
|
||||
--- a/compiler/rustc_target/src/spec/targets/aarch64_unknown_none_softfloat.rs
|
||||
+++ b/compiler/rustc_target/src/spec/targets/aarch64_unknown_none_softfloat.rs
|
||||
@@ -15,7 +15,7 @@ pub(crate) fn target() -> Target {
|
||||
let opts = TargetOptions {
|
||||
abi: "softfloat".into(),
|
||||
@@ -16,7 +16,6 @@ pub(crate) fn target() -> Target {
|
||||
cfg_abi: CfgAbi::SoftFloat,
|
||||
rustc_abi: Some(RustcAbi::Softfloat),
|
||||
linker_flavor: LinkerFlavor::Gnu(Cc::No, Lld::Yes),
|
||||
- linker: Some("rust-lld".into()),
|
||||
+ linker: Some("lld".into()),
|
||||
features: "+v8a,+strict-align,-neon,-fp-armv8".into(),
|
||||
features: "+v8a,+strict-align,-neon".into(),
|
||||
relocation_model: RelocModel::Static,
|
||||
disable_redzone: true,
|
||||
diff --git a/compiler/rustc_target/src/spec/targets/aarch64_unknown_uefi.rs b/compiler/rustc_target/src/spec/targets/aarch64_unknown_uefi.rs
|
||||
index 9656024ddaa1..2099fa17229f 100644
|
||||
index e2c1888e4084..4869f85d1e6e 100644
|
||||
--- a/compiler/rustc_target/src/spec/targets/aarch64_unknown_uefi.rs
|
||||
+++ b/compiler/rustc_target/src/spec/targets/aarch64_unknown_uefi.rs
|
||||
@@ -9,6 +9,7 @@ pub(crate) fn target() -> Target {
|
||||
@ -51,7 +50,7 @@ index 9656024ddaa1..2099fa17229f 100644
|
||||
Target {
|
||||
llvm_target: "aarch64-unknown-windows".into(),
|
||||
diff --git a/compiler/rustc_target/src/spec/targets/x86_64_unknown_none.rs b/compiler/rustc_target/src/spec/targets/x86_64_unknown_none.rs
|
||||
index e14a36735894..b493d7d98b46 100644
|
||||
index 0afe7a0b68b0..4671032a437c 100644
|
||||
--- a/compiler/rustc_target/src/spec/targets/x86_64_unknown_none.rs
|
||||
+++ b/compiler/rustc_target/src/spec/targets/x86_64_unknown_none.rs
|
||||
@@ -19,7 +19,7 @@ pub(crate) fn target() -> Target {
|
||||
@ -60,21 +59,21 @@ index e14a36735894..b493d7d98b46 100644
|
||||
linker_flavor: LinkerFlavor::Gnu(Cc::No, Lld::Yes),
|
||||
- linker: Some("rust-lld".into()),
|
||||
+ linker: Some("lld".into()),
|
||||
rustc_abi: Some(RustcAbi::X86Softfloat),
|
||||
rustc_abi: Some(RustcAbi::Softfloat),
|
||||
features: "-mmx,-sse,-sse2,-sse3,-ssse3,-sse4.1,-sse4.2,-avx,-avx2,+soft-float".into(),
|
||||
supported_sanitizers: SanitizerSet::KCFI | SanitizerSet::KERNELADDRESS,
|
||||
diff --git a/compiler/rustc_target/src/spec/targets/x86_64_unknown_uefi.rs b/compiler/rustc_target/src/spec/targets/x86_64_unknown_uefi.rs
|
||||
index bce6aa0ebc6b..7fa1148a1de7 100644
|
||||
index 333e20bd0ac1..16bea38887be 100644
|
||||
--- a/compiler/rustc_target/src/spec/targets/x86_64_unknown_uefi.rs
|
||||
+++ b/compiler/rustc_target/src/spec/targets/x86_64_unknown_uefi.rs
|
||||
@@ -14,6 +14,7 @@ pub(crate) fn target() -> Target {
|
||||
@@ -15,6 +15,7 @@ pub(crate) fn target() -> Target {
|
||||
base.plt_by_default = false;
|
||||
base.max_atomic_width = Some(64);
|
||||
base.entry_abi = Conv::X86_64Win64;
|
||||
base.entry_abi = CanonAbi::X86(X86Call::Win64);
|
||||
+ base.linker = Some("lld".into());
|
||||
|
||||
// We disable MMX and SSE for now, even though UEFI allows using them. Problem is, you have to
|
||||
// enable these CPU features explicitly before their first use, otherwise their instructions
|
||||
--
|
||||
2.48.1
|
||||
2.53.0
|
||||
|
||||
|
||||
@ -1,33 +1,31 @@
|
||||
From e8833a9032b9f5773ef891b3f12b93322d6b4950 Mon Sep 17 00:00:00 2001
|
||||
From: Jesus Checa Hidalgo <jchecahi@redhat.com>
|
||||
Date: Mon, 7 Apr 2025 16:59:10 +0200
|
||||
From 5e8b069a530092bf57dc19d8f6e5df85db1bd7d3 Mon Sep 17 00:00:00 2001
|
||||
From: Josh Stone <jistone@redhat.com>
|
||||
Date: Mon, 18 Aug 2025 17:11:07 -0700
|
||||
Subject: [PATCH 1/2] bootstrap: allow disabling target self-contained
|
||||
|
||||
---
|
||||
bootstrap.example.toml | 5 +++++
|
||||
src/bootstrap/src/core/build_steps/compile.rs | 4 ++++
|
||||
src/bootstrap/src/core/config/config.rs | 8 ++++++++
|
||||
src/bootstrap/src/core/config/config.rs | 4 ++++
|
||||
src/bootstrap/src/core/config/toml/target.rs | 5 +++++
|
||||
src/bootstrap/src/lib.rs | 5 +++++
|
||||
4 files changed, 22 insertions(+)
|
||||
5 files changed, 23 insertions(+)
|
||||
|
||||
diff --git a/bootstrap.example.toml b/bootstrap.example.toml
|
||||
index 2a98821f225..580d6b2a8a2 100644
|
||||
index 4e850810a30..a3ae9251cf5 100644
|
||||
--- a/bootstrap.example.toml
|
||||
+++ b/bootstrap.example.toml
|
||||
@@ -948,6 +948,11 @@
|
||||
# This overrides the global `rust.jemalloc` option. See that option for more info.
|
||||
#jemalloc = rust.jemalloc (bool)
|
||||
|
||||
@@ -1102,3 +1102,8 @@
|
||||
# pass `off`:
|
||||
# - x86_64-unknown-linux-gnu
|
||||
#default-linker-linux-override = "off" (for most targets)
|
||||
+
|
||||
+# Copy libc and CRT objects into the target lib/self-contained/ directory.
|
||||
+# Enabled by default on `musl`, `wasi`, and `windows-gnu` targets. Other
|
||||
+# targets may ignore this setting if they have nothing to be contained.
|
||||
+#self-contained = <platform-specific> (bool)
|
||||
+
|
||||
# =============================================================================
|
||||
# Distribution options
|
||||
#
|
||||
diff --git a/src/bootstrap/src/core/build_steps/compile.rs b/src/bootstrap/src/core/build_steps/compile.rs
|
||||
index 18b5d4426b1..3de9667123b 100644
|
||||
index 02940a80295..f3e7cbafc49 100644
|
||||
--- a/src/bootstrap/src/core/build_steps/compile.rs
|
||||
+++ b/src/bootstrap/src/core/build_steps/compile.rs
|
||||
@@ -370,6 +370,10 @@ fn copy_self_contained_objects(
|
||||
@ -42,18 +40,48 @@ index 18b5d4426b1..3de9667123b 100644
|
||||
builder.sysroot_target_libdir(*compiler, target).join("self-contained");
|
||||
t!(fs::create_dir_all(&libdir_self_contained));
|
||||
diff --git a/src/bootstrap/src/core/config/config.rs b/src/bootstrap/src/core/config/config.rs
|
||||
index bbb0fbfbb93..8642a86cbf8 100644
|
||||
index 2f493658ec0..d1ceea0296e 100644
|
||||
--- a/src/bootstrap/src/core/config/config.rs
|
||||
+++ b/src/bootstrap/src/core/config/config.rs
|
||||
@@ -666,6 +666,7 @@ pub struct Target {
|
||||
pub codegen_backends: Option<Vec<String>>,
|
||||
pub optimized_compiler_builtins: Option<bool>,
|
||||
@@ -877,6 +877,7 @@ pub(crate) fn parse_inner(
|
||||
runner: target_runner,
|
||||
optimized_compiler_builtins: target_optimized_compiler_builtins,
|
||||
jemalloc: target_jemalloc,
|
||||
+ self_contained: target_self_contained
|
||||
} = cfg;
|
||||
|
||||
let mut target = Target::from_triple(&triple);
|
||||
@@ -934,6 +935,9 @@ pub(crate) fn parse_inner(
|
||||
if let Some(s) = target_no_std {
|
||||
target.no_std = s;
|
||||
}
|
||||
+ if let Some(s) = target_self_contained {
|
||||
+ target.self_contained = s;
|
||||
+ }
|
||||
target.cc = target_cc.map(PathBuf::from);
|
||||
target.cxx = target_cxx.map(PathBuf::from);
|
||||
target.ar = target_ar.map(PathBuf::from);
|
||||
diff --git a/src/bootstrap/src/core/config/toml/target.rs b/src/bootstrap/src/core/config/toml/target.rs
|
||||
index 847b75e696b..cbe36106a6f 100644
|
||||
--- a/src/bootstrap/src/core/config/toml/target.rs
|
||||
+++ b/src/bootstrap/src/core/config/toml/target.rs
|
||||
@@ -48,6 +48,7 @@ struct TomlTarget {
|
||||
runner: Option<String> = "runner",
|
||||
optimized_compiler_builtins: Option<CompilerBuiltins> = "optimized-compiler-builtins",
|
||||
jemalloc: Option<bool> = "jemalloc",
|
||||
+ self_contained: Option<bool> = "self-contained",
|
||||
}
|
||||
}
|
||||
|
||||
@@ -82,6 +83,7 @@ pub struct Target {
|
||||
pub codegen_backends: Option<Vec<CodegenBackendKind>>,
|
||||
pub optimized_compiler_builtins: Option<CompilerBuiltins>,
|
||||
pub jemalloc: Option<bool>,
|
||||
+ pub self_contained: bool,
|
||||
}
|
||||
|
||||
impl Target {
|
||||
@@ -677,6 +678,9 @@ pub fn from_triple(triple: &str) -> Self {
|
||||
@@ -93,6 +95,9 @@ pub fn from_triple(triple: &str) -> Self {
|
||||
if triple.contains("emscripten") {
|
||||
target.runner = Some("node".into());
|
||||
}
|
||||
@ -63,29 +91,11 @@ index bbb0fbfbb93..8642a86cbf8 100644
|
||||
target
|
||||
}
|
||||
}
|
||||
@@ -1292,6 +1296,7 @@ struct TomlTarget {
|
||||
runner: Option<String> = "runner",
|
||||
optimized_compiler_builtins: Option<bool> = "optimized-compiler-builtins",
|
||||
jemalloc: Option<bool> = "jemalloc",
|
||||
+ self_contained: Option<bool> = "self-contained",
|
||||
}
|
||||
}
|
||||
|
||||
@@ -2245,6 +2250,9 @@ fn get_table(option: &str) -> Result<TomlConfig, toml::de::Error> {
|
||||
if let Some(s) = cfg.no_std {
|
||||
target.no_std = s;
|
||||
}
|
||||
+ if let Some(s) = cfg.self_contained {
|
||||
+ target.self_contained = s;
|
||||
+ }
|
||||
target.cc = cfg.cc.map(PathBuf::from);
|
||||
target.cxx = cfg.cxx.map(PathBuf::from);
|
||||
target.ar = cfg.ar.map(PathBuf::from);
|
||||
diff --git a/src/bootstrap/src/lib.rs b/src/bootstrap/src/lib.rs
|
||||
index 843d474f92d..3a4398ee1f8 100644
|
||||
index a31eb0c1c80..ca28b2cb0d9 100644
|
||||
--- a/src/bootstrap/src/lib.rs
|
||||
+++ b/src/bootstrap/src/lib.rs
|
||||
@@ -1434,6 +1434,11 @@ fn no_std(&self, target: TargetSelection) -> Option<bool> {
|
||||
@@ -1448,6 +1448,11 @@ fn no_std(&self, target: TargetSelection) -> Option<bool> {
|
||||
self.config.target_config.get(&target).map(|t| t.no_std)
|
||||
}
|
||||
|
||||
@ -98,5 +108,5 @@ index 843d474f92d..3a4398ee1f8 100644
|
||||
/// and `remote-test-server` binaries.
|
||||
fn remote_tested(&self, target: TargetSelection) -> bool {
|
||||
--
|
||||
2.48.1
|
||||
2.51.1
|
||||
|
||||
|
||||
28
SOURCES/0001-only-copy-rustlib-into-stage0-sysroot.patch
Normal file
28
SOURCES/0001-only-copy-rustlib-into-stage0-sysroot.patch
Normal file
@ -0,0 +1,28 @@
|
||||
From 7d83bae4e2577ffa2afaf2fddb6948c1756a403c Mon Sep 17 00:00:00 2001
|
||||
From: Paul Murphy <paumurph@redhat.com>
|
||||
Date: Thu, 10 Jul 2025 09:06:22 -0500
|
||||
Subject: [PATCH] only copy rustlib into stage0 sysroot
|
||||
|
||||
Otherwise, much more is copied, and doing so likely runs into
|
||||
permissions errors if the bootstrap toolchain lives in the host's
|
||||
sysroot.
|
||||
---
|
||||
src/bootstrap/src/core/build_steps/compile.rs | 2 +-
|
||||
1 file changed, 1 insertion(+), 1 deletion(-)
|
||||
|
||||
diff --git a/src/bootstrap/src/core/build_steps/compile.rs b/src/bootstrap/src/core/build_steps/compile.rs
|
||||
index 4d0ae54e1ef..4ef70dd9b97 100644
|
||||
--- a/src/bootstrap/src/core/build_steps/compile.rs
|
||||
+++ b/src/bootstrap/src/core/build_steps/compile.rs
|
||||
@@ -811,7 +811,7 @@ fn run(self, builder: &Builder<'_>) {
|
||||
let _ = fs::remove_dir_all(sysroot.join("lib/rustlib/src/rust"));
|
||||
}
|
||||
|
||||
- builder.cp_link_r(&builder.initial_sysroot.join("lib"), &sysroot.join("lib"));
|
||||
+ builder.cp_link_r(&builder.initial_sysroot.join("lib/rustlib"), &sysroot.join("lib/rustlib"));
|
||||
} else {
|
||||
if builder.download_rustc() {
|
||||
// Ensure there are no CI-rustc std artifacts.
|
||||
--
|
||||
2.49.0
|
||||
|
||||
@ -1,20 +1,20 @@
|
||||
From 35a37bd892939b8a1cd194632de3b9dd3a3d479b Mon Sep 17 00:00:00 2001
|
||||
From: Jesus Checa Hidalgo <jchecahi@redhat.com>
|
||||
Date: Mon, 7 Apr 2025 17:22:56 +0200
|
||||
From 51178db0fd3d40917a78e4b039c0412bcd332e31 Mon Sep 17 00:00:00 2001
|
||||
From: Josh Stone <jistone@redhat.com>
|
||||
Date: Mon, 18 Aug 2025 17:13:28 -0700
|
||||
Subject: [PATCH 2/2] set an external library path for wasm32-wasi
|
||||
|
||||
---
|
||||
compiler/rustc_codegen_ssa/src/back/link.rs | 10 ++++++++++
|
||||
compiler/rustc_target/src/spec/json.rs | 2 ++
|
||||
compiler/rustc_target/src/spec/json.rs | 4 ++++
|
||||
compiler/rustc_target/src/spec/mod.rs | 2 ++
|
||||
.../rustc_target/src/spec/targets/wasm32_wasip1.rs | 7 ++++---
|
||||
4 files changed, 18 insertions(+), 3 deletions(-)
|
||||
4 files changed, 20 insertions(+), 3 deletions(-)
|
||||
|
||||
diff --git a/compiler/rustc_codegen_ssa/src/back/link.rs b/compiler/rustc_codegen_ssa/src/back/link.rs
|
||||
index b59d73a9aae..2369d73b4e3 100644
|
||||
index d35c3b6bb18..f2a067a9e8c 100644
|
||||
--- a/compiler/rustc_codegen_ssa/src/back/link.rs
|
||||
+++ b/compiler/rustc_codegen_ssa/src/back/link.rs
|
||||
@@ -1583,6 +1583,12 @@ fn get_object_file_path(sess: &Session, name: &str, self_contained: bool) -> Pat
|
||||
@@ -1565,6 +1565,12 @@ fn get_object_file_path(sess: &Session, name: &str, self_contained: bool) -> Pat
|
||||
return file_path;
|
||||
}
|
||||
}
|
||||
@ -27,7 +27,7 @@ index b59d73a9aae..2369d73b4e3 100644
|
||||
for search_path in sess.target_filesearch().search_paths(PathKind::Native) {
|
||||
let file_path = search_path.dir.join(name);
|
||||
if file_path.exists() {
|
||||
@@ -2140,6 +2146,10 @@ fn add_library_search_dirs(
|
||||
@@ -2142,6 +2148,10 @@ fn add_library_search_dirs(
|
||||
}
|
||||
ControlFlow::<()>::Continue(())
|
||||
});
|
||||
@ -39,18 +39,18 @@ index b59d73a9aae..2369d73b4e3 100644
|
||||
|
||||
/// Add options making relocation sections in the produced ELF files read-only
|
||||
diff --git a/compiler/rustc_target/src/spec/json.rs b/compiler/rustc_target/src/spec/json.rs
|
||||
index 4b6de5e18f5..373301d85ab 100644
|
||||
index a972299deea..b3a6fe7c5ac 100644
|
||||
--- a/compiler/rustc_target/src/spec/json.rs
|
||||
+++ b/compiler/rustc_target/src/spec/json.rs
|
||||
@@ -559,6 +559,7 @@ macro_rules! key {
|
||||
key!(linker_is_gnu_json = "linker-is-gnu", bool);
|
||||
key!(pre_link_objects = "pre-link-objects", link_objects);
|
||||
key!(post_link_objects = "post-link-objects", link_objects);
|
||||
+ key!(external_lib_path, optional);
|
||||
key!(pre_link_objects_self_contained = "pre-link-objects-fallback", link_objects);
|
||||
key!(post_link_objects_self_contained = "post-link-objects-fallback", link_objects);
|
||||
// Deserializes the backwards-compatible variants of `-Clink-self-contained`
|
||||
@@ -744,6 +745,7 @@ macro_rules! target_option_val {
|
||||
@@ -81,6 +81,7 @@ macro_rules! forward_opt {
|
||||
forward!(linker_is_gnu_json);
|
||||
forward!(pre_link_objects);
|
||||
forward!(post_link_objects);
|
||||
+ forward_opt!(external_lib_path);
|
||||
forward!(pre_link_objects_self_contained);
|
||||
forward!(post_link_objects_self_contained);
|
||||
|
||||
@@ -308,6 +309,7 @@ macro_rules! target_option_val {
|
||||
target_option_val!(linker_is_gnu_json, "linker-is-gnu");
|
||||
target_option_val!(pre_link_objects);
|
||||
target_option_val!(post_link_objects);
|
||||
@ -58,11 +58,20 @@ index 4b6de5e18f5..373301d85ab 100644
|
||||
target_option_val!(pre_link_objects_self_contained, "pre-link-objects-fallback");
|
||||
target_option_val!(post_link_objects_self_contained, "post-link-objects-fallback");
|
||||
target_option_val!(link_args - pre_link_args_json, "pre-link-args");
|
||||
@@ -520,6 +522,8 @@ struct TargetSpecJson {
|
||||
pre_link_objects: Option<CrtObjects>,
|
||||
#[serde(rename = "post-link-objects")]
|
||||
post_link_objects: Option<CrtObjects>,
|
||||
+ #[serde(rename = "external-lib-path")]
|
||||
+ external_lib_path: Option<StaticCow<str>>,
|
||||
#[serde(rename = "pre-link-objects-fallback")]
|
||||
pre_link_objects_self_contained: Option<CrtObjects>,
|
||||
#[serde(rename = "post-link-objects-fallback")]
|
||||
diff --git a/compiler/rustc_target/src/spec/mod.rs b/compiler/rustc_target/src/spec/mod.rs
|
||||
index 7234d1dc63e..3ec85bbf279 100644
|
||||
index 424026bdcea..3e0d565b00d 100644
|
||||
--- a/compiler/rustc_target/src/spec/mod.rs
|
||||
+++ b/compiler/rustc_target/src/spec/mod.rs
|
||||
@@ -2301,6 +2301,7 @@ pub struct TargetOptions {
|
||||
@@ -2218,6 +2218,7 @@ pub struct TargetOptions {
|
||||
/// Objects to link before and after all other object code.
|
||||
pub pre_link_objects: CrtObjects,
|
||||
pub post_link_objects: CrtObjects,
|
||||
@ -70,7 +79,7 @@ index 7234d1dc63e..3ec85bbf279 100644
|
||||
/// Same as `(pre|post)_link_objects`, but when self-contained linking mode is enabled.
|
||||
pub pre_link_objects_self_contained: CrtObjects,
|
||||
pub post_link_objects_self_contained: CrtObjects,
|
||||
@@ -2821,6 +2822,7 @@ fn default() -> TargetOptions {
|
||||
@@ -2758,6 +2759,7 @@ fn default() -> TargetOptions {
|
||||
relro_level: RelroLevel::None,
|
||||
pre_link_objects: Default::default(),
|
||||
post_link_objects: Default::default(),
|
||||
@ -79,11 +88,11 @@ index 7234d1dc63e..3ec85bbf279 100644
|
||||
post_link_objects_self_contained: Default::default(),
|
||||
link_self_contained: LinkSelfContainedDefault::False,
|
||||
diff --git a/compiler/rustc_target/src/spec/targets/wasm32_wasip1.rs b/compiler/rustc_target/src/spec/targets/wasm32_wasip1.rs
|
||||
index 26add451ed2..3eaf050e682 100644
|
||||
index 2d3dd0862d6..130ce1f225a 100644
|
||||
--- a/compiler/rustc_target/src/spec/targets/wasm32_wasip1.rs
|
||||
+++ b/compiler/rustc_target/src/spec/targets/wasm32_wasip1.rs
|
||||
@@ -21,11 +21,12 @@ pub(crate) fn target() -> Target {
|
||||
options.env = "p1".into();
|
||||
@@ -22,11 +22,12 @@ pub(crate) fn target() -> Target {
|
||||
options.env = Env::P1;
|
||||
options.add_pre_link_args(LinkerFlavor::WasmLld(Cc::Yes), &["--target=wasm32-wasip1"]);
|
||||
|
||||
- options.pre_link_objects_self_contained = crt_objects::pre_wasi_self_contained();
|
||||
@ -99,5 +108,5 @@ index 26add451ed2..3eaf050e682 100644
|
||||
// Right now this is a bit of a workaround but we're currently saying that
|
||||
// the target by default has a static crt which we're taking as a signal
|
||||
--
|
||||
2.48.1
|
||||
2.51.1
|
||||
|
||||
|
||||
16
SOURCES/cargo-1.96.0-aarch64-unknown-linux-gnu.tar.xz.asc
Normal file
16
SOURCES/cargo-1.96.0-aarch64-unknown-linux-gnu.tar.xz.asc
Normal file
@ -0,0 +1,16 @@
|
||||
-----BEGIN PGP SIGNATURE-----
|
||||
|
||||
wsFcBAABCgAQBQJqGHw0CRCFq5bm+hvl/gAApfwQAIfzNAHTNgC7Dp+J10Hfnler
|
||||
hsRJR1hZdt6Bl/LBv66yDDyrklcWX02UP7RnPCh5MJwHIeoDVu4OxKo3VyYAavD/
|
||||
2ud6/vsn/yOcz2cXvyUdjvfnrSRVEagwYypVThv/kliuo1BpSu5u8hBXphLD6+dF
|
||||
oo9twDN1GFVGkYcmoTy3ilAeG/FhiYPRW3oobNycrp7YgdFtfckG5hnuVYowBbwy
|
||||
32YXY7PYMX2z1JWLk5+ZCi9BGuqb8LBPhIrpcc9oVEuYmsQd32K2ECC/bwcIRjhX
|
||||
uadKNRIgmzbXvAd1hrJ5Tv7UhleMfSQhQdL9uFkBdcn1gSyXYST04D9xplcB/Ur8
|
||||
3u0sM1Ai68Do5Gy7RZSWwQcJPC8ckvLk4jBJ+W7GnhEAcT8dVkI60SdXsbm8+kN9
|
||||
8EGk8F10d4pFXwe3z0YHjeOGt/uYLUNAqtPgnUW4dXpFLJtx1+Kp2ROFlsZUgY+c
|
||||
TzUK103b6OXCqfx2wOPEn8WdxH9JFnikYSsC2eKEk8kD7eKyp8ChoZDbh+xAIEI4
|
||||
voXfT75HmqHi3AR+SIX/B0LptZdcpnxvYwBmnS8loltRHIo84hDQSid8rkCvRTVU
|
||||
Jhyyw1jpsx0ISvwDcDVkCEk+FnS5Z7hjxlMNX3Q/B/QQ9M5NAvl420YxxZ/hYxeG
|
||||
h4Llzakb2O4okUmjipew
|
||||
=hOew
|
||||
-----END PGP SIGNATURE-----
|
||||
16
SOURCES/cargo-1.96.0-i686-unknown-linux-gnu.tar.xz.asc
Normal file
16
SOURCES/cargo-1.96.0-i686-unknown-linux-gnu.tar.xz.asc
Normal file
@ -0,0 +1,16 @@
|
||||
-----BEGIN PGP SIGNATURE-----
|
||||
|
||||
wsFcBAABCgAQBQJqGHw1CRCFq5bm+hvl/gAAcbYP/2xud63xGPo0b26e+vUgas7u
|
||||
3g6CCZcJVD9khBR4+Cqrs3eUIfLnrUbD2Xq2FlZVBssVmZYS0vj+VOVqZVsRESrL
|
||||
+3SSokk/07Sq/WVaOEjIh/WtbXVwbR/My2BBKnhCh7d7UR6TB/+cwWcsrobcch6/
|
||||
Od+1ZDj8ELS9be9TzLX7gvdduJGA0st+Z8JCy737wM/x/VMgw1Mi8+KErszJUYp2
|
||||
MHarmdL7b4gzMXyNaTQps99rf+o3EwcSH/JjUm6Q5g5Y0DHghf+1c0Y5wyuiD8sE
|
||||
UK2Oe4NGZLg6OEEzJi7lr7tbAmDDu0x7mZQmZlk+UzOCvuaVpunAygzMHAzl3xXs
|
||||
Gqp7XhnXaVhsoKFT21vV0MBpBvQ6eU191qMhxCxjSGB+JZuu9e/txn1bna34GzoW
|
||||
jtC/aY89H6AA6Dxvnd7dzhr6wDjeIMCwXx+3aB1XlamzCjiADXCdIMworDHdEYq5
|
||||
A+50/u+wnYRQioisT+jpl3wHIWuZGUcqTv5VW3vQXkDRnCWEiAdVxBUAEcZMbeYc
|
||||
earfKb6jxwtAoZC85c5aWgDz0GqHGHWWAai18k0FsMTO+TxBDuvNm6LKBfJRsbC1
|
||||
r7bqBIPszwqaBAOyUw296o4imYk4DjpZWT9S0vLsD5cY0pSbXbt5pS6atP7E/ap3
|
||||
rm2vONnA6RM/ESliFccS
|
||||
=r/BO
|
||||
-----END PGP SIGNATURE-----
|
||||
@ -0,0 +1,16 @@
|
||||
-----BEGIN PGP SIGNATURE-----
|
||||
|
||||
wsFcBAABCgAQBQJqGHw5CRCFq5bm+hvl/gAAVb4P/33yDF1iGMCRks6unBf6leMy
|
||||
awOeqyrPK98m+4iPlKpALTVBDWzgb7W5hWwUHzDnCK72YwJrkK0uenuThXON3rzQ
|
||||
R1SoeUmaW86pUrhqGQbMLDE1cKeA4OlgU3eeXi/MuRAtkw6Ewe5wdkBBWsZZekAX
|
||||
EUOhN63nCcIwH+2TA8MVbATWhIpCLu0aZLcGAqtMFtiA/JxdcagBeJ/sdyEfFUo8
|
||||
CgkEhf8E6Hi6E41NtdMqIFLc7kHB75SbxJc5VaTXi802d4nagU8cg827s7fHa5Ou
|
||||
ZoKQhxu7izzTNdlpPRSetRI6U4dDGWZCwGUgyEjs+YXh8ggmwyZnOKdlvJtk+1NW
|
||||
MXADwcAUALyI2djaDzbuD2mNC6FNeTvetbhlfncV7bdTailLIKAHpUT9KsMLQh+C
|
||||
PdITZCd8KIwFoToTMdWKjJ9nQBqFH5/pUu65zALemfVkmUdDX6mlXEH4C9gUS9lz
|
||||
kDZ6wrN+vtmuOAwD2g8+ggznwItsIQd3ep1X5zkaLT08dxIBxWd4NFiAVDkK3GC6
|
||||
tebXymK5zZRJ8zJnBjsMgLegL7mbGN7tMaTMiWohvJoywfH1MJjkGLE46v6W+1vG
|
||||
X5MV4az1Md2YdPDwoT2jk8xIuIV9GGWJzFNZh/TdXwJG7c0uQXfBKjU4vMsHt5aj
|
||||
rp1yPGUc0ipRkFMOAmZG
|
||||
=7Eug
|
||||
-----END PGP SIGNATURE-----
|
||||
16
SOURCES/cargo-1.96.0-s390x-unknown-linux-gnu.tar.xz.asc
Normal file
16
SOURCES/cargo-1.96.0-s390x-unknown-linux-gnu.tar.xz.asc
Normal file
@ -0,0 +1,16 @@
|
||||
-----BEGIN PGP SIGNATURE-----
|
||||
|
||||
wsFcBAABCgAQBQJqGHw1CRCFq5bm+hvl/gAATIsP+gLRb0S6W1gRIXG9CwlqAlym
|
||||
mg1qGwyKebptysdt/ORW+fFtWx4/H+i9t5VSYf6oHVeBeCyy2nQb2dQ8hAwD87U2
|
||||
wjYq7tB+VdEfvoiRI2HlvZwBmjG2pQO5CK1DWrlFp7WJH7ffqXCtMI227DauG+xe
|
||||
3p0exKiaZ9dwelNRlL0e6+HSEccK4qHIMRLbQT0kHTAAPYEj+B1kjo0ogyFe/tV5
|
||||
4/En94gNAy0KSqR/IrcgR3vNLM+chI8LE9qbIgSb3kH0dvJ7Xf4O/oHDNZCldG2v
|
||||
ResDHEqfGmiJS6ZuWJ59EMPF6AbD0L742qAO/1yCt8SC7J2OyxwQrL2HPWeQZawt
|
||||
5TwatD9BkSDtfsh9mQX3QxDhp/X1nuF/L64HEWy6yNpPLBG8NMfGNakKkL0nUVGk
|
||||
vVzhmqCV96xJXsq6rdLevhQDgiTMut4E1SgvaVFtAe5Aca7B5/luk1B5P0PbVf1p
|
||||
SkexEJH8l4pGiDpZ0ykUjJq1dc/fD2ghsaYFZIeXUpQdRIGnLXG5eAe8DbKSXs7l
|
||||
smM671FRUYUISIC/fsTKS4Zt2mUGEZ+sr3ZwVXH065FYsr0ZwvW7Nc+KoNEyHNHM
|
||||
mJ/haCsLw2HzF9s63fUzm/KNy3ojs7/U4+riig9tjyLiH50dX8KLUPMayKI/J1f9
|
||||
BLtsb7faQh4ke83O5nbw
|
||||
=pHFw
|
||||
-----END PGP SIGNATURE-----
|
||||
16
SOURCES/cargo-1.96.0-x86_64-unknown-linux-gnu.tar.xz.asc
Normal file
16
SOURCES/cargo-1.96.0-x86_64-unknown-linux-gnu.tar.xz.asc
Normal file
@ -0,0 +1,16 @@
|
||||
-----BEGIN PGP SIGNATURE-----
|
||||
|
||||
wsFcBAABCgAQBQJqGHw1CRCFq5bm+hvl/gAAh/kP/036nRY2WtlQb4XdW0umXYt0
|
||||
fhBkxapDWLKtG8VcVTgmQhppjcNHoGCdcwAblTTWuYVDu2PVwIZ/e4HpMBNJalC/
|
||||
kFlh11RbOJsbUFk7u/oujK7wh7k0CMsc5FOR92cHz6ABJJs4+mpPuFForzJBsr6j
|
||||
dBHiwKNZ8dEmPegYClSa7XR0s+PzhZYNRYI1xRenhKwxaee0fX/gfd1S98jeOe0b
|
||||
vPC9SjGE3BgfD32ZGKAF6NFurDF2Ww2y9Pp7D7+zzW9/1dmzmWEVNfwaY79lWl6b
|
||||
kf6gj8WboEyRmTAja0q6dvyyQVB9tHWh6hGHxR7/UDV5H4UpkK4YRk5wxyENOTEE
|
||||
PxD5Ky31FBAdXpL3/aMyCzyhvMuhwP6Pqm0rfuBwb5X98uLiWXkbc7BfqvtOM/QV
|
||||
BAyMWQqGkj8KtOlqnzyPB3ap25AEW7GSjeGveY+ILhGP7TubhMY9+2LGaidgwXtZ
|
||||
vCgdqGWIK2QC+1P15EUa2g3z2jeu31hR9F/Gl7qiwYGtGNH8Cf2jlTygXT+ooAol
|
||||
fbxXNKlA6KesqL5Djy6cjecBPvDoNULcQbrzvxL/UBDc6k4apFkFVFdk639D0Ogc
|
||||
ONPM/tkBKd4Bpdf/RCgnvqi3mzGCI/DYMlz7Dql+aNbXRgBH72LizfB9QqBQsxhj
|
||||
AER9WaFBvEl4RJQtCBjx
|
||||
=L9QZ
|
||||
-----END PGP SIGNATURE-----
|
||||
@ -126,32 +126,31 @@ EOF}\
|
||||
%{nil} \
|
||||
}
|
||||
|
||||
# NB: cargo_build/test/install do not use the -n/-a/-f argument parsing like
|
||||
# Fedora's rust-packaging, because that change would break anyone that's
|
||||
# already passing arguments directly to cargo after the macro. Instead, one can
|
||||
# explicitly use --no-default-features, --all-features, or --features XYZ.
|
||||
|
||||
# cargo_build: builds the crate with cargo
|
||||
%cargo_build\
|
||||
# cargo_build: builds the crate with cargo with the specified feature flags
|
||||
%cargo_build(naf:)\
|
||||
%{shrink: \
|
||||
%{__cargo} build \
|
||||
%{__cargo_common_opts} \
|
||||
--profile rpm \
|
||||
%{__cargo_parse_opts %{-n} %{-a} %{-f:-f%{-f*}}} \
|
||||
%* \
|
||||
}
|
||||
|
||||
# cargo_test: runs the test suite with cargo
|
||||
# cargo_test: runs the test suite with cargo with the specified feature flags
|
||||
#
|
||||
# To pass command-line arguments to the cargo test runners directly (for
|
||||
# example, to skip certain tests during package builds), the
|
||||
# "cargo test" argument parsing need to be bypassed,
|
||||
# i.e. "%%cargo_test -- --skip foo" for skipping all tests with names that
|
||||
# example, to skip certain tests during package builds), both the cargo_test
|
||||
# macro argument parsing and "cargo test" argument parsing need to be bypassed,
|
||||
# i.e. "%%cargo_test -- -- --skip foo" for skipping all tests with names that
|
||||
# match "foo".
|
||||
%cargo_test\
|
||||
%cargo_test(naf:)\
|
||||
%{shrink: \
|
||||
%{__cargo} test \
|
||||
%{__cargo_common_opts} \
|
||||
--profile rpm \
|
||||
--no-fail-fast \
|
||||
%{__cargo_parse_opts %{-n} %{-a} %{-f:-f%{-f*}}} \
|
||||
%* \
|
||||
}
|
||||
|
||||
# cargo_install: install files into the buildroot
|
||||
@ -161,14 +160,19 @@ EOF}\
|
||||
# "$CARGO_HOME/.crates.toml" file, which is used to keep track of which version
|
||||
# of a specific binary has been installed, but which conflicts between builds
|
||||
# of different Rust applications and is not needed when building RPM packages.
|
||||
%cargo_install\
|
||||
%{shrink: \
|
||||
%{__cargo} install \
|
||||
%{__cargo_common_opts} \
|
||||
--profile rpm \
|
||||
--no-track \
|
||||
--path . \
|
||||
}
|
||||
%cargo_install(t:naf:)\
|
||||
(\
|
||||
set -euo pipefail \
|
||||
%{shrink: \
|
||||
%{__cargo} install \
|
||||
%{__cargo_common_opts} \
|
||||
--profile rpm \
|
||||
--no-track \
|
||||
--path . \
|
||||
%{__cargo_parse_opts %{-n} %{-a} %{-f:-f%{-f*}}} \
|
||||
%* \
|
||||
} \
|
||||
)
|
||||
|
||||
# cargo_license: print license information for all crate dependencies
|
||||
#
|
||||
|
||||
86
SOURCES/rust-key.gpg.ascii
Normal file
86
SOURCES/rust-key.gpg.ascii
Normal file
@ -0,0 +1,86 @@
|
||||
-----BEGIN PGP PUBLIC KEY BLOCK-----
|
||||
Version: GnuPG v1
|
||||
|
||||
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
|
||||
Mve696B5tlHyc1KxjHR6w9GRsh4=
|
||||
=5FXw
|
||||
-----END PGP PUBLIC KEY BLOCK-----
|
||||
@ -1,79 +0,0 @@
|
||||
From 925e76167ce2465c5c9d990d97c2db99f459640b Mon Sep 17 00:00:00 2001
|
||||
From: Josh Stone <jistone@redhat.com>
|
||||
Date: Wed, 4 Jun 2025 15:03:19 -0700
|
||||
Subject: [PATCH 1/2] Ensure stack in `ThirBuildCx::mirror_exprs`
|
||||
|
||||
This solve a stack overflow found on Fedora s390x when building
|
||||
`tests/ui/parser/survive-peano-lesson-queue.rs`. Note that the singular
|
||||
`mirror_expr` method already has this stack check, but in this case the
|
||||
plural method was the one recursing too deeply.
|
||||
---
|
||||
compiler/rustc_mir_build/src/thir/cx/expr.rs | 5 ++++-
|
||||
1 file changed, 4 insertions(+), 1 deletion(-)
|
||||
|
||||
diff --git a/compiler/rustc_mir_build/src/thir/cx/expr.rs b/compiler/rustc_mir_build/src/thir/cx/expr.rs
|
||||
index 226dc920a496c..78c168778ac9d 100644
|
||||
--- a/compiler/rustc_mir_build/src/thir/cx/expr.rs
|
||||
+++ b/compiler/rustc_mir_build/src/thir/cx/expr.rs
|
||||
@@ -38,7 +38,10 @@ impl<'tcx> ThirBuildCx<'tcx> {
|
||||
}
|
||||
|
||||
pub(crate) fn mirror_exprs(&mut self, exprs: &'tcx [hir::Expr<'tcx>]) -> Box<[ExprId]> {
|
||||
- exprs.iter().map(|expr| self.mirror_expr_inner(expr)).collect()
|
||||
+ // `mirror_exprs` may also recurse deeply, so it needs protection from stack overflow.
|
||||
+ // Note that we *could* forward to `mirror_expr` for that, but we can consolidate the
|
||||
+ // overhead of stack growth by doing it outside the iteration.
|
||||
+ ensure_sufficient_stack(|| exprs.iter().map(|expr| self.mirror_expr_inner(expr)).collect())
|
||||
}
|
||||
|
||||
#[instrument(level = "trace", skip(self, hir_expr))]
|
||||
|
||||
From af2a85bd75c011fb3453a4963400918e096e1896 Mon Sep 17 00:00:00 2001
|
||||
From: Josh Stone <jistone@redhat.com>
|
||||
Date: Wed, 4 Jun 2025 15:16:38 -0700
|
||||
Subject: [PATCH 2/2] Ensure stack in `Parser::parse_ty`
|
||||
|
||||
This solve a stack overflow found on Fedora s390x when building
|
||||
`tests/ui/associated-consts/issue-93775.rs`.
|
||||
---
|
||||
compiler/rustc_parse/src/parser/ty.rs | 20 ++++++++++++--------
|
||||
1 file changed, 12 insertions(+), 8 deletions(-)
|
||||
|
||||
diff --git a/compiler/rustc_parse/src/parser/ty.rs b/compiler/rustc_parse/src/parser/ty.rs
|
||||
index 17481731b1107..6eaec2e29ad48 100644
|
||||
--- a/compiler/rustc_parse/src/parser/ty.rs
|
||||
+++ b/compiler/rustc_parse/src/parser/ty.rs
|
||||
@@ -7,6 +7,7 @@ use rustc_ast::{
|
||||
Pinnedness, PolyTraitRef, PreciseCapturingArg, TraitBoundModifiers, TraitObjectSyntax, Ty,
|
||||
TyKind, UnsafeBinderTy,
|
||||
};
|
||||
+use rustc_data_structures::stack::ensure_sufficient_stack;
|
||||
use rustc_errors::{Applicability, Diag, PResult};
|
||||
use rustc_span::{ErrorGuaranteed, Ident, Span, kw, sym};
|
||||
use thin_vec::{ThinVec, thin_vec};
|
||||
@@ -104,14 +105,17 @@ fn can_begin_dyn_bound_in_edition_2015(t: &Token) -> bool {
|
||||
impl<'a> Parser<'a> {
|
||||
/// Parses a type.
|
||||
pub fn parse_ty(&mut self) -> PResult<'a, P<Ty>> {
|
||||
- self.parse_ty_common(
|
||||
- AllowPlus::Yes,
|
||||
- AllowCVariadic::No,
|
||||
- RecoverQPath::Yes,
|
||||
- RecoverReturnSign::Yes,
|
||||
- None,
|
||||
- RecoverQuestionMark::Yes,
|
||||
- )
|
||||
+ // Make sure deeply nested types don't overflow the stack.
|
||||
+ ensure_sufficient_stack(|| {
|
||||
+ self.parse_ty_common(
|
||||
+ AllowPlus::Yes,
|
||||
+ AllowCVariadic::No,
|
||||
+ RecoverQPath::Yes,
|
||||
+ RecoverReturnSign::Yes,
|
||||
+ None,
|
||||
+ RecoverQuestionMark::Yes,
|
||||
+ )
|
||||
+ })
|
||||
}
|
||||
|
||||
pub(super) fn parse_ty_with_generics_recovery(
|
||||
16
SOURCES/rust-std-1.96.0-aarch64-unknown-linux-gnu.tar.xz.asc
Normal file
16
SOURCES/rust-std-1.96.0-aarch64-unknown-linux-gnu.tar.xz.asc
Normal file
@ -0,0 +1,16 @@
|
||||
-----BEGIN PGP SIGNATURE-----
|
||||
|
||||
wsFcBAABCgAQBQJqGHwxCRCFq5bm+hvl/gAA/OkP/jZJ4pBYQaVFFVY6quHS6CdO
|
||||
2VNhLJFFIeSDBY5k+gExwOorehTQVzOO3I+y3KaNMVJnYdj3maZE/ZnJ0i3ZAtpt
|
||||
k+ntms0pwhFb8wEaJpNqRh+kDyiPVvRbJZV/88AMNEJCFyEccavoBDloGw15lGBL
|
||||
A7TR/j3ZuDDxNf6wz9844u+oLmGPQYtL7UGL0hVr5/R9uGWNOgtcH9iQeztH08YP
|
||||
hCVqUh7OS2Biyq9ZLSWMWn2HReLnLzhqgLux5LgJdYNLsLWEjOOgdTuWWwBaC2dD
|
||||
pvjxJtfDmBbNmNxHv0OmwVUNCNHog9qLk5egdose1XH0OCIKBNyHtYw8imWzOwEt
|
||||
pj7jHZQx7DVLiHCixe8m+bkEADpf1Hvb+wyhp7a5PJYp6sprAjovz7PQPfzyD9Cj
|
||||
frwLPMRULUoDzdSu/KMwBSMlEkjtkv1dpQQ6xK5/yLWyk2uh9MBg27LbzUMSNjur
|
||||
NCnomGl/eMm7YdI7lZSp5h08MVj6xZhu2l/SOzNen3Opickcb0nrctsLoTyeZwos
|
||||
cx5FrqlaX+RB41qNahQFTIarPMXC2m9BOok06qw+DEYcwkyiqcVw2Eh2dh0gobqC
|
||||
Rj52I6DgDgqxHBVVVR87D+2l6QD/A9L4Szr0eUwdCbKO0yFq4C/E3ptLhjWUTfV8
|
||||
ambnLiB81Tnda7QxfQ2+
|
||||
=LB0R
|
||||
-----END PGP SIGNATURE-----
|
||||
16
SOURCES/rust-std-1.96.0-i686-unknown-linux-gnu.tar.xz.asc
Normal file
16
SOURCES/rust-std-1.96.0-i686-unknown-linux-gnu.tar.xz.asc
Normal file
@ -0,0 +1,16 @@
|
||||
-----BEGIN PGP SIGNATURE-----
|
||||
|
||||
wsFcBAABCgAQBQJqGHw1CRCFq5bm+hvl/gAA4y8P+QFAY7nio/Z/t49G7jcK6G4e
|
||||
xZyLKqh9tJ+xuYv+KCZmGTRZ0RRVfzKZ/INL4PR7bztbH9YGu6VfmEwpWaUmZvbl
|
||||
6+7avppOrXvZ0eqVoHQlAIwIIb2sQj7nHdf3ZVnTgtO2PYfzxnhqFpwWbPupz6o8
|
||||
6TPYThTW7h3lEfyov5st8Q/wEimutU6/tKGSNYPQ99P9CpSENzXSI9D1P5aMJvjA
|
||||
1wwC9VyJWHPvewMvOfahw7jVxwwp7x7pxhZmP1xyBQke9DD+Qz5TYC2kkWQTM3xr
|
||||
7gjPachUk43aPImusi5Cyum5RQ/53Y7kYG4a+JYbBJ07Y1yDa4ECIkgYnFJFgH7C
|
||||
n6ZdI2+yp/wanbP5Le/1NSOhgs2I8E9PYvgInyuorkChWFeq8/KcU/w5fgDOA5pK
|
||||
gDM1x0DMf3D0RBpG8UWFDD2IGpzg7+x32+AbJC0cEkF3HE6VUcUiK8JOJMaiAvtt
|
||||
ja3xL9/2xMpg6weDFxUrEIoasOexlVMONy6qoXFZXNYVHHjbNR7d9a0R+FCgASTs
|
||||
oy3VnS9fhs5TKR+mlqE5eH+zQ1ZufGt+M4WGQ49PMIck82HQcnJWXppysim6IWON
|
||||
3sZpfXhLS1xJQo2ARgDp3bNP2nYk/FnfEhn7aQQ+WzhNxwoOBJzB3qduXlkWeBPe
|
||||
kHEiGRaMv2EX+yxYbw6g
|
||||
=Ulz7
|
||||
-----END PGP SIGNATURE-----
|
||||
@ -0,0 +1,16 @@
|
||||
-----BEGIN PGP SIGNATURE-----
|
||||
|
||||
wsFcBAABCgAQBQJqGHw3CRCFq5bm+hvl/gAAMwEQAJwXKkGpkB2RgPy8e+wsPLuO
|
||||
oKlY/CyoBiQrISC+uSX8UyoS9jQXOKV2svo1VCFS+nv7oXuP3sLBWsT6kounQ4SE
|
||||
L34FIGR9NIOqF0sKm0RyP2uIxwxE++rTtinBWFrnznzJvPix9QN+O3DdrQ2ya0Cu
|
||||
1hhjUYxhbQIZtrV8Ji4wjLtNpaUPzu9ipQ369A9RU3h+EDMj5aHBKZPT6UEMDChB
|
||||
yfMbCzdv4jWE5NqS5QYbNlgJmfZ+V4ynJTbV1lHN5X4v6BSK1qAgsjHUMJ8Qawjf
|
||||
q3o8o9UAcjf4ZMSnDP4e3LneUPYqemQWUOVquNIIoylMyEIS/3VTltxvfZcL12yx
|
||||
Dt4hOOb4UqoWakqZROBRcroGekX53ZKPLJsdfOl7Ac22i5Y/K5yO/NHOWjDxBprG
|
||||
9+5An2x6c0UbW9UJGF7HHo8/Pp7QibCAJtDQRtslkEi5++jACEEkOb/7smr2YJa6
|
||||
FPgTbhUbTIC9bhZO6SpVAyx/7XO/jcoCoeTa+oKixSD5rJvG1wHRzIoknv9Be80r
|
||||
PWCfmsvRNUPdX2+pl+mdnduPzbDoyBigjkl7o9G7A0vR7XS5l2LCEHIjod3afc7t
|
||||
ubE5bPgNw47DhhwCQOgHoIkW7TaMITn+G0YFb1riCXpWbl+D95Lz22/tx/io61nK
|
||||
EfiDehK3ElT6F1OlmmIQ
|
||||
=iwI1
|
||||
-----END PGP SIGNATURE-----
|
||||
16
SOURCES/rust-std-1.96.0-s390x-unknown-linux-gnu.tar.xz.asc
Normal file
16
SOURCES/rust-std-1.96.0-s390x-unknown-linux-gnu.tar.xz.asc
Normal file
@ -0,0 +1,16 @@
|
||||
-----BEGIN PGP SIGNATURE-----
|
||||
|
||||
wsFcBAABCgAQBQJqGHw0CRCFq5bm+hvl/gAAsyYQAJQReRKPq4ToJZyKb5oTQeR0
|
||||
Llkt7okXBiQ5SQE6Feb2uyY92A+pKX9pK0Bjs3Gu0Na1l9B8PSOVxbc7UxKVShZj
|
||||
pegY5RX8x+/RbbpFsrkqd9EJMnj63QP/0mtUEhCuiXVA5/mGXBSRTiA3TLHAveJZ
|
||||
ANtnrjJL+yci7gNx0Sb7ISkZIzg5XJ95gWGZlc5hS70I+RYF+mc5RMc20fxLBbP/
|
||||
eFylHaE1DXYw2Js7CMZfr3xlWtTc7l9Nm9GegDylgIYk+6/i2qAjOK6tB7wdSPZ1
|
||||
3yiLVCRP9lM35XWthpzFFYBS8LWc1Tlgo16PQfBGI7nYo+R3TFMj21Epat/gp008
|
||||
sVr08pKWzprhfWNcSqAZ8KEZKePpFFOQSWmlsVrwySwOEJXKTH9ahgUtD20O9PXs
|
||||
cTBCvaO3qs+ZQMm5xRB5M8GLw5rMV/CQM6PKgM4KEHGytSEPjglfF0iXtBNgZBnb
|
||||
U1dHMAC3UJ+aOI75uJuVCZ146F1s2o9pwpr5D44SX+5DhrRFJmZzsjRzXOmv56Ss
|
||||
HI62vQY1AqqumoiC520LZSKZq5XiSVzXpVy96zWbOH5+EHp0N/HN7rDC336flCLT
|
||||
Z1JuabczH3khlwKTjGop3u7wQyzVtt452pPfDllQVFqRRrPzk5QQK55qQGmGo8rv
|
||||
2r96KfpmQDORsF5sFM9P
|
||||
=CA8i
|
||||
-----END PGP SIGNATURE-----
|
||||
16
SOURCES/rust-std-1.96.0-x86_64-unknown-linux-gnu.tar.xz.asc
Normal file
16
SOURCES/rust-std-1.96.0-x86_64-unknown-linux-gnu.tar.xz.asc
Normal file
@ -0,0 +1,16 @@
|
||||
-----BEGIN PGP SIGNATURE-----
|
||||
|
||||
wsFcBAABCgAQBQJqGHw4CRCFq5bm+hvl/gAAx34QAKRljMohQubpi5RMUGiKIZlh
|
||||
X3gpSUxx1wmIs6bBhQhuWr7c8lXkSYRdAV/0bdA/jEaq8Og4CEds4SNrQkHmtydd
|
||||
BRht0uV2LZn6UXQqKCja0QAlnrag4yBQ+kykI8ONDAQhUwGx/qyJvdBYUuVWOQRv
|
||||
aLXB6ZAuT9Wx/VOn3l3vF3FeKHkPnQEj/LnA7olWggq72Je3GqNtNmRzjfO9RTqZ
|
||||
pCSBjhZsi9QeoaCMmMUsw/unO1RH4+IhOR8MJWJ67BZnkkFU5NFAm+qBm/DehWPi
|
||||
X64RYIXrJC8Z2fixOtPYvy9e4TAmjbnOi6xq0tm+AQsO6486f/qVo/FElxSJK+uF
|
||||
9xsCNFbVvwdjRD+zE5xbC4sl24MaRJOeTigq5GznwQRLXByCjiC5cj7B0uAhoCT9
|
||||
FgaaT363Be46XXaVIelAtLC106gUzzTN22zZKI0VEUYo2Bbad6q2UAnAHwfDQuUl
|
||||
MdV14EBuvCdLPqK50s3axidk2M3GV//80O5CQqP9yyuqFHvHD1UtZ9UhgRDRhWAg
|
||||
IvM8m+f8ak1XSDNJ1MezOktH8yq//b6nc5U8AnJtsg2wisHFbkS05ZIQGDiyr3bP
|
||||
Vy8iBq5KjinwIHu1CGkFBiOSYkKatZ62x5kJJKIILBSl2zVU8WHQU/I5W+IaHkki
|
||||
sc8SDzHLhAJjXwy1aree
|
||||
=WCFw
|
||||
-----END PGP SIGNATURE-----
|
||||
@ -1,44 +0,0 @@
|
||||
diff -up rustc-beta-src/src/tools/cargo/Cargo.lock.orig rustc-beta-src/src/tools/cargo/Cargo.lock
|
||||
--- rustc-beta-src/src/tools/cargo/Cargo.lock.orig 2025-06-13 15:47:08.609927319 -0700
|
||||
+++ rustc-beta-src/src/tools/cargo/Cargo.lock 2025-06-13 15:47:54.463092386 -0700
|
||||
@@ -2530,7 +2530,6 @@ checksum = "e1a117465e7e1597e8febea8bb0c
|
||||
dependencies = [
|
||||
"cc",
|
||||
"libc",
|
||||
- "libssh2-sys",
|
||||
"libz-sys",
|
||||
"openssl-sys",
|
||||
"pkg-config",
|
||||
@@ -2576,20 +2575,6 @@ dependencies = [
|
||||
"pkg-config",
|
||||
"vcpkg",
|
||||
]
|
||||
-
|
||||
-[[package]]
|
||||
-name = "libssh2-sys"
|
||||
-version = "0.3.1"
|
||||
-source = "registry+https://github.com/rust-lang/crates.io-index"
|
||||
-checksum = "220e4f05ad4a218192533b300327f5150e809b54c4ec83b5a1d91833601811b9"
|
||||
-dependencies = [
|
||||
- "cc",
|
||||
- "libc",
|
||||
- "libz-sys",
|
||||
- "openssl-sys",
|
||||
- "pkg-config",
|
||||
- "vcpkg",
|
||||
-]
|
||||
|
||||
[[package]]
|
||||
name = "libz-rs-sys"
|
||||
diff -up rustc-beta-src/src/tools/cargo/Cargo.toml.orig rustc-beta-src/src/tools/cargo/Cargo.toml
|
||||
--- rustc-beta-src/src/tools/cargo/Cargo.toml.orig 2025-06-13 15:47:08.610402846 -0700
|
||||
+++ rustc-beta-src/src/tools/cargo/Cargo.toml 2025-06-13 15:47:51.696071356 -0700
|
||||
@@ -46,7 +46,7 @@ curl = "0.4.47"
|
||||
curl-sys = "0.4.79"
|
||||
filetime = "0.2.25"
|
||||
flate2 = { version = "1.1.1", default-features = false, features = ["zlib-rs"] }
|
||||
-git2 = "0.20.0"
|
||||
+git2 = { version = "0.20.0", default-features = false, features = ["https"] }
|
||||
git2-curl = "0.21.0"
|
||||
# When updating this, also see if `gix-transport` further down needs updating or some auth-related tests will fail.
|
||||
gix = { version = "0.71.0", default-features = false, features = ["blocking-http-transport-curl", "progress-tree", "parallel", "dirwalk"] }
|
||||
@ -1,23 +0,0 @@
|
||||
diff -up rustc-beta-src/src/tools/cargo/Cargo.lock.orig rustc-beta-src/src/tools/cargo/Cargo.lock
|
||||
--- rustc-beta-src/src/tools/cargo/Cargo.lock.orig 2025-06-13 01:10:18.000000000 -0700
|
||||
+++ rustc-beta-src/src/tools/cargo/Cargo.lock 2025-06-13 15:39:38.597882622 -0700
|
||||
@@ -2573,7 +2573,6 @@ version = "0.32.0"
|
||||
source = "registry+https://github.com/rust-lang/crates.io-index"
|
||||
checksum = "fbb8270bb4060bd76c6e96f20c52d80620f1d82a3470885694e41e0f81ef6fe7"
|
||||
dependencies = [
|
||||
- "cc",
|
||||
"pkg-config",
|
||||
"vcpkg",
|
||||
]
|
||||
diff -up rustc-beta-src/src/tools/cargo/Cargo.toml.orig rustc-beta-src/src/tools/cargo/Cargo.toml
|
||||
--- rustc-beta-src/src/tools/cargo/Cargo.toml.orig 2025-06-13 01:10:18.000000000 -0700
|
||||
+++ rustc-beta-src/src/tools/cargo/Cargo.toml 2025-06-13 15:39:34.583102112 -0700
|
||||
@@ -80,7 +80,7 @@ proptest = "1.6.0"
|
||||
pulldown-cmark = { version = "0.13.0", default-features = false, features = ["html"] }
|
||||
rand = "0.9.0"
|
||||
regex = "1.11.1"
|
||||
-rusqlite = { version = "0.34.0", features = ["bundled"] }
|
||||
+rusqlite = { version = "0.34.0", features = [] }
|
||||
rustc-hash = "2.1.1"
|
||||
rustc-stable-hash = "0.1.2"
|
||||
rustfix = { version = "0.9.0", path = "crates/rustfix" }
|
||||
16
SOURCES/rustc-1.96.0-aarch64-unknown-linux-gnu.tar.xz.asc
Normal file
16
SOURCES/rustc-1.96.0-aarch64-unknown-linux-gnu.tar.xz.asc
Normal file
@ -0,0 +1,16 @@
|
||||
-----BEGIN PGP SIGNATURE-----
|
||||
|
||||
wsFcBAABCgAQBQJqGHw0CRCFq5bm+hvl/gAAaFMQAIXd2kJ0AYtxdM7ExD4d3APQ
|
||||
kgagYwNQPcGCzJ9LUVT6IUKecFPGcpMyDao+4Hjj9XVjUVrY0G8PStrLBQA0FEdS
|
||||
RQuy6gJkuPHcfZEO/RiaNjH43cUfr3mMsVXO3cXg5EWB3Ak7zfa2k1WWuaRFvTJz
|
||||
SG3Qm3uwqWzSgpm8ILAkrefW5e+IRseKfQMlb7jsUmkLwQoLqPSGU4xMcKXeqtae
|
||||
/uIzj5Lgig7es3kaQjAU+T4SDZWw4BJl/99HXR7sBq5FGTMDcE0BSm2VAu01AAKS
|
||||
bTEchj2aflpMY5Hr3uYX7m3ydAG09a/HAZsOWdbHdTBJBRhhW7GR1c5VbR3KS5W6
|
||||
yAfjxYO6z0uDDmvjk5dyfJykBnDEqZiixRs8VOwzjojGIbrzNpVJpvvoik5IPATP
|
||||
I9y9cbQ264VR/kxwjq9MRufHNSBRxBC8zi48+FKzMnObkQxnfkYbXSOyt2fqJhvf
|
||||
MNNoXgEwS3NH9zyePrRv6Tmqo0PkLhaAvbS1woH+fnJznJOj+0jfDqel/yvyw74H
|
||||
9x+OAvMHmyZqqQvk5aBFf8/NkzpRrJ7BcYiPC+1B0zni2q9PcbczYH8V0nnKgz6f
|
||||
fq74WDlgp3eNOHRmTRUSqVn/+6Pof+Pgcb5JkZt9EJNF6JpHoWSOPIfffDYZD9BU
|
||||
4qwoDW/PwuAkfSrH/hVu
|
||||
=RH2O
|
||||
-----END PGP SIGNATURE-----
|
||||
16
SOURCES/rustc-1.96.0-i686-unknown-linux-gnu.tar.xz.asc
Normal file
16
SOURCES/rustc-1.96.0-i686-unknown-linux-gnu.tar.xz.asc
Normal file
@ -0,0 +1,16 @@
|
||||
-----BEGIN PGP SIGNATURE-----
|
||||
|
||||
wsFcBAABCgAQBQJqGHw1CRCFq5bm+hvl/gAA66gQAN52arjwECUZ68AO2TPWty4i
|
||||
p/PSsab/ko+bENvjaY+kCy59DC9AiB0e9QfGW3IWJ5eIheSrWlodW0RFtGj0a8Ao
|
||||
5xBSQUdn+gsA3VW9Ez1iuhlSUJzYFFY32xMwG1jDvL1YH+Fz0SQ9ArcN+5Hz/UO4
|
||||
6UGRbaHvmCKlXoMOt4AoMHeKFwBWSi8j+1EW6jYmQr9cZbKIA3yx2BBV/b+6fkvN
|
||||
2ZzaY4USteqgPtrukdBUkGpfPkNPR3Ddjn9VffQuU5kJ4KexFXtxl2A51SPHZu+d
|
||||
pVAQsdoUzO06SMzwhUgUjtGKpxPiomK73qRv/GGVn71P/1h/XJS7S+PvFG52vsaT
|
||||
4dA8y1juzeX55DeJI6SLQ97jTQSPdpRdzmuQcWbGmvorbVYEnT0WSZu5zs/Iy1aK
|
||||
/7+PkPKXvcvbQgOGNQxo0Cz5gLYMfZBQqFLZzX4oaTyJTPNsohZ+1QGLnFimgyj0
|
||||
8icAnqBuPs0odfdi6IL6Ny9YBDyHy4/ZCDYJopJgGgLtq4AJz2Y9pEpo8A/rg8Kz
|
||||
XYA5EUtPWHCkzpeEZwcqpObaJWoxkFpZipBd/MS2LfWp512rjTVJ6b12N8lePmBX
|
||||
p/zpzWdVUZhnWRI1Od6EwyLVv4xVpr/do+1/MXaHqcbr4p6oJ2yZTWqDdoBAcWUH
|
||||
H/hfSmwTAKnoDI02qijt
|
||||
=xVd5
|
||||
-----END PGP SIGNATURE-----
|
||||
@ -0,0 +1,16 @@
|
||||
-----BEGIN PGP SIGNATURE-----
|
||||
|
||||
wsFcBAABCgAQBQJqGHw6CRCFq5bm+hvl/gAA1mQP/0V3lrn6ixl6jFLg+Xn1fYxv
|
||||
9XjAsI55DKUCjAlHVrLXU0QkZoRLc6MJYx/ALlIjburpkw1dG1YnjWR9nfNG4exK
|
||||
elzTPNRngTd31RkPh5/WhSEP9wMsmm6qSK+3U+aZMfYijTp+n1vni511B+WDQoif
|
||||
RIAk1qFmci/Y9mFjHUAcMFqfuzfbC5PKHWnMJvjZRQoHmRd5KU2ns6WxOjtxCNbc
|
||||
SDJ72r1NQtxab8foq++5ePZGOA3FVrplsQ2xmMh7Y95KeIGh7NUrZ2NeaxsOJDaA
|
||||
cxzTJNMyKqtqu15+JOQ47z2ODq9BvGCE5vt+3WSIGcfFw0LDrDEqg6pV8reujL2T
|
||||
oDNNvpRYU8gLTUyOaRiazF1znffQbaS2Qbg4JxherptCpRNdKhR15GEAhCc1iGyH
|
||||
BMdgs47ndkOsctOw82KgBrXB+oYMAPP9iPo/ZLVjpNJWRnkh2x4jZquair9Lefpo
|
||||
xwI9T9GRfMKosODfbSJfbzfePjE0td+WUajBoaW1/HGS2cKrx7RSxKu3DUqLfzhu
|
||||
l3xB5q2NNiGbLI4vMtKmu1YgQVnDPiK/4phPvUJtN7QV8tizJ9wvi4Dgd9oZuRqF
|
||||
j3zr16zrW9BWRri0NQJT6jK30JY4/LCU6rwrtid6rdCqpj3jgzyJ2Xgr7UXLCU5M
|
||||
g80QUjPg6wdDDU1e80Dy
|
||||
=GHvx
|
||||
-----END PGP SIGNATURE-----
|
||||
16
SOURCES/rustc-1.96.0-s390x-unknown-linux-gnu.tar.xz.asc
Normal file
16
SOURCES/rustc-1.96.0-s390x-unknown-linux-gnu.tar.xz.asc
Normal file
@ -0,0 +1,16 @@
|
||||
-----BEGIN PGP SIGNATURE-----
|
||||
|
||||
wsFcBAABCgAQBQJqGHw6CRCFq5bm+hvl/gAA3TsQAMfOb7cHkRVnS5xsLxJSSzgZ
|
||||
KYVhHqu6r+5CEGiC42kV3JtBlKsDNJyoh9OOGauFG6MPMKe308CU8If6rhw5WgBa
|
||||
RYUd6otLMv0aMyFvyOrjrvzQFxK7078KtPCTKKV8B3lJvaq8qxauddtLMTognn4f
|
||||
KyIEOFyCHjwEiZMqvAoDbJRjM7Z5iE/a4I1vKdOiEzlSrBHh//nCMUdoKB3or4z0
|
||||
583v0Ihjbp7MyJJhdlTIgVGJNrcIpkobrOrZ8SpPulgA3we9eUOdpMW591VXt9IC
|
||||
eQHMqdiOWCagIy4LYIfWyx686Q0M2U6q9HtPgPpCGZTrZK/5szIv/dD+weFATu6P
|
||||
mk6h/mUdDBpTX5GUREeVsIS1JeUJdWhKc5k6VSj6bttkwiKGfZh0QuE6E+FgNgdK
|
||||
DVCfZ3G6UpkovVJTrS8rBTMsE3KCIHUzsoucK92/D36TR/jpIIjdhLFLvwTm62Ef
|
||||
j6Pn8ZuArpq6HBcdxOFxRGeilq1gpL5uBq5iIHAGJND7WIh7cT8MzxVL2kG3xWOO
|
||||
wZAxF7p6njYsej/Tg7HNhcGaCN+OqEHLsoDHeuugekACh/V9hcvq7tT8EtgXGRfr
|
||||
JktEloF9gr20kBLF+qjAY79G/NShs+3JMhrIpKvmQlmkLyZ3E0U+V8TmN9H1TSkB
|
||||
DFnxvyr3cqLA0DCNlokS
|
||||
=bPlO
|
||||
-----END PGP SIGNATURE-----
|
||||
16
SOURCES/rustc-1.96.0-x86_64-unknown-linux-gnu.tar.xz.asc
Normal file
16
SOURCES/rustc-1.96.0-x86_64-unknown-linux-gnu.tar.xz.asc
Normal file
@ -0,0 +1,16 @@
|
||||
-----BEGIN PGP SIGNATURE-----
|
||||
|
||||
wsFcBAABCgAQBQJqGHw2CRCFq5bm+hvl/gAAnQsQAMYpMnmwYH7IaBW0xqD/a76M
|
||||
RfDKlRzCSQSLP0RgGiX8+Qt+j4TLUccvmK9CTCOzmmNHBdhL1imA7TdQpL1oIM7I
|
||||
jHS9VstQn6IsZmr679iOjzhDLQM5w7uAwSdMJK3TlMgzr0agOwo6N5Ww2wJ69Ugp
|
||||
niB7dGlQAkY6szyMZaPM4bM0odt/bHX3BU5mrA8ryYlddEp42uZRl/FFiDNZ7ZoV
|
||||
jHLegoEbG2XLqjcyJkfy1046n3xniazgBrKmw4eYa+21kw0gnmXaWL/3CHxP0WFc
|
||||
BjbldJW5vY66R9RE3PkQ1FfMqxrKqanessxKLZ54kre0BfM47J8C7nNhoGnNvheY
|
||||
J349RT5uykCB4tNqf95yUfOAiSCFpMi3PkoaLGBGLw1ouy2hja031idu9g8cc7Ig
|
||||
w3kwJ6lNBU2RmyeQ3iwfdVSPkI5HP5YIFVzSWIai3GPriKiQjenu52FddiRVeeeY
|
||||
O5sKofAxXf+lfl9n0tB0LJshK9xaUcc8SqYKY7Yw16AuN3wcnf1+2EQtrip5FaVS
|
||||
JtxUk0iB4beJCY07IYLYoGqpw6c2+9tMtspUpDbA/v8JwOTj881nVtiLroUzIV2n
|
||||
sgWv5f+gYcnnuP7V+Cm6kTyFJyXmm34qBrGIe5Q1zfjAoeyyGh2zZU6U+os3SPgv
|
||||
Cde7XDXGUR6c9tLVbCZk
|
||||
=+ABf
|
||||
-----END PGP SIGNATURE-----
|
||||
42
SOURCES/rustc-1.97.0-disable-libssh2.patch
Normal file
42
SOURCES/rustc-1.97.0-disable-libssh2.patch
Normal file
@ -0,0 +1,42 @@
|
||||
--- rustc-beta-src/src/tools/cargo/Cargo.lock.orig 2026-07-02 11:47:42.914176299 -0500
|
||||
+++ rustc-beta-src/src/tools/cargo/Cargo.lock 2026-07-02 11:48:03.404372146 -0500
|
||||
@@ -3108,7 +3108,6 @@ checksum = "c9b3acc4b91781bb0b3386669d32
|
||||
dependencies = [
|
||||
"cc",
|
||||
"libc",
|
||||
- "libssh2-sys",
|
||||
"libz-sys",
|
||||
"openssl-sys",
|
||||
"pkg-config",
|
||||
@@ -3156,20 +3155,6 @@ dependencies = [
|
||||
"pkg-config",
|
||||
"vcpkg",
|
||||
]
|
||||
-
|
||||
-[[package]]
|
||||
-name = "libssh2-sys"
|
||||
-version = "0.3.2"
|
||||
-source = "registry+https://github.com/rust-lang/crates.io-index"
|
||||
-checksum = "c04141a07bb0c0bc461cb657808764de571702a59bc5c726c400ac9a7625e3ab"
|
||||
-dependencies = [
|
||||
- "cc",
|
||||
- "libc",
|
||||
- "libz-sys",
|
||||
- "openssl-sys",
|
||||
- "pkg-config",
|
||||
- "vcpkg",
|
||||
-]
|
||||
|
||||
[[package]]
|
||||
name = "libz-sys"
|
||||
--- rustc-beta-src/src/tools/cargo/Cargo.toml.orig 2026-07-02 11:47:42.916176318 -0500
|
||||
+++ rustc-beta-src/src/tools/cargo/Cargo.toml 2026-07-02 11:48:12.603460071 -0500
|
||||
@@ -51,7 +51,7 @@ filetime = "0.2.27"
|
||||
flate2 = { version = "1.1.9", default-features = false, features = ["zlib-rs"] }
|
||||
futures = { version = "0.3.32", default-features = false, features = ["std", "executor", "async-await"]}
|
||||
futures-timer = "3.0.3"
|
||||
-git2 = "0.20.4"
|
||||
+git2 = { version = "0.20.4", default-features = false, features = ["https"] }
|
||||
git2-curl = "0.21.0"
|
||||
# When updating this, also see if `gix-transport` further down needs updating or some auth-related tests will fail.
|
||||
gix = { version = "0.83.0", default-features = false, features = ["sha1", "progress-tree", "parallel", "dirwalk", "status"] }
|
||||
21
SOURCES/rustc-1.97.0-unbundle-sqlite.patch
Normal file
21
SOURCES/rustc-1.97.0-unbundle-sqlite.patch
Normal file
@ -0,0 +1,21 @@
|
||||
--- rustc-beta-src/src/tools/cargo/Cargo.lock.orig 2026-06-02 15:55:01.625762200 -0500
|
||||
+++ rustc-beta-src/src/tools/cargo/Cargo.lock 2026-06-02 15:56:06.143120013 -0500
|
||||
@@ -3152,7 +3152,6 @@ version = "0.37.0"
|
||||
source = "registry+https://github.com/rust-lang/crates.io-index"
|
||||
checksum = "b1f111c8c41e7c61a49cd34e44c7619462967221a6443b0ec299e0ac30cfb9b1"
|
||||
dependencies = [
|
||||
- "cc",
|
||||
"pkg-config",
|
||||
"vcpkg",
|
||||
]
|
||||
--- rustc-beta-src/src/tools/cargo/Cargo.toml.orig 2026-06-02 15:54:48.946691882 -0500
|
||||
+++ rustc-beta-src/src/tools/cargo/Cargo.toml 2026-06-02 15:56:21.480430158 -0500
|
||||
@@ -88,7 +88,7 @@ proptest = "1.11.0"
|
||||
pulldown-cmark = { version = "0.13.3", default-features = false, features = ["html"] }
|
||||
rand = "0.10.1"
|
||||
regex = "1.12.3"
|
||||
-rusqlite = { version = "0.39.0", features = ["bundled"] }
|
||||
+rusqlite = { version = "0.39.0", features = [] }
|
||||
rustc-hash = "2.1.2"
|
||||
rustc-stable-hash = "0.1.2"
|
||||
rustfix = { version = "0.9.7", path = "crates/rustfix" }
|
||||
16
SOURCES/rustc-1.97.1-src.tar.xz.asc
Normal file
16
SOURCES/rustc-1.97.1-src.tar.xz.asc
Normal file
@ -0,0 +1,16 @@
|
||||
-----BEGIN PGP SIGNATURE-----
|
||||
|
||||
wsFcBAABCgAQBQJqWMn2CRCFq5bm+hvl/gAAONMP+wf2tdyAbygOTk6UWP6YqxQ9
|
||||
a8FzqUppJa3DJBbwuKaqXdqLa79ci8MYRSYaS643zGlBzuVLJpO6Hos4JKMyV5Yd
|
||||
K9vnbkqX3rmDCAwzKY8BPO68bNnspwMXxuv5HmSXSCw1PNEO+LHWpnlOKgEbbrfu
|
||||
mX6t0+AJm56bjN2xhqF7l3Y7XDhQvxGzmQk77HGbhTItY9it9Js4/LVsMtz7cngB
|
||||
R4y+K3ML6p6mHyA9CoLHySWWh0QvJyZyo1Q294LQTLWN1ML+zBlOx1edgH0S8Cru
|
||||
iuPw9ISmlAnQv//sNMCzM+4CYNVSvOQ4kDEJ+qJqVB2bRLfElLQcxnAwMkwWBrKK
|
||||
3bBVmHZRnRAAPOZwtZBziCYd3TX0kIjjgwlTy7zLKE6CVjKYruN73bbMM1KnkSTE
|
||||
Gg+LPHLFt+KNCBgBm6/qDEVguOAklFLRnlwjQarzyQOv+ZHbIl5l55ZDk/PlwsZx
|
||||
SJfWmKEu7/o4MVCTvliV4Aaj/l33GvwIbbcYmlX6lDnvYUuBVCts+o/AMiHrAM3o
|
||||
NErq+Y3J9DQYZ73SpE++2i73NlHRHikdo3uf1AU2LAIVvU+MILnKIoyZE2zc2iJN
|
||||
4SLlcseZWiD78VDBISTXoAHA8X+tIlzfV0Yb54/IDfSPr2j7jY2LqVDFMnUa1jCp
|
||||
flbhIKwroX8xQ32amB7H
|
||||
=Q82X
|
||||
-----END PGP SIGNATURE-----
|
||||
222
SPECS/rust.spec
222
SPECS/rust.spec
@ -9,7 +9,7 @@
|
||||
## END: Set by rpmautospec
|
||||
|
||||
Name: rust
|
||||
Version: 1.88.0
|
||||
Version: 1.97.1
|
||||
Release: %autorelease
|
||||
Summary: The Rust Programming Language
|
||||
License: (Apache-2.0 OR MIT) AND (Artistic-2.0 AND BSD-3-Clause AND ISC AND MIT AND MPL-2.0 AND Unicode-3.0)
|
||||
@ -22,24 +22,23 @@ URL: https://www.rust-lang.org
|
||||
ExclusiveArch: %{rust_arches}
|
||||
|
||||
# To bootstrap from scratch, set the channel and date from src/stage0
|
||||
# e.g. 1.88.0 wants rustc: 1.87.0-2025-05-15
|
||||
# e.g. 1.89.0 wants rustc: 1.88.0-2025-06-26
|
||||
# or nightly wants some beta-YYYY-MM-DD
|
||||
%global bootstrap_version 1.87.0
|
||||
%global bootstrap_channel 1.87.0
|
||||
%global bootstrap_date 2025-05-15
|
||||
%global bootstrap_version 1.96.0
|
||||
%global bootstrap_channel 1.96.0
|
||||
%global bootstrap_date 2026-05-28
|
||||
|
||||
# Only the specified arches will use bootstrap binaries.
|
||||
# NOTE: Those binaries used to be uploaded with every new release, but that was
|
||||
# a waste of lookaside cache space when they're most often unused.
|
||||
# Run "spectool -g rust.spec" after changing this and then "fedpkg upload" to
|
||||
# add them to sources. Remember to remove them again after the bootstrap build!
|
||||
#global bootstrap_arches %%{rust_arches}
|
||||
%global bootstrap_arches %{rust_arches}
|
||||
|
||||
# We need CRT files for *-wasi targets, at least as new as the commit in
|
||||
# src/ci/docker/host-x86_64/dist-various-2/build-wasi-toolchain.sh
|
||||
%global wasi_libc_url https://github.com/WebAssembly/wasi-libc
|
||||
#global wasi_libc_ref wasi-sdk-25
|
||||
%global wasi_libc_ref 640c0cfc19a96b099e0791824be5ef0105ce2084
|
||||
%global wasi_libc_ref wasi-sdk-32
|
||||
%global wasi_libc_name wasi-libc-%{wasi_libc_ref}
|
||||
%global wasi_libc_source %{wasi_libc_url}/archive/%{wasi_libc_ref}/%{wasi_libc_name}.tar.gz
|
||||
%global wasi_libc_dir %{_builddir}/%{wasi_libc_name}
|
||||
@ -53,37 +52,29 @@ ExclusiveArch: %{rust_arches}
|
||||
%bcond_with llvm_static
|
||||
|
||||
# We can also choose to just use Rust's bundled LLVM, in case the system LLVM
|
||||
# is insufficient. Rust currently requires LLVM 19.0+.
|
||||
# is insufficient. Rust currently requires LLVM 21.0+.
|
||||
# See src/bootstrap/src/core/build_steps/llvm.rs, fn check_llvm_version
|
||||
%global min_llvm_version 19.0.0
|
||||
%global bundled_llvm_version 20.1.5
|
||||
#global llvm_compat_version 19
|
||||
# See src/llvm-project/cmake/Modules/LLVMVersion.cmake for bundled version.
|
||||
%global min_llvm_version 21.0.0
|
||||
%global bundled_llvm_version 22.1.6
|
||||
#global llvm_compat_version 21
|
||||
%global llvm llvm%{?llvm_compat_version}
|
||||
%bcond_with bundled_llvm
|
||||
|
||||
# Requires stable libgit2 1.9, and not the next minor soname change.
|
||||
# This needs to be consistent with the bindings in vendor/libgit2-sys.
|
||||
%global min_libgit2_version 1.9.0
|
||||
%global min_libgit2_version 1.9.2
|
||||
%global next_libgit2_version 1.10.0~
|
||||
%global bundled_libgit2_version 1.9.0
|
||||
%global bundled_libgit2_version 1.9.2
|
||||
%if 0%{?fedora} >= 41
|
||||
%bcond_with bundled_libgit2
|
||||
%else
|
||||
%bcond_without bundled_libgit2
|
||||
%endif
|
||||
|
||||
# Try to use system oniguruma (only used at build time for rust-docs)
|
||||
# src/tools/rustbook -> ... -> onig_sys v69.8.1 needs at least 6.9.3
|
||||
%global min_oniguruma_version 6.9.3
|
||||
%if 0%{?rhel} && 0%{?rhel} < 9
|
||||
%bcond_without bundled_oniguruma
|
||||
%else
|
||||
%bcond_with bundled_oniguruma
|
||||
%endif
|
||||
|
||||
# Cargo uses UPSERTs with omitted conflict targets
|
||||
%global min_sqlite3_version 3.35
|
||||
%global bundled_sqlite3_version 3.49.1
|
||||
%global bundled_sqlite3_version 3.51.3
|
||||
%if 0%{?rhel} && 0%{?rhel} < 10
|
||||
%bcond_without bundled_sqlite3
|
||||
%else
|
||||
@ -129,7 +120,11 @@ ExclusiveArch: %{rust_arches}
|
||||
rpm.define("rustc_package rustc-" .. version_channel .. "-src")
|
||||
end}
|
||||
Source0: https://static.rust-lang.org/dist/%{rustc_package}.tar.xz
|
||||
Source1: %{wasi_libc_source}
|
||||
Source1: https://static.rust-lang.org/dist/%{rustc_package}.tar.xz.asc
|
||||
Source2: https://static.rust-lang.org/rust-key.gpg.ascii
|
||||
|
||||
Source10: %{wasi_libc_source}
|
||||
|
||||
# Sources for bootstrap_arches are inserted by lua below
|
||||
|
||||
# By default, rust tries to use "rust-lld" as a linker for some targets.
|
||||
@ -149,11 +144,10 @@ Patch4: 0001-bootstrap-allow-disabling-target-self-contained.patch
|
||||
Patch5: 0002-set-an-external-library-path-for-wasm32-wasi.patch
|
||||
|
||||
# We don't want to use the bundled library in libsqlite3-sys
|
||||
Patch6: rustc-1.88.0-unbundle-sqlite.patch
|
||||
Patch6: rustc-1.97.0-unbundle-sqlite.patch
|
||||
|
||||
# Ensure stack in two places that affect s390x
|
||||
# https://github.com/rust-lang/rust/pull/142047
|
||||
Patch7: rust-pr142047.patch
|
||||
# stage0 tries to copy all of /usr/lib, sometimes unsuccessfully, see #143735
|
||||
Patch7: 0001-only-copy-rustlib-into-stage0-sysroot.patch
|
||||
|
||||
### RHEL-specific patches below ###
|
||||
|
||||
@ -163,7 +157,7 @@ Source101: cargo_vendor.attr
|
||||
Source102: cargo_vendor.prov
|
||||
|
||||
# Disable cargo->libgit2->libssh2 on RHEL, as it's not approved for FIPS (rhbz1732949)
|
||||
Patch100: rustc-1.88.0-disable-libssh2.patch
|
||||
Patch100: rustc-1.97.0-disable-libssh2.patch
|
||||
|
||||
# Get the Rust triple for any architecture and ABI.
|
||||
%{lua: function rust_triple(arch, abi)
|
||||
@ -229,15 +223,21 @@ end}
|
||||
local channel = rpm.expand("%{bootstrap_channel}")
|
||||
local target_arch = rpm.expand("%{_target_cpu}")
|
||||
for i, arch in ipairs(bootstrap_arches) do
|
||||
i = 1000 + i * 3
|
||||
i = 1000 + i * 6
|
||||
local suffix = channel.."-"..rust_triple(arch)
|
||||
print(string.format("Source%d: %s/cargo-%s.tar.xz\n", i, base, suffix))
|
||||
print(string.format("Source%d: %s/rustc-%s.tar.xz\n", i+1, base, suffix))
|
||||
print(string.format("Source%d: %s/rust-std-%s.tar.xz\n", i+2, base, suffix))
|
||||
print(string.format("Source%d: %s/cargo-%s.tar.xz.asc\n", i+1, base, suffix))
|
||||
print(string.format("Source%d: %s/rustc-%s.tar.xz\n", i+2, base, suffix))
|
||||
print(string.format("Source%d: %s/rustc-%s.tar.xz.asc\n", i+3, base, suffix))
|
||||
print(string.format("Source%d: %s/rust-std-%s.tar.xz\n", i+4, base, suffix))
|
||||
print(string.format("Source%d: %s/rust-std-%s.tar.xz.asc\n", i+5, base, suffix))
|
||||
if arch == target_arch then
|
||||
rpm.define("bootstrap_source_cargo "..i)
|
||||
rpm.define("bootstrap_source_rustc "..i+1)
|
||||
rpm.define("bootstrap_source_std "..i+2)
|
||||
rpm.define("bootstrap_sig_cargo "..i+1)
|
||||
rpm.define("bootstrap_source_rustc "..i+2)
|
||||
rpm.define("bootstrap_sig_rustc "..i+3)
|
||||
rpm.define("bootstrap_source_std "..i+4)
|
||||
rpm.define("bootstrap_sig_std "..i+5)
|
||||
rpm.define("bootstrap_suffix "..suffix)
|
||||
end
|
||||
end
|
||||
@ -253,6 +253,12 @@ BuildRequires: (%{name} >= %{bootstrap_version} with %{name} <= %{version})
|
||||
%global local_rust_root %{_prefix}
|
||||
%endif
|
||||
|
||||
%if 0%{?rhel} && 0%{?rhel} < 11
|
||||
BuildRequires: gnupg2
|
||||
%else
|
||||
BuildRequires: gpgverify
|
||||
%endif
|
||||
|
||||
BuildRequires: make
|
||||
BuildRequires: gcc
|
||||
BuildRequires: gcc-c++
|
||||
@ -261,17 +267,17 @@ BuildRequires: ncurses-devel
|
||||
BuildRequires: curl-devel
|
||||
BuildRequires: pkgconfig(libcurl)
|
||||
BuildRequires: pkgconfig(liblzma)
|
||||
BuildRequires: pkgconfig(openssl)
|
||||
|
||||
# Only specific versions of openssl are supported. They are 1.0.2 - 1.1.1, or 3
|
||||
# The openssl-sys crate will also verify the release is supported.
|
||||
BuildRequires: pkgconfig(openssl) < 4
|
||||
|
||||
BuildRequires: pkgconfig(zlib)
|
||||
|
||||
%if %{without bundled_libgit2}
|
||||
BuildRequires: (pkgconfig(libgit2) >= %{min_libgit2_version} with pkgconfig(libgit2) < %{next_libgit2_version})
|
||||
%endif
|
||||
|
||||
%if %{without bundled_oniguruma}
|
||||
BuildRequires: pkgconfig(oniguruma) >= %{min_oniguruma_version}
|
||||
%endif
|
||||
|
||||
%if %{without bundled_sqlite3}
|
||||
BuildRequires: pkgconfig(sqlite3) >= %{min_sqlite3_version}
|
||||
%endif
|
||||
@ -303,6 +309,7 @@ BuildRequires: %{llvm}-devel >= %{min_llvm_version}
|
||||
%if %with llvm_static
|
||||
BuildRequires: %{llvm}-static
|
||||
BuildRequires: libffi-devel
|
||||
BuildRequires: libxml2-devel
|
||||
%endif
|
||||
%endif
|
||||
|
||||
@ -372,6 +379,7 @@ BuildRequires: mingw64-winpthreads-static
|
||||
%if %defined wasm_targets
|
||||
%if %with bundled_wasi_libc
|
||||
BuildRequires: clang%{?llvm_compat_version}
|
||||
BuildRequires: cmake >= 3.26
|
||||
%else
|
||||
BuildRequires: wasi-libc-static
|
||||
%endif
|
||||
@ -385,7 +393,6 @@ BuildRequires: compiler-rt%{?llvm_compat_version}
|
||||
# https://github.com/rust-lang/rust/pull/101841
|
||||
Obsoletes: %{name}-analysis < 1.69.0~
|
||||
|
||||
%ifnarch %{bootstrap_arches}
|
||||
# Experimenting with a fine-grained version of %%cargo_vendor_manifest,
|
||||
# so we can have different bundled provides for each tool subpackage.
|
||||
%define cargo_tree_manifest(n:m:f:t:) ( \
|
||||
@ -394,6 +401,7 @@ Obsoletes: %{name}-analysis < 1.69.0~
|
||||
mkdir -p build/manifests/%{-n*} \
|
||||
%{shrink: \
|
||||
env RUSTC_BOOTSTRAP=1 \
|
||||
RUSTC=%{local_rust_root}/bin/rustc \
|
||||
%{local_rust_root}/bin/cargo tree \
|
||||
--offline --edges normal,build \
|
||||
--prefix none --format "{p}" \
|
||||
@ -406,6 +414,7 @@ Obsoletes: %{name}-analysis < 1.69.0~
|
||||
>build/manifests/%{-n*}/cargo-vendor.txt \
|
||||
} \
|
||||
)
|
||||
%ifnarch %{bootstrap_arches}
|
||||
%{?fedora:BuildRequires: cargo-rpm-macros}
|
||||
%{?rhel:BuildRequires: rust-toolset}
|
||||
%endif
|
||||
@ -518,6 +527,8 @@ Summary: GDB pretty printers for Rust
|
||||
BuildArch: noarch
|
||||
Requires: gdb
|
||||
Requires: %{name}-debugger-common = %{version}-%{release}
|
||||
# rust-gdb uses rustc to find the sysroot
|
||||
Requires: %{name} = %{version}-%{release}
|
||||
|
||||
%description gdb
|
||||
This package includes the rust-gdb script, which allows easier debugging of Rust
|
||||
@ -530,6 +541,8 @@ BuildArch: noarch
|
||||
Requires: lldb
|
||||
Requires: python3-lldb
|
||||
Requires: %{name}-debugger-common = %{version}-%{release}
|
||||
# rust-lldb uses rustc to find the sysroot
|
||||
Requires: %{name} = %{version}-%{release}
|
||||
|
||||
%description lldb
|
||||
This package includes the rust-lldb script, which allows easier debugging of Rust
|
||||
@ -654,8 +667,12 @@ the Cargo package manager, and a few convenience macros for rpm builds.
|
||||
|
||||
|
||||
%prep
|
||||
%gpgverify -k 2 -s 1 -d 0
|
||||
|
||||
%ifarch %{bootstrap_arches}
|
||||
%gpgverify -k 2 -s %{bootstrap_sig_cargo} -d %{bootstrap_source_cargo}
|
||||
%gpgverify -k 2 -s %{bootstrap_sig_rustc} -d %{bootstrap_source_rustc}
|
||||
%gpgverify -k 2 -s %{bootstrap_sig_std} -d %{bootstrap_source_std}
|
||||
rm -rf %{local_rust_root}
|
||||
%setup -q -n cargo-%{bootstrap_suffix} -T -b %{bootstrap_source_cargo}
|
||||
./install.sh --prefix=%{local_rust_root} --disable-ldconfig
|
||||
@ -668,12 +685,18 @@ test -f '%{local_rust_root}/bin/rustc'
|
||||
%endif
|
||||
|
||||
%if %{defined wasm_targets} && %{with bundled_wasi_libc}
|
||||
%setup -q -n %{wasi_libc_name} -T -b 1
|
||||
rm -rf %{wasi_libc_dir}/dlmalloc/
|
||||
%setup -q -n %{wasi_libc_name} -T -b 10
|
||||
# We want to make sure we use emmalloc instead of CC0 dlmalloc.
|
||||
# The cmake files need the sources to exist, so just truncate instead.
|
||||
truncate --no-create --size=0 %{wasi_libc_dir}/dlmalloc/src/*.c
|
||||
%endif
|
||||
|
||||
%setup -q -n %{rustc_package}
|
||||
|
||||
# Sanity check that the source version is what we expect,
|
||||
# especially for betas where the tarball is unversioned.
|
||||
test "$(cut -d' ' -f1 ./version)" = "%{lua: print((rpm.expand('%version'):gsub('~', '-'))) }"
|
||||
|
||||
%patch -P1 -p1
|
||||
%patch -P2 -p1
|
||||
%patch -P3 -p1
|
||||
@ -718,15 +741,12 @@ rm -rf src/tools/rustc-perf/collector/*-benchmarks/
|
||||
%clear_dir vendor/libz-sys*/src/zlib{,-ng}/
|
||||
%clear_dir vendor/lzma-sys*/xz-*/
|
||||
%clear_dir vendor/openssl-src*/openssl/
|
||||
%clear_dir vendor/capstone-sys-*/capstone/
|
||||
|
||||
%if %without bundled_libgit2
|
||||
%clear_dir vendor/libgit2-sys*/libgit2/
|
||||
%endif
|
||||
|
||||
%if %without bundled_oniguruma
|
||||
%clear_dir vendor/onig_sys*/oniguruma/
|
||||
%endif
|
||||
|
||||
%if %without bundled_sqlite3
|
||||
%clear_dir vendor/libsqlite3-sys*/sqlite3/
|
||||
%endif
|
||||
@ -741,7 +761,7 @@ sed -i.lzma -e '/LZMA_API_STATIC/d' src/bootstrap/src/core/build_steps/tool.rs
|
||||
%if %{without bundled_llvm} && %{with llvm_static}
|
||||
# Static linking to distro LLVM needs to add -lffi
|
||||
# https://github.com/rust-lang/rust/issues/34486
|
||||
sed -i.ffi -e '$a #[link(name = "ffi")] extern {}' \
|
||||
sed -i.ffi -e '$a #[link(name = "ffi")] extern "C" {}' \
|
||||
compiler/rustc_llvm/src/lib.rs
|
||||
%endif
|
||||
|
||||
@ -779,7 +799,6 @@ end}
|
||||
%global rust_env %{shrink:
|
||||
%{?rustflags:RUSTFLAGS="%{rustflags}"}
|
||||
%{rustc_target_cpus}
|
||||
%{!?with_bundled_oniguruma:RUSTONIG_SYSTEM_LIBONIG=1}
|
||||
%{!?with_bundled_sqlite3:LIBSQLITE3_SYS_USE_PKG_CONFIG=1}
|
||||
%{!?with_disabled_libssh2:LIBSSH2_SYS_USE_PKG_CONFIG=1}
|
||||
%{?llvm_path:PATH="%{llvm_path}:$PATH"}
|
||||
@ -825,10 +844,19 @@ end}
|
||||
|
||||
%if %defined wasm_targets
|
||||
%if %with bundled_wasi_libc
|
||||
%define wasi_libc_flags MALLOC_IMPL=emmalloc CC=clang AR=llvm-ar NM=llvm-nm
|
||||
%make_build --quiet -C %{wasi_libc_dir} %{wasi_libc_flags} TARGET_TRIPLE=wasm32-wasip1
|
||||
# Note that we don't want host CFLAGS here!
|
||||
env -u CFLAGS %__cmake \
|
||||
-S "%{wasi_libc_dir}" \
|
||||
-B "%{wasi_libc_dir}/%{__cmake_builddir}" \
|
||||
-DCMAKE_C_COMPILER=clang \
|
||||
-DCMAKE_C_FLAGS_RELEASE="-O2 -fstack-protector" \
|
||||
-DCMAKE_TRY_COMPILE_TARGET_TYPE=STATIC_LIBRARY \
|
||||
-DBUILD_SHARED=OFF \
|
||||
-DMALLOC=emmalloc \
|
||||
-DTARGET_TRIPLE=wasm32-wasip1
|
||||
%__cmake --build "%{wasi_libc_dir}/%{__cmake_builddir}" %{?_smp_mflags}
|
||||
%define wasm_target_config %{shrink:
|
||||
--set target.wasm32-wasip1.wasi-root=%{wasi_libc_dir}/sysroot
|
||||
--set target.wasm32-wasip1.wasi-root=%{wasi_libc_dir}/%{__cmake_builddir}/sysroot
|
||||
}
|
||||
%else
|
||||
%define wasm_target_config %{shrink:
|
||||
@ -838,11 +866,14 @@ end}
|
||||
%endif
|
||||
%endif
|
||||
|
||||
# Find the compiler-rt library for the Rust profiler_builtins crate.
|
||||
# Find the compiler-rt library for the Rust profiler_builtins and optimized-builtins crates.
|
||||
%define clang_lib %{expand:%%clang%{?llvm_compat_version}_resource_dir}/lib
|
||||
%define profiler %{clang_lib}/%{_arch}-redhat-linux-gnu/libclang_rt.profile.a
|
||||
test -r "%{profiler}"
|
||||
|
||||
%define optimized_builtins %{clang_lib}/%{_arch}-redhat-linux-gnu/libclang_rt.builtins.a
|
||||
test -r "%{optimized_builtins}"
|
||||
|
||||
%configure --disable-option-checking \
|
||||
--docdir=%{_pkgdocdir} \
|
||||
--libdir=%{common_libdir} \
|
||||
@ -853,6 +884,7 @@ test -r "%{profiler}"
|
||||
--set target.%{rust_triple}.ar=%{__ar} \
|
||||
--set target.%{rust_triple}.ranlib=%{__ranlib} \
|
||||
--set target.%{rust_triple}.profiler="%{profiler}" \
|
||||
--set target.%{rust_triple}.optimized-compiler-builtins="%{optimized_builtins}" \
|
||||
%{?mingw_target_config} \
|
||||
%{?wasm_target_config} \
|
||||
--python=%{__python3} \
|
||||
@ -873,8 +905,10 @@ test -r "%{profiler}"
|
||||
--set build.test-stage=2 \
|
||||
--set build.optimized-compiler-builtins=false \
|
||||
--set rust.llvm-tools=false \
|
||||
--set rust.verify-llvm-ir=true \
|
||||
--set rust.remap-debuginfo=false \
|
||||
--enable-extended \
|
||||
--tools=cargo,clippy,rust-analyzer,rustfmt,src \
|
||||
--tools=cargo,clippy,rust-analyzer,rustdoc,rustfmt,src \
|
||||
--enable-vendor \
|
||||
--enable-verbose-tests \
|
||||
--release-channel=%{channel} \
|
||||
@ -882,11 +916,7 @@ test -r "%{profiler}"
|
||||
|
||||
%global __x %{__python3} ./x.py
|
||||
|
||||
# - rustc is exibiting signs of miscompilation on pwr9+pgo (root cause TBD),
|
||||
# so we're skipping pgo on rhel ppc64le for now. See RHEL-88598 for more.
|
||||
# - Since 1.87, Fedora started getting ppc64le segfaults, and this also seems
|
||||
# to be avoidable by skipping pgo. See bz2367960 for examples of that.
|
||||
%if %{with rustc_pgo} && !( "%{_target_cpu}" == "ppc64le" )
|
||||
%if %{with rustc_pgo}
|
||||
# Build the compiler with profile instrumentation
|
||||
%define profraw $PWD/build/profiles
|
||||
%define profdata $PWD/build/rustc.profdata
|
||||
@ -1048,9 +1078,33 @@ rm -rf "$TMP_HELLO"
|
||||
%{__x} test --no-fail-fast --skip={src/bootstrap,tests/crashes} || :
|
||||
rm -rf "./build/%{rust_triple}/test/"
|
||||
|
||||
# Cargo tests skip list
|
||||
# Every test skipped here must have a documented reason to be skipped.
|
||||
# Duplicates are safe to add.
|
||||
|
||||
# This test relies on the DNS to fail to resolve the host. DNS is not enabled
|
||||
# in mock in koji so the DNS resolution doesn't take place to begin with.
|
||||
# We test this after packaging
|
||||
%global cargo_test_skip_list net_err_suggests_fetch_with_cli
|
||||
|
||||
# Requires access to index.crates.io but neither Fedora nor CentOS/RHEL builders
|
||||
# have DNS resolution, so the test will always fail.
|
||||
%global cargo_test_skip_list %{cargo_test_skip_list} publish_to_crates_io_warns
|
||||
|
||||
%ifarch aarch64
|
||||
# https://github.com/rust-lang/rust/issues/123733
|
||||
%define cargo_test_skip --test-args "--skip panic_abort_doc_tests"
|
||||
%global cargo_test_skip_list %{cargo_test_skip_list} panic_abort_doc_tests
|
||||
%endif
|
||||
%if %with disabled_libssh2
|
||||
# These tests need ssh - guaranteed to fail when libssh2 is disabled.
|
||||
%global cargo_test_skip_list %{shrink:
|
||||
%{cargo_test_skip_list}
|
||||
net_err_suggests_fetch_with_cli
|
||||
ssh_something_happens
|
||||
}
|
||||
%endif
|
||||
%if "%{cargo_test_skip_list}" != ""
|
||||
%define cargo_test_skip --test-args "%(printf -- '--skip %%s ' %{cargo_test_skip_list})"
|
||||
%endif
|
||||
%{__x} test --no-fail-fast cargo %{?cargo_test_skip} || :
|
||||
rm -rf "./build/%{rust_triple}/stage2-tools/%{rust_triple}/cit/"
|
||||
@ -1078,6 +1132,7 @@ rm -rf "./build/%{rust_triple}/stage2-tools/%{rust_triple}/cit/"
|
||||
%endif
|
||||
%license %{_pkgdocdir}/COPYRIGHT.html
|
||||
%license %{_pkgdocdir}/licenses/
|
||||
%exclude %{_sysconfdir}/target-spec-json-schema.json
|
||||
|
||||
|
||||
%files std-static
|
||||
@ -1085,18 +1140,20 @@ rm -rf "./build/%{rust_triple}/stage2-tools/%{rust_triple}/cit/"
|
||||
%dir %{rustlibdir}/%{rust_triple}
|
||||
%dir %{rustlibdir}/%{rust_triple}/lib
|
||||
%{rustlibdir}/%{rust_triple}/lib/*.rlib
|
||||
%{rustlibdir}/%{rust_triple}/lib/*.rmeta
|
||||
%{rustlibdir}/%{rust_triple}/lib/*.so
|
||||
%ifnarch %{bootstrap_arches}
|
||||
%license build/manifests/std/cargo-vendor.txt
|
||||
%endif
|
||||
%license %{_pkgdocdir}/COPYRIGHT-library.html
|
||||
|
||||
%global target_files() \
|
||||
%files std-static-%1 \
|
||||
%dir %{rustlibdir} \
|
||||
%dir %{rustlibdir}/%1 \
|
||||
%dir %{rustlibdir}/%1/lib \
|
||||
%{rustlibdir}/%1/lib/*.rlib
|
||||
%global target_files() \
|
||||
%files std-static-%1 \
|
||||
%dir %{rustlibdir} \
|
||||
%dir %{rustlibdir}/%1 \
|
||||
%dir %{rustlibdir}/%1/lib \
|
||||
%{rustlibdir}/%1/lib/*.rlib \
|
||||
%{rustlibdir}/%1/lib/*.rmeta
|
||||
|
||||
%if %target_enabled i686-pc-windows-gnu
|
||||
%target_files i686-pc-windows-gnu
|
||||
@ -1227,6 +1284,39 @@ rm -rf "./build/%{rust_triple}/stage2-tools/%{rust_triple}/cit/"
|
||||
|
||||
%changelog
|
||||
## START: Generated by rpmautospec
|
||||
* Tue Jul 21 2026 Paul Murphy <murp@redhat.com> - 1.97.1-1
|
||||
- Update to Rust 1.97.1
|
||||
|
||||
* Thu Jun 04 2026 Josh Stone <jistone@redhat.com> - 1.96.0-1
|
||||
- Update to Rust 1.96.0
|
||||
|
||||
* Tue Apr 28 2026 Paul Murphy <murp@redhat.com> - 1.95.0-1
|
||||
- Update to Rust 1.95.0
|
||||
|
||||
* Thu Apr 09 2026 Josh Stone <jistone@redhat.com> - 1.94.1-1
|
||||
- Update to Rust 1.94.1
|
||||
|
||||
* Mon Mar 02 2026 Paul Murphy <murp@redhat.com> - 1.93.0-1
|
||||
- Update to Rust 1.93.0
|
||||
|
||||
* Thu Jan 08 2026 Josh Stone <jistone@redhat.com> - 1.92.0-1
|
||||
- Update to Rust 1.92.0
|
||||
|
||||
* Thu Nov 06 2025 Paul Murphy <murp@redhat.com> - 1.91.0-1
|
||||
- Update to Rust 1.91.0
|
||||
|
||||
* Tue Sep 30 2025 Paul Murphy <murp@redhat.com> - 1.90.0-1
|
||||
- Update to Rust 1.90
|
||||
|
||||
* Mon Sep 15 2025 Jesus Checa Hidalgo <jchecahi@redhat.com> - 1.89.0-2
|
||||
- Add unicode exceptions (rpminspect) for rust 1.89 update
|
||||
|
||||
* Wed Sep 10 2025 Josh Stone <jistone@redhat.com> - 1.89.0-1
|
||||
- Update to Rust 1.89.0
|
||||
|
||||
* Wed Sep 10 2025 Josh Stone <jistone@redhat.com> - 1.88.0-2
|
||||
- Sync rust-toolset's rpm macros with RHEL 10
|
||||
|
||||
* Fri Jul 11 2025 Josh Stone <jistone@redhat.com> - 1.88.0-1
|
||||
- Update to Rust 1.88.0
|
||||
|
||||
|
||||
93
get-rust-bootstrap.sh
Executable file
93
get-rust-bootstrap.sh
Executable file
@ -0,0 +1,93 @@
|
||||
#!/usr/bin/env bash
|
||||
# Download the Rust bootstrap (stage0) tarballs listed by rust.spec, then push
|
||||
# them to the AlmaLinux sources cache and refresh .rust.metadata.
|
||||
#
|
||||
# ./get-rust-bootstrap.sh download + upload
|
||||
# ./get-rust-bootstrap.sh -l only print the URLs, do nothing
|
||||
# ./get-rust-bootstrap.sh -n download only, no upload
|
||||
#
|
||||
# Env overrides: ARCHES="x86_64 aarch64" JOBS=4 FORCE=1
|
||||
set -euo pipefail
|
||||
cd "$(dirname "$0")"
|
||||
|
||||
spec=SPECS/rust.spec
|
||||
outdir=SOURCES
|
||||
meta=.rust.metadata
|
||||
ignore=.gitignore
|
||||
mode=all
|
||||
|
||||
for a in "$@"; do
|
||||
case $a in
|
||||
-l) mode=list ;;
|
||||
-n) mode=download ;;
|
||||
-h|--help) sed -n '2,10p' "$0"; exit 0 ;;
|
||||
*) echo "unknown argument: $a" >&2; exit 1 ;;
|
||||
esac
|
||||
done
|
||||
|
||||
macro() { sed -n "s/^%global *$1 *//p" "$spec" | head -1; }
|
||||
channel=$(macro bootstrap_channel)
|
||||
bdate=$(macro bootstrap_date)
|
||||
arches=${ARCHES:-$(macro rust_arches)}
|
||||
[ -n "$channel" ] && [ -n "$bdate" ] || { echo "cannot read bootstrap macros from $spec" >&2; exit 1; }
|
||||
|
||||
triple() {
|
||||
case $1 in
|
||||
ppc64le) echo powerpc64le-unknown-linux-gnu ;;
|
||||
riscv64) echo riscv64gc-unknown-linux-gnu ;;
|
||||
armv7hl) echo armv7-unknown-linux-gnueabihf ;;
|
||||
*) echo "$1-unknown-linux-gnu" ;;
|
||||
esac
|
||||
}
|
||||
|
||||
base="https://static.rust-lang.org/dist/$bdate"
|
||||
urls=()
|
||||
for arch in $arches; do
|
||||
t=$(triple "$arch")
|
||||
for pkg in cargo rustc rust-std; do
|
||||
urls+=("$base/$pkg-$channel-$t.tar.xz" "$base/$pkg-$channel-$t.tar.xz.asc")
|
||||
done
|
||||
done
|
||||
|
||||
echo "# rust bootstrap $channel ($bdate), arches: $arches" >&2
|
||||
if [ "$mode" = list ]; then printf '%s\n' "${urls[@]}"; exit 0; fi
|
||||
|
||||
mkdir -p "$outdir"
|
||||
fetch() {
|
||||
f="${1##*/}"
|
||||
if [ -s "$2/$f" ] && [ -z "${FORCE:-}" ]; then echo "have $f"; return; fi
|
||||
curl -fsSL --retry 3 -o "$2/$f.part" "$1" && mv "$2/$f.part" "$2/$f" && echo "got $f"
|
||||
}
|
||||
export -f fetch
|
||||
printf '%s\n' "${urls[@]}" | xargs -P "${JOBS:-4}" -I{} bash -c 'fetch "$1" "$2"' _ {} "$outdir"
|
||||
|
||||
[ "$mode" = download ] && exit 0
|
||||
|
||||
# tarballs only -- the .asc signatures are tracked in git, not in the cache
|
||||
files=()
|
||||
for f in "$outdir"/*.tar.*; do
|
||||
case $f in *.asc) continue ;; esac
|
||||
[ -f "$f" ] && files+=("$f")
|
||||
done
|
||||
[ "${#files[@]}" -gt 0 ] || { echo "nothing to upload in $outdir/" >&2; exit 1; }
|
||||
|
||||
echo >&2
|
||||
echo "# uploading ${#files[@]} files to sources.almalinux.org" >&2
|
||||
printf ' %s\n' "${files[@]}" >&2
|
||||
alma_blob_upload -f "${files[@]}" -o "$meta" -a
|
||||
|
||||
# -a appends blindly, so a re-run would duplicate lines: keep the last per path
|
||||
awk '{ if (!($2 in seen)) order[++n] = $2; seen[$2] = $0 }
|
||||
END { for (i = 1; i <= n; i++) print seen[order[i]] }' "$meta" > "$meta.tmp" \
|
||||
&& mv "$meta.tmp" "$meta"
|
||||
echo "# $(wc -l < "$meta" | tr -d ' ') entries in $meta" >&2
|
||||
|
||||
# whatever went to the cache must stay out of git
|
||||
if [ -s "$ignore" ] && [ -n "$(tail -c1 "$ignore")" ]; then echo >> "$ignore"; fi
|
||||
added=0
|
||||
for f in "${files[@]}"; do
|
||||
grep -qxF "$f" "$ignore" 2>/dev/null && continue
|
||||
echo "$f" >> "$ignore"
|
||||
added=$((added + 1))
|
||||
done
|
||||
echo "# $added entries added to $ignore" >&2
|
||||
Loading…
Reference in New Issue
Block a user