diff --git a/0003-Fix-profiler_builtins-build-script-to-handle-full-pa.patch b/0003-Fix-profiler_builtins-build-script-to-handle-full-pa.patch deleted file mode 100644 index 802fdcbc5199b224b612ac7e1a6cbf1e5b922942..0000000000000000000000000000000000000000 --- a/0003-Fix-profiler_builtins-build-script-to-handle-full-pa.patch +++ /dev/null @@ -1,42 +0,0 @@ -From dc0fbcab7e0673afe62b3e8e74905d9e5f5b74a4 Mon Sep 17 00:00:00 2001 -From: Jesus Checa Hidalgo -Date: Fri, 11 Apr 2025 16:57:38 +0200 -Subject: [PATCH] Fix profiler_builtins build script to handle full path to - profiler lib - -LLVM_PROFILER_RT_LIB may be set to an absolute path (e.g., in Fedora builds), -but `-l` expects a library name, not a path. After #138273, this caused builds -to fail with a "could not find native static library" error. - -This patch updates the build script to split the path into directory and -filename, using `cargo::rustc-link-search` for the directory and -`cargo::rustc-link-lib=+verbatim` for the file. This allows profiler_builtins to -correctly link the static library even when an absolute path is provided. ---- - library/profiler_builtins/build.rs | 10 ++++++++-- - 1 file changed, 8 insertions(+), 2 deletions(-) - -diff --git a/library/profiler_builtins/build.rs b/library/profiler_builtins/build.rs -index dd85239fa..fc1a9ecc1 100644 ---- a/library/profiler_builtins/build.rs -+++ b/library/profiler_builtins/build.rs -@@ -9,8 +9,14 @@ use std::path::PathBuf; - - fn main() { - if let Ok(rt) = tracked_env_var("LLVM_PROFILER_RT_LIB") { -- println!("cargo::rustc-link-lib=static:+verbatim={rt}"); -- return; -+ let rt = PathBuf::from(rt); -+ if let Some(lib) = rt.file_name() { -+ if let Some(dir) = rt.parent() { -+ println!("cargo::rustc-link-search=native={}", dir.display()); -+ } -+ println!("cargo::rustc-link-lib=static:+verbatim={}", lib.to_str().unwrap()); -+ return; -+ } - } - - let target_os = env::var("CARGO_CFG_TARGET_OS").expect("CARGO_CFG_TARGET_OS was not set"); --- -2.49.0 - diff --git a/rust-1.86.0-x86_64-unknown-linux-gnu.tar.xz b/rust-1.87.0-aarch64-unknown-linux-gnu.tar.xz similarity index 32% rename from rust-1.86.0-x86_64-unknown-linux-gnu.tar.xz rename to rust-1.87.0-aarch64-unknown-linux-gnu.tar.xz index d13ecd75ecbdb2d275eb3c4a5684621e7486db25..910db290b7f9f6cbf64b176b747f98df07481acb 100644 --- a/rust-1.86.0-x86_64-unknown-linux-gnu.tar.xz +++ b/rust-1.87.0-aarch64-unknown-linux-gnu.tar.xz @@ -1,3 +1,3 @@ version https://git-lfs.github.com/spec/v1 -oid sha256:6b448b3669e0c74f7f4b87da7da4868a552fcbba1f955032d8925ad2fffb3798 -size 192462932 +oid sha256:0bd04d32129f03465c1d2cae66f99d8c1c6d33c070b0e19b80a66b2b31ae6b9e +size 167259360 diff --git a/rust-1.86.0-aarch64-unknown-linux-gnu.tar.xz b/rust-1.87.0-loongarch64-unknown-linux-gnu.tar.xz similarity index 32% rename from rust-1.86.0-aarch64-unknown-linux-gnu.tar.xz rename to rust-1.87.0-loongarch64-unknown-linux-gnu.tar.xz index 53b236900a84d00d9f9b7c062f129e7e204db4c1..eccf1c2d9a10d7d7ca354b3abadaaa610941d914 100644 --- a/rust-1.86.0-aarch64-unknown-linux-gnu.tar.xz +++ b/rust-1.87.0-loongarch64-unknown-linux-gnu.tar.xz @@ -1,3 +1,3 @@ version https://git-lfs.github.com/spec/v1 -oid sha256:2b97d1e09a1d7fdbed748332879318ee7f41c008837f87ccb44ec045df0a8a1b -size 161478048 +oid sha256:28c9fac570b64f135d1901acceb94cf95eb842ab827e253d14ea60e6745f9d7d +size 261506320 diff --git a/rust-1.86.0-loongarch64-unknown-linux-gnu.tar.xz b/rust-1.87.0-riscv64gc-unknown-linux-gnu.tar.xz similarity index 32% rename from rust-1.86.0-loongarch64-unknown-linux-gnu.tar.xz rename to rust-1.87.0-riscv64gc-unknown-linux-gnu.tar.xz index ffb8edb26dc9f6320f571f77f3fc8fed4a6c5a3e..d246419d0157707874573fe154688f794d29da57 100644 --- a/rust-1.86.0-loongarch64-unknown-linux-gnu.tar.xz +++ b/rust-1.87.0-riscv64gc-unknown-linux-gnu.tar.xz @@ -1,3 +1,3 @@ version https://git-lfs.github.com/spec/v1 -oid sha256:7afcf30876a379f74a1dc26b50dbea5afb0a2d8735a38b12f10f9e8a6d76b8d1 -size 251731380 +oid sha256:c00530599eb2440856129569164471426c2e6ae8f8a8f7047a75f63284d15590 +size 250242712 diff --git a/rust-1.86.0-riscv64gc-unknown-linux-gnu.tar.xz b/rust-1.87.0-x86_64-unknown-linux-gnu.tar.xz similarity index 32% rename from rust-1.86.0-riscv64gc-unknown-linux-gnu.tar.xz rename to rust-1.87.0-x86_64-unknown-linux-gnu.tar.xz index 3eee451f340b0d3d9812ce28e3218fa304759412..9e974026462ef578fb19c4b9a944c532eca380a9 100644 --- a/rust-1.86.0-riscv64gc-unknown-linux-gnu.tar.xz +++ b/rust-1.87.0-x86_64-unknown-linux-gnu.tar.xz @@ -1,3 +1,3 @@ version https://git-lfs.github.com/spec/v1 -oid sha256:bd968612d77de0d2bb4ec4d33f4aa105c5cdc44eca8deabfe2d8cae2a0ffbe18 -size 238802100 +oid sha256:9720bf4ffdd5e6112f8fc93a645d50bfdc64f95cb76d41561be196e1721b4b69 +size 198639092 diff --git a/rust.spec b/rust.spec index 2534ffb362468915bbeb9d7303357491795f470a..3fda1c40b2815951f3273f42f07de0d6ed534925 100644 --- a/rust.spec +++ b/rust.spec @@ -1,8 +1,8 @@ %define _lto_cflags %{nil} -%global bootstrap_rust 1.86.0 -%global bootstrap_cargo 1.86.0 -%global bootstrap_channel 1.86.0 -%global bootstrap_date 2025-04-03 +%global bootstrap_rust 1.87.0 +%global bootstrap_cargo 1.87.0 +%global bootstrap_channel 1.87.0 +%global bootstrap_date 2025-05-15 %global bootstrap_arches x86_64 aarch64 riscv64 loongarch64 %bcond_with llvm_static %ifarch x86_64 aarch64 riscv64 @@ -26,8 +26,8 @@ %endif Name: rust -Version: 1.87.0 -Release: 2 +Version: 1.88.0 +Release: 1 Summary: The Rust Programming Language License: Apache-2.0 OR MIT URL: https://www.rust-lang.org @@ -39,14 +39,12 @@ Source3: cargo-config Source4: cargo-config.sh Source5: cargo-config.csh -Patch0000: rustc-1.86.0-disable-libssh2.patch +Patch0000: rustc-1.88.0-disable-libssh2.patch # By default, rust tries to use "rust-lld" as a linker for some targets. Patch0001: 0001-Use-lld-provided-by-system.patch # Set a substitute-path in rust-gdb for standard library sources. Patch0002: rustc-1.70.0-rust-gdb-substitute-path.patch -# https://github.com/rust-lang/rust/pull/139677 from 1.88 -Patch0003: 0003-Fix-profiler_builtins-build-script-to-handle-full-pa.patch -Patch0004: 0001-add-support-for-ppc64le.patch +Patch0003: 0001-add-support-for-ppc64le.patch %{lua: function rust_triple(arch) local abi = "gnu" @@ -123,28 +121,30 @@ BuildRequires: cmake >= 3.5.1 %if %defined llvm %global llvm_root %{_libdir}/%{llvm} %else -%ifarch x86_64 aarch64 riscv64 -%global llvm llvm-toolset-18-llvm -%global llvm_root /opt/%{_vendor}/llvm-toolset-18/root%{_prefix} -%global clang_maj_ver 18 +%ifarch x86_64 aarch64 riscv64 loongarch64 +%global llvm_toolset llvm-toolset-19 +%global llvm %{llvm_toolset}-llvm +%global llvm_root /opt/%{_vendor}/%{llvm_toolset}/root%{_prefix} +%global clang_maj_ver %(echo "%{llvm_toolset}" | cut -d '-' -f3) %else %global llvm llvm %global llvm_root %{_prefix} %global clang_maj_ver 17 %endif %endif -# Minimum external LLVM for rust 1.82 -BuildRequires: %{llvm} >= 17.0.0 -BuildRequires: %{llvm}-devel >= 17.0.0 +# Minimum external LLVM for rust 1.88 +# https://github.com/rust-lang/rust/pull/139275 +BuildRequires: %{llvm} >= 19.0.0 +BuildRequires: %{llvm}-devel >= 19.0.0 %if %with llvm_static BuildRequires: %{llvm}-static libffi-devel %endif %endif BuildRequires: procps-ng BuildRequires: ninja-build -%ifarch x86_64 aarch64 riscv64 -BuildRequires: llvm-toolset-18-compiler-rt -BuildRequires: llvm-toolset-18-clang +%ifarch x86_64 aarch64 riscv64 loongarch64 +BuildRequires: %{llvm_toolset}-compiler-rt +BuildRequires: %{llvm_toolset}-clang %else BuildRequires: compiler-rt BuildRequires: clang @@ -293,7 +293,6 @@ sed -i.try-python -e '/^try python3 /i try "%{python}" "$@"' ./configure %patch -P 0001 -p1 %patch -P 0002 -p1 %patch -P 0003 -p1 -%patch -P 0004 -p1 rm -rf vendor/curl-sys*/curl/ rm -rf vendor/jemalloc-sys/jemalloc/ rm -rf vendor/libffi-sys*/libffi/ @@ -558,6 +557,9 @@ export %{rust_env} %{_mandir}/man1/cargo*.1* %changelog +* Wed Jul 09 2025 wangkai <13474090681@163.com> - 1.88.0-1 +- Update to 1.88.0 + * Wed Jun 11 2025 Peng Haitao - 1.87.0-2 - Modify openEuler to %{vendor} diff --git a/rustc-1.87.0-src.tar.xz b/rustc-1.87.0-src.tar.xz deleted file mode 100644 index 296a81eb622414b597383beed538f998807c2cc3..0000000000000000000000000000000000000000 --- a/rustc-1.87.0-src.tar.xz +++ /dev/null @@ -1,3 +0,0 @@ -version https://git-lfs.github.com/spec/v1 -oid sha256:8623b8651893e8c6aebfa45b6a90645a4f652f7b18189a0992a90d11ac2631f4 -size 283604208 diff --git a/rustc-1.87.0-src.tar.xz.asc b/rustc-1.87.0-src.tar.xz.asc deleted file mode 100644 index 2cb8bf1563eb6b216082f64a7a98d9faa3b52fb2..0000000000000000000000000000000000000000 --- a/rustc-1.87.0-src.tar.xz.asc +++ /dev/null @@ -1,16 +0,0 @@ ------BEGIN PGP SIGNATURE----- - -wsFcBAABCgAQBQJoJh8yCRCFq5bm+hvl/gAASMcP/0t0ONXTsRCaTLHlCSFTr7IG -easwqKXRUj46Z9L6v3K+g2NBOCr0GAbFJdY5EnspNR0pTSymTOmdygq1RQ6O4Zay -bGGsC5J3yujqJnY2oCTPdWJs5VOE7351QmfpxyTWQDG8smK7cfeQUdsKvMC6dWn7 -Uht8S4DFIfAgX/+B+yd/YyyPyDICdNUIPXakczytuko4SGsG78RqwGZr1+TgjdMb -rUarUyx8Ft60dHZ+3RRAD6dBNcT3r07n3AFr9Ch/yTcbnpy8z9RMN5WMqHGk5H0P -MGQETVNZ+V1Fg1OTmmyeBln66+8kYTYdGfkRgQ2opn1jn6/aEkBcvMp/A/J6UB23 -NNVH/ylguOTQ/EM5LMiuH7fmkStr724x5LZZ+evZkJqqScxM2A8clEEE+hgqxXFS -uzCNXU7ZqG9feLnjD2e1+jOCbCpFWVIiNAMFyGQP+vM4sRks6X7MNDHMQXOZPOcu -4AOajldgovdxbGuLS9onkK4Wcenc9Z8Y6rhwA7ElX3i3Od+8ySXDKhR0Fy2vLjeO -8OyYaXLxRrCBftGpnFM3iou5q9HdEVh+LjtFHDj19wRU4PVSVQegIhA4xxYSq5gJ -WHBffhHZa3FppZoU/0TPGoAHBMi35k+2Kci8VtG2uduZ0sHfPH5e0KXU2JxnOWnH -ukYbzoQc0YnmcD/ucP2r -=u9gN ------END PGP SIGNATURE----- diff --git a/rustc-1.86.0-disable-libssh2.patch b/rustc-1.88.0-disable-libssh2.patch similarity index 53% rename from rustc-1.86.0-disable-libssh2.patch rename to rustc-1.88.0-disable-libssh2.patch index 8b07bde4bf4155cce6ace3d96afafe3342857bc0..bf39d35d114119feadc501010ccd0ea8c223fe88 100644 --- a/rustc-1.86.0-disable-libssh2.patch +++ b/rustc-1.88.0-disable-libssh2.patch @@ -1,7 +1,7 @@ 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-03-11 15:36:38.387335541 -0700 -+++ rustc-beta-src/src/tools/cargo/Cargo.lock 2025-03-11 15:39:27.491711044 -0700 -@@ -2528,7 +2528,6 @@ checksum = "e1a117465e7e1597e8febea8bb0c +--- 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", @@ -9,7 +9,7 @@ diff -up rustc-beta-src/src/tools/cargo/Cargo.lock.orig rustc-beta-src/src/tools "libz-sys", "openssl-sys", "pkg-config", -@@ -2574,20 +2573,6 @@ dependencies = [ +@@ -2576,20 +2575,6 @@ dependencies = [ "pkg-config", "vcpkg", ] @@ -29,16 +29,16 @@ diff -up rustc-beta-src/src/tools/cargo/Cargo.lock.orig rustc-beta-src/src/tools -] [[package]] - name = "libz-sys" + 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-03-11 15:36:38.389045348 -0700 -+++ rustc-beta-src/src/tools/cargo/Cargo.toml 2025-03-11 15:38:36.948228456 -0700 -@@ -47,7 +47,7 @@ curl = "0.4.47" +--- 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.0.35", default-features = false, features = ["zlib"] } + 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" - gix = { version = "0.70.0", default-features = false, features = ["blocking-http-transport-curl", "progress-tree", "parallel", "dirwalk"] } - glob = "0.3.2" + # 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"] } diff --git a/rustc-1.88.0-src.tar.xz b/rustc-1.88.0-src.tar.xz new file mode 100644 index 0000000000000000000000000000000000000000..6cb272db4c2da39d5c5ee66e2478ab72da69c2ea --- /dev/null +++ b/rustc-1.88.0-src.tar.xz @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:0c1dcbb4f762513d021e1a282c0ac58c0a423642b3a6bf581cafb5414df4193e +size 283294344 diff --git a/rustc-1.88.0-src.tar.xz.asc b/rustc-1.88.0-src.tar.xz.asc new file mode 100644 index 0000000000000000000000000000000000000000..107eb94f07dcc7c64ba234203e1d223aff1af869 --- /dev/null +++ b/rustc-1.88.0-src.tar.xz.asc @@ -0,0 +1,16 @@ +-----BEGIN PGP SIGNATURE----- + +wsFcBAABCgAQBQJoXYfjCRCFq5bm+hvl/gAAcC4P/0fV1Eg92tJyudEcsWBYkdX4 +9rOXZvbHxmzQK+DBjvtfPMLU/WBOIcGGaWjXMEKnII7kQXZNi3TIwmmZ13Y23sar +XrDaHJyYQZJIUEdxNGAbRCQzKHdDDh711gc7M4NOmIIOsUVj8rmL+mxvHs4Mxqco +7mFB9s8E+JA+RPi5g+gTJiFvVCs50LggB5iNRL/mGkjw+zQ9Qge3qWSHCm0dG4Ws +mzaal46ozH1LLBjVLX1O3a487HNIdP3JoSZMy/Sxn8ev3cDZNxOtG08cjjHckbLG +ToPq4FwwL/EsnzPpwRNhDsLQ9z8gV37Zg0rGvxrmFEgdh9UUlOaEmsrz0HNbjHPD +TAIBX0zsD1nXY4Yh9A3KqM9t60O1+ichhn5N8hAQU4yhMedRa3JAuMZl+j/a6HLz +O+E4+CruB9A9DK+apNqj8hYeiPnPPd9Zou/31HrZj/826YqwoPmOR6Drn25UU6Ps +lXTzyeIhcI5et6NJ1Od+tjNyhwuzNCxp2cn8X/CETlOQ1aFGxi8rOUimkuM3RetG +GQhA39ZxwosQJZMPg2SZegVT/DkenWL1ui4Qv5IcdUGb0dj5wR5m7tlXd6u1Kqx0 +TfxxdkjA0rk/GPIf5EO8aJEjWlQl2YDSvvLZh74klYnBc6dYZzg09JXSX0CDztVf +xgmBaId7hktOVTR9kLZ6 +=JaqZ +-----END PGP SIGNATURE-----