rust: update to 1.75.0 (#19522)

This commit is contained in:
Philippe Renon
2023-12-30 06:08:39 +01:00
committed by GitHub
parent 4dc01cd535
commit 5ca2ae408e
3 changed files with 31 additions and 41 deletions

View File

@@ -55,8 +55,8 @@ diff -urN rustc-1.65.0-src.orig/compiler/rustc_target/src/spec/crt_objects.rs ru
pub(super) fn pre_wasi_self_contained() -> CrtObjects {
diff -urN rustc-1.65.0-src.orig/compiler/rustc_target/src/spec/i686_pc_windows_gnu.rs rustc-1.65.0-src/compiler/rustc_target/src/spec/i686_pc_windows_gnu.rs
--- rustc-1.65.0-src.orig/compiler/rustc_target/src/spec/i686_pc_windows_gnu.rs 2022-11-09 21:53:40.404728900 +0100
+++ rustc-1.65.0-src/compiler/rustc_target/src/spec/i686_pc_windows_gnu.rs 2022-11-09 22:07:46.188364200 +0100
--- rustc-1.65.0-src.orig/compiler/rustc_target/src/spec/targets/i686_pc_windows_gnu.rs 2022-11-09 21:53:40.404728900 +0100
+++ rustc-1.65.0-src/compiler/rustc_target/src/spec/targets/i686_pc_windows_gnu.rs 2022-11-09 22:07:46.188364200 +0100
@@ -5,7 +5,7 @@
base.cpu = "pentium4".into();
base.max_atomic_width = Some(64);
@@ -66,15 +66,13 @@ diff -urN rustc-1.65.0-src.orig/compiler/rustc_target/src/spec/i686_pc_windows_g
// Mark all dynamic libraries and executables as compatible with the larger 4GiB address
// space available to x86 Windows binaries on x86_64.
diff -urN rustc-1.66.0-src/compiler/rustc_target/src/spec/windows_gnu_base.rs.orig rustc-1.66.0-src/compiler/rustc_target/src/spec/windows_gnu_base.rs
--- rustc-1.66.0-src/compiler/rustc_target/src/spec/windows_gnu_base.rs.orig 2022-12-12 17:02:12.000000000 +0100
+++ rustc-1.66.0-src/compiler/rustc_target/src/spec/windows_gnu_base.rs 2022-12-16 19:16:58.493546900 +0100
@@ -24,31 +24,10 @@
],
);
$ diff -urN rustc-1.75.0-src/compiler/rustc_target/src/spec/base/windows_gnu.rs.orig rustc-1.75.0-src/compiler/rustc_target/src/spec/base/windows_gnu.rs
--- rustc-1.75.0-src/compiler/rustc_target/src/spec/base/windows_gnu.rs.orig 2023-12-21 17:55:28.000000000 +0100
+++ rustc-1.75.0-src/compiler/rustc_target/src/spec/base/windows_gnu.rs 2023-12-22 17:29:48.415890500 +0100
@@ -27,29 +27,14 @@
- // Order of `late_link_args*` was found through trial and error to work with various
- // mingw-w64 versions (not tested on the CI). It's expected to change from time to time.
// Order of `late_link_args*` was found through trial and error to work with various
// mingw-w64 versions (not tested on the CI). It's expected to change from time to time.
- let mingw_libs = &[
- "-lmsvcrt",
- "-lmingwex",
@@ -91,9 +89,10 @@ diff -urN rustc-1.66.0-src/compiler/rustc_target/src/spec/windows_gnu_base.rs.or
- "-luser32",
- "-lkernel32",
- ];
- let mut late_link_args =
- TargetOptions::link_args(LinkerFlavor::Gnu(Cc::No, Lld::No), mingw_libs);
- super::add_link_args(&mut late_link_args, LinkerFlavor::Gnu(Cc::Yes, Lld::No), mingw_libs);
+ let mingw_libs = &[];
let mut late_link_args =
TargetOptions::link_args(LinkerFlavor::Gnu(Cc::No, Lld::No), mingw_libs);
add_link_args(&mut late_link_args, LinkerFlavor::Gnu(Cc::Yes, Lld::No), mingw_libs);
// If any of our crates are dynamically linked then we need to use
// the shared libgcc_s-dw2-1.dll. This is required to support
// unwinding across DLL boundaries.
@@ -101,8 +100,8 @@ diff -urN rustc-1.66.0-src/compiler/rustc_target/src/spec/windows_gnu_base.rs.or
+ let dynamic_unwind_libs = &["-l:libunwind.dll.a"];
let mut late_link_args_dynamic =
TargetOptions::link_args(LinkerFlavor::Gnu(Cc::No, Lld::No), dynamic_unwind_libs);
super::add_link_args(
@@ -61,7 +40,7 @@
add_link_args(
@@ -62,7 +47,7 @@
// binaries to be redistributed without the libgcc_s-dw2-1.dll
// dependency, but unfortunately break unwinding across DLL
// boundaries when unwinding across FFI boundaries.
@@ -110,8 +109,8 @@ diff -urN rustc-1.66.0-src/compiler/rustc_target/src/spec/windows_gnu_base.rs.or
+ let static_unwind_libs = &["-l:libunwind.a"];
let mut late_link_args_static =
TargetOptions::link_args(LinkerFlavor::Gnu(Cc::No, Lld::No), static_unwind_libs);
super::add_link_args(
@@ -75,7 +54,8 @@
add_link_args(
@@ -76,7 +61,8 @@
env: "gnu".into(),
vendor: "pc".into(),
// FIXME(#13846) this should be enabled for windows
@@ -120,18 +119,10 @@ diff -urN rustc-1.66.0-src/compiler/rustc_target/src/spec/windows_gnu_base.rs.or
+ no_default_libraries: false,
linker: Some("gcc".into()),
dynamic_linking: true,
dll_prefix: "".into(),
@@ -90,7 +70,6 @@
pre_link_objects_self_contained: crt_objects::pre_mingw_self_contained(),
post_link_objects_self_contained: crt_objects::post_mingw_self_contained(),
link_self_contained: LinkSelfContainedDefault::Mingw,
- late_link_args,
late_link_args_dynamic,
late_link_args_static,
abi_return_struct_as_int: true,
dll_tls_export: false,
diff -urN rustc-1.65.0-src.orig/compiler/rustc_target/src/spec/x86_64_pc_windows_gnu.rs rustc-1.65.0-src/compiler/rustc_target/src/spec/x86_64_pc_windows_gnu.rs
--- rustc-1.65.0-src.orig/compiler/rustc_target/src/spec/x86_64_pc_windows_gnu.rs 2022-11-09 21:53:40.408733200 +0100
+++ rustc-1.65.0-src/compiler/rustc_target/src/spec/x86_64_pc_windows_gnu.rs 2022-11-09 22:07:46.192364800 +0100
--- rustc-1.65.0-src.orig/compiler/rustc_target/src/spec/targets/x86_64_pc_windows_gnu.rs 2022-11-09 21:53:40.408733200 +0100
+++ rustc-1.65.0-src/compiler/rustc_target/src/spec/targets/x86_64_pc_windows_gnu.rs 2022-11-09 22:07:46.192364800 +0100
@@ -7,7 +7,7 @@
base.add_pre_link_args(LinkerFlavor::Ld, &["-m", "i386pep", "--high-entropy-va"]);
base.add_pre_link_args(LinkerFlavor::Gcc, &["-m64", "-Wl,--high-entropy-va"]);

View File

@@ -1,13 +1,12 @@
--- rustc-1.72.0-src/compiler/rustc_codegen_ssa/src/back/link.rs.orig 2023-08-23 13:20:55.586469700 +0200
+++ rustc-1.72.0-src/compiler/rustc_codegen_ssa/src/back/link.rs 2023-08-23 13:33:55.439370400 +0200
@@ -1687,7 +1687,10 @@
--- rustc-1.75.0-src/compiler/rustc_codegen_ssa/src/back/link.rs.orig 2023-12-21 17:55:28.000000000 +0100
+++ rustc-1.75.0-src/compiler/rustc_codegen_ssa/src/back/link.rs 2023-12-22 13:17:31.361178700 +0100
@@ -1708,7 +1708,9 @@
/// Various toolchain components used during linking are used from rustc distribution
/// instead of being found somewhere on the host system.
/// We only provide such support for a very limited number of targets.
+#[allow(warnings)]
fn self_contained(sess: &Session, crate_type: CrateType) -> bool {
+ return false;
+
if let Some(self_contained) = sess.opts.cg.link_self_contained.explicitly_set {
if sess.target.link_self_contained == LinkSelfContainedDefault::False {
sess.emit_err(errors::UnsupportedLinkSelfContained);
fn self_contained_components(sess: &Session, crate_type: CrateType) -> LinkSelfContainedComponents {
+ return LinkSelfContainedComponents::empty();
// Turn the backwards compatible bool values for `self_contained` into fully inferred
// `LinkSelfContainedComponents`.
let self_contained =

View File

@@ -12,7 +12,7 @@ _realname=rust
pkgbase=mingw-w64-${_realname}
pkgname=("${MINGW_PACKAGE_PREFIX}-${_realname}"
"${MINGW_PACKAGE_PREFIX}-rust-docs")
pkgver=1.74.1
pkgver=1.75.0
pkgrel=1
pkgdesc="Systems programming language focused on safety, speed and concurrency (mingw-w64)"
arch=('any')
@@ -43,12 +43,12 @@ source=("https://static.rust-lang.org/dist/${_realname}c-${pkgver}-src.tar.gz"{,
"0008-disable-self-contained.patch"
"0011-disable-uac-for-installer.patch")
noextract=(${_realname}c-${pkgver}-src.tar.gz)
sha256sums=('67db3e22fc9921c885baae5953ba144fc474cde29ec69ab56d43ce764206231d'
sha256sums=('5b739f45bc9d341e2d1c570d65d2375591e22c2d23ef5b8a37711a0386abc088'
'SKIP'
'7cb1773c288ffb1c1e751edc49b1890c84bf9c362742bc5225d19d474edb73a0'
'7d1c4e49524b835a8eadc961b39f5594b12a522a1e24368999be2c7e85399e4e'
'3388c413fffeeaa84f775a176b1653b360ffba7b0c0a6f5baa0c3a95aec8827a'
'18cec22c596b0a30b96d0bcb078f2c1e5eaf995a002dbfdbe073ec1a2400dbb7'
'e60f5ef0d96502ae1e9348172d348b2ca20bde017e37a9ad6e9f5899872d02b7'
'7a3b5722ff576b0661f36796f088dee4ce318b5dbc3fdcd65b48972de68a0edf'
'e7c13f738c670f3d5ce1742eff71e15bb6675ebe86a58dee44d6a58541bdd5a8')
validpgpkeys=('108F66205EAEB0AAA8DD5E1C85AB96E6FA1BE5FE' # Rust Language (Tag and Release Signing Key) <rust-key@rust-lang.org>
'474E22316ABF4785A88C6E8EA2C794A986419D8A' # Tom Stellard <tstellar@redhat.com>