pkgsrc-WIP-changes archive

[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index][Old Index]

rust: update to version 1.58.1.



Module Name:	pkgsrc-wip
Committed By:	Havard Eidnes <he%NetBSD.org@localhost>
Pushed By:	he
Date:		Sat Jan 22 09:30:12 2022 +0000
Changeset:	6c690385134eee8a2b6e8e96cfa514de85d2603b

Modified Files:
	rust/Makefile
	rust/distinfo
	rust/options.mk
	rust/patches/patch-compiler_rustc__codegen__ssa_src_back_linker.rs
	rust/patches/patch-compiler_rustc__llvm_build.rs
	rust/patches/patch-src_bootstrap_bootstrap.py

Log Message:
rust: update to version 1.58.1.

Pkgsrc changes:
 * Bump available bootstraps to 1.57.0.
 * For some reason, the vendor/libc checksums don't need fixing.
 * Bump required external LLVM to 12.0, according to upstream change log.
 * Adapt the Darwin linker patch.

(For some reason I've not figured out yet, cargo is a lot more
verbose while building, echoes the rustc invocation.)

Upstream changes:

Version 1.58.1 (2022-01-19)
===========================

* Fix race condition in `std::fs::remove_dir_all` ([CVE-2022-21658])
* [Handle captured arguments in the `useless_format` Clippy lint][clippy/8295]
* [Move `non_send_fields_in_send_ty` Clippy lint to nursery][clippy/8075]
* [Fix wrong error message displayed when some imports are missing][91254]
* [Fix rustfmt not formatting generated files from stdin][92912]

[CVE-2022-21658]: https://www.cve.org/CVERecord?id=CVE-2022-21658]
[91254]: https://github.com/rust-lang/rust/pull/91254
[92912]: https://github.com/rust-lang/rust/pull/92912
[clippy/8075]: https://github.com/rust-lang/rust-clippy/pull/8075
[clippy/8295]: https://github.com/rust-lang/rust-clippy/pull/8295

Version 1.58.0 (2022-01-13)
==========================

Language
--------

- [Format strings can now capture arguments simply by writing
  `{ident}` in the string.][90473] This works in all macros accepting
  format strings. Support for this in `panic!` (`panic!("{ident}")`)
  requires the 2021 edition; panic invocations in previous editions
  that appear to be trying to use this will result in a warning lint
  about not having the intended effect.
- [`*const T` pointers can now be dereferenced in const contexts.][89551]
- [The rules for when a generic struct implements `Unsize` have
  been relaxed.][90417]

Compiler
--------

- [Add LLVM CFI support to the Rust compiler][89652]
- [Stabilize -Z strip as -C strip][90058]. Note that while release
  builds already don't add debug symbols for the code you compile,
  the compiled standard library that ships with Rust includes debug
  symbols, so you may want to use the `strip` option to remove these
  symbols to produce smaller release binaries. Note that this release
  only includes support in rustc, not directly in cargo.
- [Add support for LLVM coverage mapping format versions 5 and 6][91207]
- [Emit LLVM optimization remarks when enabled with `-Cremark`][90833]
- [Update the minimum external LLVM to 12][90175]
- [Add `x86_64-unknown-none` at Tier 3*][89062]
- [Build musl dist artifacts with debuginfo enabled][90733]. When
  building release binaries using musl, you may want to use the newly
  stabilized strip option to remove these debug symbols, reducing
  the size of your binaries.
- [Don't abort compilation after giving a lint error][87337]
- [Error messages point at the source of trait bound obligations
  in more places][89580]

\* Refer to Rust's [platform support page][platform-support-doc] for more
   information on Rust's tiered platform support.

Libraries
---------

- [All remaining functions in the standard library have `#[must_use]`
  annotations where appropriate][89692], producing a warning when
  ignoring their return value. This helps catch mistakes such as
  expecting a function to mutate a value in place rather than return
  a new value.
- [Paths are automatically canonicalized on Windows for operations
  that support it][89174]
- [Re-enable debug checks for `copy` and `copy_nonoverlapping`][90041]
- [Implement `RefUnwindSafe` for `Rc<T>`][87467]
- [Make RSplit<T, P>: Clone not require T: Clone][90117]
- [Implement `Termination` for `Result<Infallible, E>`][88601].
  This allows writing `fn main() -> Result<Infallible, ErrorType>`,
  for a program whose successful exits never involve returning from
  `main` (for instance, a program that calls `exit`, or that uses
  `exec` to run another program).

Stabilized APIs
---------------

- [`Metadata::is_symlink`]
- [`Path::is_symlink`]
- [`{integer}::saturating_div`]
- [`Option::unwrap_unchecked`]
- [`Result::unwrap_unchecked`]
- [`Result::unwrap_err_unchecked`]
- [`NonZero{unsigned}::is_power_of_two`]
- [`File::options`]

These APIs are now usable in const contexts:

- [`Duration::new`]
- [`Duration::checked_add`]
- [`Duration::saturating_add`]
- [`Duration::checked_sub`]
- [`Duration::saturating_sub`]
- [`Duration::checked_mul`]
- [`Duration::saturating_mul`]
- [`Duration::checked_div`]
- [`MaybeUninit::as_ptr`]
- [`MaybeUninit::as_mut_ptr`]
- [`MaybeUninit::assume_init`]
- [`MaybeUninit::assume_init_ref`]

Cargo
-----

- [Add --message-format for install command][cargo/10107]
- [Warn when alias shadows external subcommand][cargo/10082]

Rustdoc
-------

- [Show all Deref implementations recursively in rustdoc][90183]
- [Use computed visibility in rustdoc][88447]

Compatibility Notes
-------------------

- [Try all stable method candidates first before trying unstable
  ones][90329]. This change ensures that adding new nightly-only
  methods to the Rust standard library will not break code invoking
  methods of the same name from traits outside the standard library.
- Windows: [`std::process::Command` will no longer search the
  current directory for executables.][87704]
- [All proc-macro backward-compatibility lints are now deny-by-default.][88041]
- [proc_macro: Append .0 to unsuffixed float if it would otherwise
  become int token][90297]
- [Refactor weak symbols in std::sys::unix][90846]. This optimizes
  accesses to glibc functions, by avoiding the use of dlopen. This
  does not increase the [minimum expected version of
  glibc](https://doc.rust-lang.org/nightly/rustc/platform-support.html).
  However, software distributions that use symbol versions to detect
  library dependencies, and which take weak symbols into account in
  that analysis, may detect rust binaries as requiring newer versions
  of glibc.
- [rustdoc now rejects some unexpected semicolons in doctests][91026]

Internal Changes
----------------

These changes provide no direct user facing benefits, but represent
significant improvements to the internals and overall performance
of rustc and related tools.

- [Implement coherence checks for negative trait impls][90104]
- [Add rustc lint, warning when iterating over hashmaps][89558]
- [Optimize live point computation][90491]
- [Enable verification for 1/32nd of queries loaded from disk][90361]
- [Implement version of normalize_erasing_regions that allows for
  normalization failure][91255]

[87337]: https://github.com/rust-lang/rust/pull/87337/
[87467]: https://github.com/rust-lang/rust/pull/87467/
[87704]: https://github.com/rust-lang/rust/pull/87704/
[88041]: https://github.com/rust-lang/rust/pull/88041/
[88300]: https://github.com/rust-lang/rust/pull/88300/
[88447]: https://github.com/rust-lang/rust/pull/88447/
[88601]: https://github.com/rust-lang/rust/pull/88601/
[88624]: https://github.com/rust-lang/rust/pull/88624/
[89062]: https://github.com/rust-lang/rust/pull/89062/
[89174]: https://github.com/rust-lang/rust/pull/89174/
[89542]: https://github.com/rust-lang/rust/pull/89542/
[89551]: https://github.com/rust-lang/rust/pull/89551/
[89558]: https://github.com/rust-lang/rust/pull/89558/
[89580]: https://github.com/rust-lang/rust/pull/89580/
[89652]: https://github.com/rust-lang/rust/pull/89652/
[89677]: https://github.com/rust-lang/rust/pull/89677/
[89951]: https://github.com/rust-lang/rust/pull/89951/
[90041]: https://github.com/rust-lang/rust/pull/90041/
[90058]: https://github.com/rust-lang/rust/pull/90058/
[90104]: https://github.com/rust-lang/rust/pull/90104/
[90117]: https://github.com/rust-lang/rust/pull/90117/
[90175]: https://github.com/rust-lang/rust/pull/90175/
[90183]: https://github.com/rust-lang/rust/pull/90183/
[90297]: https://github.com/rust-lang/rust/pull/90297/
[90329]: https://github.com/rust-lang/rust/pull/90329/
[90361]: https://github.com/rust-lang/rust/pull/90361/
[90417]: https://github.com/rust-lang/rust/pull/90417/
[90473]: https://github.com/rust-lang/rust/pull/90473/
[90491]: https://github.com/rust-lang/rust/pull/90491/
[90733]: https://github.com/rust-lang/rust/pull/90733/
[90833]: https://github.com/rust-lang/rust/pull/90833/
[90846]: https://github.com/rust-lang/rust/pull/90846/
[90896]: https://github.com/rust-lang/rust/pull/90896/
[91026]: https://github.com/rust-lang/rust/pull/91026/
[91207]: https://github.com/rust-lang/rust/pull/91207/
[91255]: https://github.com/rust-lang/rust/pull/91255/
[91301]: https://github.com/rust-lang/rust/pull/91301/
[cargo/10082]: https://github.com/rust-lang/cargo/pull/10082/
[cargo/10107]: https://github.com/rust-lang/cargo/pull/10107/
[`Metadata::is_symlink`]: https://doc.rust-lang.org/stable/std/fs/struct.Metadata.html#method.is_symlink
[`Path::is_symlink`]: https://doc.rust-lang.org/stable/std/path/struct.Path.html#method.is_symlink
[`{integer}::saturating_div`]: https://doc.rust-lang.org/stable/std/primitive.i8.html#method.saturating_div
[`Option::unwrap_unchecked`]: https://doc.rust-lang.org/stable/std/option/enum.Option.html#method.unwrap_unchecked
[`Result::unwrap_unchecked`]: https://doc.rust-lang.org/stable/std/result/enum.Result.html#method.unwrap_unchecked
[`Result::unwrap_err_unchecked`]: https://doc.rust-lang.org/stable/std/result/enum.Result.html#method.unwrap_err_unchecked
[`NonZero{unsigned}::is_power_of_two`]: https://doc.rust-lang.org/stable/std/num/struct.NonZeroU8.html#method.is_power_of_two
[`File::options`]: https://doc.rust-lang.org/stable/std/fs/struct.File.html#method.options
[`unix::process::ExitStatusExt::core_dumped`]: https://doc.rust-lang.org/stable/std/os/unix/process/trait.ExitStatusExt.html#tymethod.core_dumped
[`unix::process::ExitStatusExt::stopped_signal`]: https://doc.rust-lang.org/stable/std/os/unix/process/trait.ExitStatusExt.html#tymethod.stopped_signal
[`unix::process::ExitStatusExt::continued`]: https://doc.rust-lang.org/stable/std/os/unix/process/trait.ExitStatusExt.html#tymethod.continued
[`unix::process::ExitStatusExt::into_raw`]: https://doc.rust-lang.org/stable/std/os/unix/process/trait.ExitStatusExt.html#tymethod.into_raw
[`Duration::new`]: https://doc.rust-lang.org/stable/std/time/struct.Duration.html#method.new
[`Duration::checked_add`]: https://doc.rust-lang.org/stable/std/time/struct.Duration.html#method.checked_add
[`Duration::saturating_add`]: https://doc.rust-lang.org/stable/std/time/struct.Duration.html#method.saturating_add
[`Duration::checked_sub`]: https://doc.rust-lang.org/stable/std/time/struct.Duration.html#method.checked_sub
[`Duration::saturating_sub`]: https://doc.rust-lang.org/stable/std/time/struct.Duration.html#method.saturating_sub
[`Duration::checked_mul`]: https://doc.rust-lang.org/stable/std/time/struct.Duration.html#method.checked_mul
[`Duration::saturating_mul`]: https://doc.rust-lang.org/stable/std/time/struct.Duration.html#method.saturating_mul
[`Duration::checked_div`]: https://doc.rust-lang.org/stable/std/time/struct.Duration.html#method.checked_div
[`Duration::as_secs_f64`]: https://doc.rust-lang.org/stable/std/time/struct.Duration.html#method.as_secs_f64
[`Duration::as_secs_f32`]: https://doc.rust-lang.org/stable/std/time/struct.Duration.html#method.as_secs_f32
[`Duration::from_secs_f64`]: https://doc.rust-lang.org/stable/std/time/struct.Duration.html#method.from_secs_f64
[`Duration::from_secs_f32`]: https://doc.rust-lang.org/stable/std/time/struct.Duration.html#method.from_secs_f32
[`Duration::mul_f64`]: https://doc.rust-lang.org/stable/std/time/struct.Duration.html#method.mul_f64
[`Duration::mul_f32`]: https://doc.rust-lang.org/stable/std/time/struct.Duration.html#method.mul_f32
[`Duration::div_f64`]: https://doc.rust-lang.org/stable/std/time/struct.Duration.html#method.div_f64
[`Duration::div_f32`]: https://doc.rust-lang.org/stable/std/time/struct.Duration.html#method.div_f32
[`Duration::div_duration_f64`]: https://doc.rust-lang.org/stable/std/time/struct.Duration.html#method.div_duration_f64
[`Duration::div_duration_f32`]: https://doc.rust-lang.org/stable/std/time/struct.Duration.html#method.div_duration_f32
[`MaybeUninit::as_ptr`]: https://doc.rust-lang.org/stable/std/mem/union.MaybeUninit.html#method.as_ptr
[`MaybeUninit::as_mut_ptr`]: https://doc.rust-lang.org/stable/std/mem/union.MaybeUninit.html#method.as_mut_ptr
[`MaybeUninit::assume_init`]: https://doc.rust-lang.org/stable/std/mem/union.MaybeUninit.html#method.assume_init
[`MaybeUninit::assume_init_ref`]: https://doc.rust-lang.org/stable/std/mem/union.MaybeUninit.html#method.assume_init_ref

To see a diff of this commit:
https://wip.pkgsrc.org/cgi-bin/gitweb.cgi?p=pkgsrc-wip.git;a=commitdiff;h=6c690385134eee8a2b6e8e96cfa514de85d2603b

Please note that diffs are not public domain; they are subject to the
copyright notices on the relevant files.

diffstat:
 rust/Makefile                                      |  40 ++--
 rust/distinfo                                      | 208 ++++++++++-----------
 rust/options.mk                                    |   5 +-
 ...compiler_rustc__codegen__ssa_src_back_linker.rs |  12 +-
 rust/patches/patch-compiler_rustc__llvm_build.rs   |   2 +-
 rust/patches/patch-src_bootstrap_bootstrap.py      |   9 -
 6 files changed, 134 insertions(+), 142 deletions(-)

diffs:
diff --git a/rust/Makefile b/rust/Makefile
index 2a71cb46ef..7efad95e5f 100644
--- a/rust/Makefile
+++ b/rust/Makefile
@@ -1,6 +1,6 @@
 # $NetBSD: Makefile,v 1.197 2020/09/29 16:45:16 gdt Exp $
 
-DISTNAME=	rustc-1.57.0-src
+DISTNAME=	rustc-1.58.1-src
 PKGNAME=	${DISTNAME:S/rustc/rust/:S/-src//}
 CATEGORIES=	lang
 MASTER_SITES=	https://static.rust-lang.org/dist/
@@ -173,7 +173,7 @@ BUILDLINK_TRANSFORM.NetBSD+=	rm:-Wl,--enable-new-dtags
 DISTFILES:=		${DEFAULT_DISTFILES}
 
 .if !empty(MACHINE_PLATFORM:MDarwin-*-aarch64) || make(distinfo) || make (makesum) || make(mdi)
-RUST_STAGE0_VER=	1.56.1
+RUST_STAGE0_VER=	1.57.0
 RUST_ARCH:=		aarch64-apple-darwin
 RUST_STAGE0:=		rust-${RUST_STAGE0_VER}-${RUST_ARCH}.tar.gz
 RUST_STD_STAGE0:=	rust-std-${RUST_STAGE0_VER}-${RUST_ARCH}.tar.gz
@@ -181,7 +181,7 @@ DISTFILES:=		${DISTFILES} ${RUST_STAGE0} ${RUST_STD_STAGE0}
 pre-build-fix:
 .endif
 .if !empty(MACHINE_PLATFORM:MDarwin-*-x86_64) || make(distinfo) || make (makesum) || make(mdi)
-RUST_STAGE0_VER=	1.56.1
+RUST_STAGE0_VER=	1.57.0
 RUST_ARCH:=		x86_64-apple-darwin
 RUST_STAGE0:=		rust-${RUST_STAGE0_VER}-${RUST_ARCH}.tar.gz
 RUST_STD_STAGE0:=	rust-std-${RUST_STAGE0_VER}-${RUST_ARCH}.tar.gz
@@ -189,7 +189,7 @@ DISTFILES:=		${DISTFILES} ${RUST_STAGE0} ${RUST_STD_STAGE0}
 pre-build-fix:
 .endif
 .if !empty(MACHINE_PLATFORM:MLinux-*-aarch64) || make(distinfo) || make (makesum) || make(mdi)
-RUST_STAGE0_VER=	1.56.1
+RUST_STAGE0_VER=	1.57.0
 RUST_ARCH:=		aarch64-unknown-linux-gnu
 RUST_STAGE0:=		rust-${RUST_STAGE0_VER}-${RUST_ARCH}.tar.gz
 RUST_STD_STAGE0:=	rust-std-${RUST_STAGE0_VER}-${RUST_ARCH}.tar.gz
@@ -197,7 +197,7 @@ DISTFILES:=		${DISTFILES} ${RUST_STAGE0} ${RUST_STD_STAGE0}
 pre-build-fix:
 .endif
 .if !empty(MACHINE_PLATFORM:MLinux-*-earmv6hf) || make(distinfo) || make (makesum) || make(mdi)
-RUST_STAGE0_VER=	1.56.1
+RUST_STAGE0_VER=	1.57.0
 RUST_ARCH:=		arm-unknown-linux-gnueabihf
 RUST_STAGE0:=		rust-${RUST_STAGE0_VER}-${RUST_ARCH}.tar.gz
 RUST_STD_STAGE0:=	rust-std-${RUST_STAGE0_VER}-${RUST_ARCH}.tar.gz
@@ -205,7 +205,7 @@ DISTFILES:=		${DISTFILES} ${RUST_STAGE0} ${RUST_STD_STAGE0}
 pre-build-fix:
 .endif
 .if !empty(MACHINE_PLATFORM:MLinux-*-earmv7hf) || make(distinfo) || make (makesum) || make(mdi)
-RUST_STAGE0_VER=	1.56.1
+RUST_STAGE0_VER=	1.57.0
 RUST_ARCH:=		armv7-unknown-linux-gnueabihf
 RUST_STAGE0:=		rust-${RUST_STAGE0_VER}-${RUST_ARCH}.tar.gz
 RUST_STD_STAGE0:=	rust-std-${RUST_STAGE0_VER}-${RUST_ARCH}.tar.gz
@@ -213,7 +213,7 @@ DISTFILES:=		${DISTFILES} ${RUST_STAGE0} ${RUST_STD_STAGE0}
 pre-build-fix:
 .endif
 .if !empty(MACHINE_PLATFORM:MLinux-*-i386) || make(distinfo) || make (makesum) || make(mdi)
-RUST_STAGE0_VER=	1.56.1
+RUST_STAGE0_VER=	1.57.0
 RUST_ARCH:=		i686-unknown-linux-gnu
 RUST_STAGE0:=		rust-${RUST_STAGE0_VER}-${RUST_ARCH}.tar.gz
 RUST_STD_STAGE0:=	rust-std-${RUST_STAGE0_VER}-${RUST_ARCH}.tar.gz
@@ -221,7 +221,7 @@ DISTFILES:=		${DISTFILES} ${RUST_STAGE0} ${RUST_STD_STAGE0}
 pre-build-fix:
 .endif
 .if !empty(MACHINE_PLATFORM:MLinux-*-x86_64) || make(distinfo) || make (makesum) || make(mdi)
-RUST_STAGE0_VER=	1.56.1
+RUST_STAGE0_VER=	1.57.0
 RUST_ARCH:=		x86_64-unknown-linux-gnu
 RUST_STAGE0:=		rust-${RUST_STAGE0_VER}-${RUST_ARCH}.tar.gz
 RUST_STD_STAGE0:=	rust-std-${RUST_STAGE0_VER}-${RUST_ARCH}.tar.gz
@@ -234,7 +234,7 @@ pre-build-fix:
 # x86_64-sun-solaris bootstrap and comment out the overrides.
 #
 .if !empty(MACHINE_PLATFORM:MSunOS-*-x86_64) || make(distinfo) || make (makesum) || make(mdi)
-RUST_STAGE0_VER=	1.56.0
+RUST_STAGE0_VER=	1.57.0
 RUST_ARCH:=		x86_64-unknown-illumos
 RUST_STAGE0:=		rust-${RUST_STAGE0_VER}-${RUST_ARCH}.tar.gz
 SITES.${RUST_STAGE0}=	https://us-east.manta.joyent.com/pkgsrc/public/pkg-bootstraps/
@@ -248,7 +248,7 @@ CONFIGURE_ARGS+=	--target=${RUST_ARCH}
 pre-build-fix:
 .endif
 .if !empty(MACHINE_PLATFORM:MFreeBSD-*-x86_64) || make(distinfo) || make (makesum) || make(mdi)
-RUST_STAGE0_VER=	1.56.1
+RUST_STAGE0_VER=	1.57.0
 RUST_ARCH:=		x86_64-unknown-freebsd
 RUST_STAGE0:=		rust-${RUST_STAGE0_VER}-${RUST_ARCH}.tar.gz
 RUST_STD_STAGE0:=	rust-std-${RUST_STAGE0_VER}-${RUST_ARCH}.tar.gz
@@ -256,7 +256,7 @@ DISTFILES:=		${DISTFILES} ${RUST_STAGE0} ${RUST_STD_STAGE0}
 pre-build-fix:
 .endif
 .if !empty(MACHINE_PLATFORM:MNetBSD-*-i386) || make(distinfo) || make (makesum) || make(mdi)
-RUST_STAGE0_VER=	1.56.1
+RUST_STAGE0_VER=	1.57.0
 RUST_ARCH=		i586-unknown-netbsd
 RUST_STAGE0:=		rust-${RUST_STAGE0_VER}-${RUST_ARCH}.tar.gz
 RUST_STD_STAGE0:=	rust-std-${RUST_STAGE0_VER}-${RUST_ARCH}.tar.gz
@@ -274,7 +274,7 @@ pre-build-fix:
 	${TOOLS_PLATFORM.paxctl} +am ${WRKDIR}/rust-bootstrap/bin/rustc
 .endif
 .if !empty(MACHINE_PLATFORM:MNetBSD-*-x86_64) || make(distinfo) || make (makesum) || make(mdi)
-RUST_STAGE0_VER=	1.56.1
+RUST_STAGE0_VER=	1.57.0
 RUST_ARCH=		x86_64-unknown-netbsd
 RUST_STAGE0:=		rust-${RUST_STAGE0_VER}-${RUST_ARCH}.tar.gz
 RUST_STD_STAGE0:=	rust-std-${RUST_STAGE0_VER}-${RUST_ARCH}.tar.gz
@@ -282,7 +282,7 @@ DISTFILES:=		${DISTFILES} ${RUST_STAGE0} ${RUST_STD_STAGE0}
 pre-build-fix:
 .endif
 .if !empty(MACHINE_PLATFORM:MNetBSD-*-powerpc) || make(distinfo) || make (makesum) || make(mdi)
-RUST_STAGE0_VER=	1.56.1
+RUST_STAGE0_VER=	1.57.0
 RUST_ARCH=		powerpc-unknown-netbsd
 
 # Cross-built against NetBSD 9.0
@@ -306,7 +306,7 @@ SITES.${RUST_STD_STAGE0}=	${MASTER_SITE_LOCAL:=rust/}
 pre-build-fix:
 .endif
 .if !empty(MACHINE_PLATFORM:MNetBSD-*-aarch64) || make(distinfo) || make (makesum) || make(mdi)
-RUST_STAGE0_VER=	1.56.1
+RUST_STAGE0_VER=	1.57.0
 RUST_ARCH=		aarch64-unknown-netbsd
 RUST_STAGE0:=		rust-${RUST_STAGE0_VER}-${RUST_ARCH}.tar.gz
 RUST_STD_STAGE0:=	rust-std-${RUST_STAGE0_VER}-${RUST_ARCH}.tar.gz
@@ -316,7 +316,7 @@ SITES.${RUST_STD_STAGE0}=	${MASTER_SITE_LOCAL:=rust/}
 pre-build-fix:
 .endif
 .if !empty(MACHINE_PLATFORM:MNetBSD-*-aarch64eb) || make(distinfo) || make (makesum) || make(mdi)
-RUST_STAGE0_VER=	1.56.1
+RUST_STAGE0_VER=	1.57.0
 RUST_ARCH=		aarch64_be-unknown-netbsd
 RUST_STAGE0:=		rust-${RUST_STAGE0_VER}-${RUST_ARCH}.tar.gz
 RUST_STD_STAGE0:=	rust-std-${RUST_STAGE0_VER}-${RUST_ARCH}.tar.gz
@@ -326,7 +326,7 @@ SITES.${RUST_STD_STAGE0}=	${MASTER_SITE_LOCAL:=rust/}
 pre-build-fix:
 .endif
 .if !empty(MACHINE_PLATFORM:MNetBSD-*-sparc64) || make(distinfo) || make (makesum) || make(mdi)
-RUST_STAGE0_VER=	1.56.1
+RUST_STAGE0_VER=	1.57.0
 RUST_ARCH=		sparc64-unknown-netbsd
 RUST_STAGE0:=		rust-${RUST_STAGE0_VER}-${RUST_ARCH}.tar.gz
 RUST_STD_STAGE0:=	rust-std-${RUST_STAGE0_VER}-${RUST_ARCH}.tar.gz
@@ -337,7 +337,7 @@ pre-build-fix:
 .endif
 .if !empty(MACHINE_PLATFORM:MNetBSD-*-earmv7hf) || make(distinfo) || make (makesum) || make(mdi)
 RUST_ARCH=		armv7-unknown-netbsd-eabihf
-RUST_STAGE0_VER=	1.56.1
+RUST_STAGE0_VER=	1.57.0
 RUST_STAGE0:=		rust-${RUST_STAGE0_VER}-${RUST_ARCH}.tar.gz
 RUST_STD_STAGE0:=	rust-std-${RUST_STAGE0_VER}-${RUST_ARCH}.tar.gz
 DISTFILES:=		${DISTFILES} ${RUST_STAGE0} ${RUST_STD_STAGE0}
@@ -392,9 +392,9 @@ CKSUM_CRATES+=	vendor/stacker
 CKSUMS+=	cee329550bad2ed1182abb71db9c24558a91b12e1eab8d9a48e23b997bb8f04e
 CKSUMS+=	79915b243d02df1dc698f5c2de3a9356c6c296d2dedb06d9035dbcc2f8972cf4
 
-CKSUM_CRATES+=	vendor/libc
-CKSUMS+=	080e0cf03b50874ba9d5082b314eabb0d253532dc4b13d8af095a0c78e0fba84
-CKSUMS+=	1cca4f6c13bdda567d47ec4c83a1ea90d99dbe95b7de9478705b68630a13a8c7
+#CKSUM_CRATES+=	vendor/libc
+#CKSUMS+=	080e0cf03b50874ba9d5082b314eabb0d253532dc4b13d8af095a0c78e0fba84
+#CKSUMS+=	1cca4f6c13bdda567d47ec4c83a1ea90d99dbe95b7de9478705b68630a13a8c7
 
 CKSUM_CRATES+=	vendor/openssl-src
 CKSUMS+=	65a4daf6f0d6ad80a83d63614288c3a9df9adcebe5f3d7ff2ad34dd3d2c75196
diff --git a/rust/distinfo b/rust/distinfo
index dc7e41450a..290fc98389 100644
--- a/rust/distinfo
+++ b/rust/distinfo
@@ -1,108 +1,108 @@
 $NetBSD: distinfo,v 1.118 2020/08/06 11:42:56 jperkin Exp $
 
-BLAKE2s (rust-1.56.0-x86_64-unknown-illumos.tar.gz) = 2cfc266e0ac44f0e0ddca2e3f17a3137cfa6c33cce917eb7bd05f60afb8eef24
-SHA512 (rust-1.56.0-x86_64-unknown-illumos.tar.gz) = 5b74ecb03cec82ee524b83439fd3f029de7bcdcbc3696fd3897441a9c1bc719e0cd19cedb2e35613377cfc09435476ae53d9cdf71734f9437d185acc2dfaa5ad
-Size (rust-1.56.0-x86_64-unknown-illumos.tar.gz) = 178568678 bytes
-BLAKE2s (rust-1.56.1-aarch64-apple-darwin.tar.gz) = a1c22cd631e90ee7f77105bafbb6832480e3e0e83b4d30074f798cb4d84303c5
-SHA512 (rust-1.56.1-aarch64-apple-darwin.tar.gz) = 38215ecf50dd32384365154a4117de0e3e292f447b85af9671117571b5b3814aa1d921fb52ad32b45d2840e5b84536335599f22aa92c8f586576825f9023eb8a
-Size (rust-1.56.1-aarch64-apple-darwin.tar.gz) = 278749467 bytes
-BLAKE2s (rust-1.56.1-aarch64-unknown-linux-gnu.tar.gz) = e4360c4c748f86ae547feaabf7d642ed473397e990a4192af7e1c384659554a2
-SHA512 (rust-1.56.1-aarch64-unknown-linux-gnu.tar.gz) = 7abbe572fc6f1c6e36cd497782a6240ad83f2a8e7c9fa5eb762173a01f9ae9619ee62a4afc8f648597d87f438f0d4e5702e846ad48870d57c1a9c1b04f80fdcf
-Size (rust-1.56.1-aarch64-unknown-linux-gnu.tar.gz) = 373221852 bytes
-BLAKE2s (rust-1.56.1-aarch64-unknown-netbsd.tar.gz) = ae4074acbcae223d23fcd6d6050d48281b4eab29e1c86104d4601d68ab88d03b
-SHA512 (rust-1.56.1-aarch64-unknown-netbsd.tar.gz) = 40788f0ce70359a87593ab2902f33578f2acf592d360f3bc326f1d3cb7e43d725d28e0b8ee192dc4bf5a5371b2dd7b7c94aed21e60087404ef392ea15bf00291
-Size (rust-1.56.1-aarch64-unknown-netbsd.tar.gz) = 246177134 bytes
-BLAKE2s (rust-1.56.1-aarch64_be-unknown-netbsd.tar.gz) = d817172f978e2f849392053d5edce756bebcf995e3f4c032326fbecae8e12fc1
-SHA512 (rust-1.56.1-aarch64_be-unknown-netbsd.tar.gz) = 4d5092f3ca5ecdd78b7d2c9e32c646c98db4dd4327689f8d1f1de798a358ea92f0458c5aa22a3332242a60a9113cea4db1edeaa45b86d621b59d5b5cf2756754
-Size (rust-1.56.1-aarch64_be-unknown-netbsd.tar.gz) = 250579852 bytes
-BLAKE2s (rust-1.56.1-arm-unknown-linux-gnueabihf.tar.gz) = 40d434b24c19eff9f3b5e7e5ebf9b23159185ba6cf509cdd8e407a08662fe9d5
-SHA512 (rust-1.56.1-arm-unknown-linux-gnueabihf.tar.gz) = 39a3bc374f4bc2e517e674c02cc3758dff5d610efa12be4fb2de425e036afefbf17a8f42ff018f7e8ae407ded3ee9a91776dc242dc141bf023d7be32868f8860
-Size (rust-1.56.1-arm-unknown-linux-gnueabihf.tar.gz) = 312325091 bytes
-BLAKE2s (rust-1.56.1-armv7-unknown-linux-gnueabihf.tar.gz) = 28193b3b54caccf8ae5d06226de30cf7c797ef858083d232f0a04497d1fabedd
-SHA512 (rust-1.56.1-armv7-unknown-linux-gnueabihf.tar.gz) = 892b78460e33c0b66f1a59377bd0365da7f12ae12497aede1adae87512a6a8da1d3551a10aeb9820a7c8d66b82945d09395f8161eaff562326ebfdfcfec4704c
-Size (rust-1.56.1-armv7-unknown-linux-gnueabihf.tar.gz) = 303423005 bytes
-BLAKE2s (rust-1.56.1-armv7-unknown-netbsd-eabihf.tar.gz) = c6f6c623db0e515c81229158d0381af6d0d2515ce2eb733b7fffb75c536470cb
-SHA512 (rust-1.56.1-armv7-unknown-netbsd-eabihf.tar.gz) = 5a2f20968049bbe82f7088c23d57c20448e8cddac12717ff38d7a89bfc51987750d3fdb47a6cfb69afe7e4718198b377b6269d643e494532ed9e401fe4767ff0
-Size (rust-1.56.1-armv7-unknown-netbsd-eabihf.tar.gz) = 211069241 bytes
-BLAKE2s (rust-1.56.1-i586-unknown-netbsd.tar.gz) = d1d5886d3d39338b68e820811ab2d8f549d5e77657fd9f8248313a66fdd2d576
-SHA512 (rust-1.56.1-i586-unknown-netbsd.tar.gz) = e01b11760dd1f9fc727568fc758dd36367d51a54012e985eec0819007bb7e23376abdf45dfdd1ab5464fdcc28a33b066333a348e625bb9c52af036fe7d3e0c9c
-Size (rust-1.56.1-i586-unknown-netbsd.tar.gz) = 255007945 bytes
-BLAKE2s (rust-1.56.1-i686-unknown-linux-gnu.tar.gz) = 45c073d0fb4c9c44d6ff007ff20ed52a1d2d0ba65d0d6567ddf9b4d775d5f305
-SHA512 (rust-1.56.1-i686-unknown-linux-gnu.tar.gz) = 1db7d77b119b0fc150cac2d0c5e92b757d9088349a00aed8dcdd3bffdcc5766f4f29aefa0ac4d73b2067bb4874e336c73e48224509cda4a9d3ad0194c152ba22
-Size (rust-1.56.1-i686-unknown-linux-gnu.tar.gz) = 352160240 bytes
-BLAKE2s (rust-1.56.1-powerpc-unknown-netbsd.tar.gz) = 0b45017fa4729c4fccdb2c40bd8d293400b4926cff1b9c83feb37d674135655d
-SHA512 (rust-1.56.1-powerpc-unknown-netbsd.tar.gz) = 901a05a2656525d401b943ab8ec273be2d70f848a57b44b4171808d23c715a3f2156661372738729389c4e3a7cf98c0b0b87ffd98fb0e8c27597871835363f87
-Size (rust-1.56.1-powerpc-unknown-netbsd.tar.gz) = 275199468 bytes
-BLAKE2s (rust-1.56.1-powerpc-unknown-netbsd90.tar.gz) = 4ea6a22ffed9961cb705744a1c3bee83fccd9797ca0ec0519e7599cb4118ed67
-SHA512 (rust-1.56.1-powerpc-unknown-netbsd90.tar.gz) = 98b76197b7fd7e85e313958a706e0c84f9273966abdc30b44de482bb187795585a7b1fd6953c9fb07f953931bd4a82ec4b3c7e09e8fb402fe4b2467978942f5d
-Size (rust-1.56.1-powerpc-unknown-netbsd90.tar.gz) = 281033725 bytes
-BLAKE2s (rust-1.56.1-sparc64-unknown-netbsd.tar.gz) = df2b2e83e3eb6ccc74e286fa8d3167e31f39e509de64ed0922fef2cad1f24c80
-SHA512 (rust-1.56.1-sparc64-unknown-netbsd.tar.gz) = e608195c32318cf626c246622cda52148af89643f4ac614c6b741a2840699de70d82bc995be8df91c5e271862bc4cf6f357cde81d437efed23abfe17ce7945ed
-Size (rust-1.56.1-sparc64-unknown-netbsd.tar.gz) = 256057199 bytes
-BLAKE2s (rust-1.56.1-x86_64-apple-darwin.tar.gz) = 3f69fb9f24fe826f7395f60d295724c671c7080655ccbaecd1cd87a2962bf020
-SHA512 (rust-1.56.1-x86_64-apple-darwin.tar.gz) = 6d90ab3af3ce0aeb7be977068a0ba2b43cf7900b253939dbf0d4d351dc43af605a168cce082b5bb758e345eeea815dc7b62a37c6293ca0b9af29fbc449f70ea8
-Size (rust-1.56.1-x86_64-apple-darwin.tar.gz) = 288683995 bytes
-BLAKE2s (rust-1.56.1-x86_64-unknown-freebsd.tar.gz) = 936240cf9510718adf83cfc5c8cce8703aa45ed11ca7c94f49b5263d8974833c
-SHA512 (rust-1.56.1-x86_64-unknown-freebsd.tar.gz) = 70ad1cdde4b4dc158abfd9ced97e19e179c7314959f960dcc6b2799e616a6f138d052d3b7a5f492e6ea77c6a10d086e01ce085d41090abed9766e2b5b5a1579e
-Size (rust-1.56.1-x86_64-unknown-freebsd.tar.gz) = 276251862 bytes
-BLAKE2s (rust-1.56.1-x86_64-unknown-linux-gnu.tar.gz) = 42d614d69649088cfdf52c40b2e855c6e8d090070c836379158292b3a3e1ef5e
-SHA512 (rust-1.56.1-x86_64-unknown-linux-gnu.tar.gz) = fe79b12030357d460a5d308eca948bca547e1652e3f5343c614703bae1ca01fb7cc170c4271998025b5d81939986eb4558f38f9b2e808661907006f02e533622
-Size (rust-1.56.1-x86_64-unknown-linux-gnu.tar.gz) = 247530814 bytes
-BLAKE2s (rust-1.56.1-x86_64-unknown-netbsd.tar.gz) = b0b91278aba7cc050df947c8899db6ed8093477f19ddf6e729201991bed67449
-SHA512 (rust-1.56.1-x86_64-unknown-netbsd.tar.gz) = e4c328f3cd491c91fe15b7aafc5a181d6c776771f80b3bc6055e6d36660749694700a8a03adfe7d46ad43cba699de06bb6bd9947cc220e20ccf2635037adf5e1
-Size (rust-1.56.1-x86_64-unknown-netbsd.tar.gz) = 258396348 bytes
-BLAKE2s (rust-std-1.56.1-aarch64-apple-darwin.tar.gz) = 374da02af36b4d7c6ea30f1e9b22e385c5e1ecb474c149f10e22fd19d2ad7f89
-SHA512 (rust-std-1.56.1-aarch64-apple-darwin.tar.gz) = 3dbcff7f39fc7d4aa19b2bb0b31066be0da63e208b13701c0a22e61e79b0c215f61bf6fea47ad99c1e8353eae44403e247c3b65a25d5b6e4cb9d99948041c9a2
-Size (rust-std-1.56.1-aarch64-apple-darwin.tar.gz) = 33934051 bytes
-BLAKE2s (rust-std-1.56.1-aarch64-unknown-linux-gnu.tar.gz) = c6b051a896b23dfe01dbe8576248615edd955527caa738e16934638adddede7c
-SHA512 (rust-std-1.56.1-aarch64-unknown-linux-gnu.tar.gz) = fb83dd3bf03179a96302f9ba8d9ff76f0c6afe3080fcaa4c26c157f2f8e6d53e0dbc42098d44e33722d258c655607b939a20a7d5fce9b5d520a942529101ca8e
-Size (rust-std-1.56.1-aarch64-unknown-linux-gnu.tar.gz) = 49082121 bytes
-BLAKE2s (rust-std-1.56.1-aarch64-unknown-netbsd.tar.gz) = ab98f0b09c0d07a9f597b964b33dee3b7692ef737b5d444fd4e6264bef0f872f
-SHA512 (rust-std-1.56.1-aarch64-unknown-netbsd.tar.gz) = fb6adf8ffd361b069bffea9af80f104a032571dfe258608de485083a21bdaa87ff889f87e83e80198841c737ea2716214f8fe1a1c9e45365b757edd713590537
-Size (rust-std-1.56.1-aarch64-unknown-netbsd.tar.gz) = 29230319 bytes
-BLAKE2s (rust-std-1.56.1-aarch64_be-unknown-netbsd.tar.gz) = 480e849b3c9ace441bed1a7871cc4f5444289ab36d7f5b7b760afaeec49f2124
-SHA512 (rust-std-1.56.1-aarch64_be-unknown-netbsd.tar.gz) = fa395dc83e77f9760e81fe8fee2f4f5dbac3dcdc36d2fa402443f819d5809497e33335060e6a4bad6c9b1aaac79e361cbd0b25754216fff0e3d27ce4e93df604
-Size (rust-std-1.56.1-aarch64_be-unknown-netbsd.tar.gz) = 29249566 bytes
-BLAKE2s (rust-std-1.56.1-arm-unknown-linux-gnueabihf.tar.gz) = 9d225db02d1981720d5397b146dd73a5dac7e0e6602ac24015fcf09cdfcf12af
-SHA512 (rust-std-1.56.1-arm-unknown-linux-gnueabihf.tar.gz) = ffe7540ebcf18eba2f739679a45154239caf01e6831751dc21bf19930a58279cab88d991ba4998c10212e74beb3923cd2ef08f6fcf309d4775d6c8fd7303471a
-Size (rust-std-1.56.1-arm-unknown-linux-gnueabihf.tar.gz) = 31354280 bytes
-BLAKE2s (rust-std-1.56.1-armv7-unknown-linux-gnueabihf.tar.gz) = 95abe2df94f2832c028040a13fa867db2f5e592bc2d9d94478dd0eac31f95c27
-SHA512 (rust-std-1.56.1-armv7-unknown-linux-gnueabihf.tar.gz) = 688527a8f1047559190baf46b17852daea79874f969bf0a1260de036ff7b097a0b4e0d6d595ae4106fdc35457e80fbf2e0ed7cbce37b2839ab05f0a8fc8f3e82
-Size (rust-std-1.56.1-armv7-unknown-linux-gnueabihf.tar.gz) = 32399240 bytes
-BLAKE2s (rust-std-1.56.1-armv7-unknown-netbsd-eabihf.tar.gz) = 6d0012cd1a45ee905a621b0597fd9faf54b8ff2983380a947bbd9d98e123c4a5
-SHA512 (rust-std-1.56.1-armv7-unknown-netbsd-eabihf.tar.gz) = 60e44523ded7fb1a971fcdbca16dbc1cb50b9c3390de9ee4f6805f8848848ff06453f28663532c2a7076628ea5a3f30ccefa670056e6106149c1f9ce0dff1b17
-Size (rust-std-1.56.1-armv7-unknown-netbsd-eabihf.tar.gz) = 28362608 bytes
-BLAKE2s (rust-std-1.56.1-i586-unknown-netbsd.tar.gz) = 1fc68c43bfd5e4f7adf3c9a1ee072123678855de714cf4cfebd4d8f9f951380e
-SHA512 (rust-std-1.56.1-i586-unknown-netbsd.tar.gz) = a96a7947efd4a8b224329a0760eede22687d46305378b4a9e3f30b5be6eb06dba13419b69c1091a516e8c58a4a99b4a70c378813692257c2373e30ea5cc61fcf
-Size (rust-std-1.56.1-i586-unknown-netbsd.tar.gz) = 30899441 bytes
-BLAKE2s (rust-std-1.56.1-i686-unknown-linux-gnu.tar.gz) = 00790416000d9b5a2fbb3634fe7c78f6b5166e2009e03876d019f8c8b7b09a34
-SHA512 (rust-std-1.56.1-i686-unknown-linux-gnu.tar.gz) = 509c944e3a304ed1e78258ec3b0a25d2cc3833654a47a08b4b81ab74e0c7ca71aba14c4e6cb1825553b7a072b2e29f8ea89ac17092d8c7303dba825815ccf2d0
-Size (rust-std-1.56.1-i686-unknown-linux-gnu.tar.gz) = 34811759 bytes
-BLAKE2s (rust-std-1.56.1-powerpc-unknown-netbsd.tar.gz) = 34020a1f00467db00907bd93571c990fa7d2dbec0045b4cf10425b2fe68f029c
-SHA512 (rust-std-1.56.1-powerpc-unknown-netbsd.tar.gz) = 88d506f15f7245c8d50896342559ca36b350d937dfa3e6dee22a2e317e26488503b7792dd51c2f2b61b1580f77e9bc8f607869373f20e70b24171fd429ad8f01
-Size (rust-std-1.56.1-powerpc-unknown-netbsd.tar.gz) = 27170765 bytes
-BLAKE2s (rust-std-1.56.1-powerpc-unknown-netbsd90.tar.gz) = 9c156b1f2d4862f57c2f9eb5fdbc73dbc76b42ccfdcc895182c7cda4231ca0af
-SHA512 (rust-std-1.56.1-powerpc-unknown-netbsd90.tar.gz) = bc8c33af42fa0b9ed5cebede0947204432e3f6117efa26d23ee61176bc2cd8961f4c240f7854357a3b149b54ada7aac7b4a1aec846623b35d21e74c57cd84c6a
-Size (rust-std-1.56.1-powerpc-unknown-netbsd90.tar.gz) = 27166168 bytes
-BLAKE2s (rust-std-1.56.1-sparc64-unknown-netbsd.tar.gz) = 3ab9e165ac8533d790ecd4efd68573401d8ebc923e63c55c04a7c616ea322957
-SHA512 (rust-std-1.56.1-sparc64-unknown-netbsd.tar.gz) = 768893332d1770f5566784379dcf4ad21cf4621b81d3de6486ab45e1ffcb5105c6d7abd3271ff126f3b635acdc30a8c0f4f86958ea07e4aeb5ca5673c9151c2c
-Size (rust-std-1.56.1-sparc64-unknown-netbsd.tar.gz) = 27315043 bytes
-BLAKE2s (rust-std-1.56.1-x86_64-apple-darwin.tar.gz) = f445052b49c81217a23bee477aa5fbcbcd86590a4c312519c1d54929721ce988
-SHA512 (rust-std-1.56.1-x86_64-apple-darwin.tar.gz) = 0e03620a8cc2eb4e09e8961a2e0ff4baa9d4e04220ee4be025758529406dcc5363e7cbf0fc08bbb415569a64946b748c6daf7e25c8edf4d066b67989b7c91284
-Size (rust-std-1.56.1-x86_64-apple-darwin.tar.gz) = 35631735 bytes
-BLAKE2s (rust-std-1.56.1-x86_64-unknown-freebsd.tar.gz) = c937ea9484937e2c2aa9cddc8f25e3301e4d959e25df336ddd2cfd6ed53997dc
-SHA512 (rust-std-1.56.1-x86_64-unknown-freebsd.tar.gz) = 6ae7da0ffce9d484e53b139310021a14ed43f0187772580f379993c9ecaaf9d6a57fa8f71cf2c904a9ba6c8710e91007d9f37f365393b1ca246b36f547db3d91
-Size (rust-std-1.56.1-x86_64-unknown-freebsd.tar.gz) = 37337801 bytes
-BLAKE2s (rust-std-1.56.1-x86_64-unknown-linux-gnu.tar.gz) = 61ddde150c9b8ab3d420c5b94a5dc770682ea6e2091bc288a4ea1d56d1efda7b
-SHA512 (rust-std-1.56.1-x86_64-unknown-linux-gnu.tar.gz) = 45088e99ad49698e9b440436293f4ce3b9b574154eb2e2be4c838fa48c1f809337d673664c4d4e60e9fbcd35b6d0d92e86a5837f5f9057795abf871ffe05afb5
-Size (rust-std-1.56.1-x86_64-unknown-linux-gnu.tar.gz) = 38850787 bytes
-BLAKE2s (rust-std-1.56.1-x86_64-unknown-netbsd.tar.gz) = abb76987278232b88e1699c7fd351bc71a7e9233f35f9a26d91907f88fb80756
-SHA512 (rust-std-1.56.1-x86_64-unknown-netbsd.tar.gz) = c63c7418a0f9bb095d1e1d80ff9514bfac1e0e713d9c7096de014975ec64b27f362691fcadc47fa461ab25150c056f41401f082e5612c203818f1326e35ba458
-Size (rust-std-1.56.1-x86_64-unknown-netbsd.tar.gz) = 34718271 bytes
-BLAKE2s (rustc-1.57.0-src.tar.gz) = e7cff6772a3a70862cf78e271da7214e523a0a6ad089355e6a3cbe4e93681bd5
-SHA512 (rustc-1.57.0-src.tar.gz) = 243b60211dc6c007eb290a4dacf37fa08798b3939236c7fd67a64a2d2e592c27e105cff88887c298b8ebf255e6037d5edb5ebfa68199c77dfbceb06799b61c61
-Size (rustc-1.57.0-src.tar.gz) = 180813373 bytes
-SHA1 (patch-compiler_rustc__codegen__ssa_src_back_linker.rs) = f8794cc7abaa84804731308b9011fb6b8c143a33
+BLAKE2s (rust-1.57.0-aarch64-apple-darwin.tar.gz) = c0462b46ab67fc517ee4e21919d38928163eb8998508154e27e1e612f0432e85
+SHA512 (rust-1.57.0-aarch64-apple-darwin.tar.gz) = 9c42eb46b508497369c4c3c40a2d0665ab93af7908de331af5c72851e830c7eac8f14b53765d7b033441eb5c5f5206c3f027d8ffcbb389de401051bca096b4f5
+Size (rust-1.57.0-aarch64-apple-darwin.tar.gz) = 286239872 bytes
+BLAKE2s (rust-1.57.0-aarch64-unknown-linux-gnu.tar.gz) = 8384ac62386c155273d2e5ed343b5a3e931ccae41475f3d4222e06be48ff821f
+SHA512 (rust-1.57.0-aarch64-unknown-linux-gnu.tar.gz) = f6e0e09c4b13ff02cc94664304e02f0495fe0eaf785f56a1135ab1c5b42a75d83a805eae0892d57fa60848f0d0dad71579ac22660fb1283d60b210aab948b112
+Size (rust-1.57.0-aarch64-unknown-linux-gnu.tar.gz) = 381839417 bytes
+BLAKE2s (rust-1.57.0-aarch64-unknown-netbsd.tar.gz) = 3acc465f51f8b20c8a21ce87ebbd81b021a2103f0e4e452c753530c7e0b9e87d
+SHA512 (rust-1.57.0-aarch64-unknown-netbsd.tar.gz) = afec78675051275a7415507439ace92c7bf165b45886b3dafc20a4f5f3295d3ed54180868660c85198e9bee949ec973d13387797984b1487855b115872ffc9a4
+Size (rust-1.57.0-aarch64-unknown-netbsd.tar.gz) = 252989394 bytes
+BLAKE2s (rust-1.57.0-aarch64_be-unknown-netbsd.tar.gz) = 46e11bcf1aa0e15b7fbab33bcbd63fb2924940009466ae9e0cad9e94fc4969d2
+SHA512 (rust-1.57.0-aarch64_be-unknown-netbsd.tar.gz) = 649b1b56ea855c1d3bd46c4b698ba4fc68885827526160c4fe5f050735fed7c69e5cf8b1626adc4b22181e56adc151ed2a92dc189886e322c1ed5908a9b69d5d
+Size (rust-1.57.0-aarch64_be-unknown-netbsd.tar.gz) = 257444086 bytes
+BLAKE2s (rust-1.57.0-arm-unknown-linux-gnueabihf.tar.gz) = e780f051c5791593d2471f8d264bbd01ed5c475aae85eefba40890900b57e593
+SHA512 (rust-1.57.0-arm-unknown-linux-gnueabihf.tar.gz) = 2218a8156f8d3bdb26a86a5ef3d6825d6a1b3489396ee1b0e5af4bbcfe4cbfd05281f3b67c9e9c67bb07103ab7f7a737083b91871c533aece3e6bf655afb1ec2
+Size (rust-1.57.0-arm-unknown-linux-gnueabihf.tar.gz) = 319748330 bytes
+BLAKE2s (rust-1.57.0-armv7-unknown-linux-gnueabihf.tar.gz) = 9b15ce8dae681c940e975f0d821555b87e7fb046922b27b556cf2d4d9613bc58
+SHA512 (rust-1.57.0-armv7-unknown-linux-gnueabihf.tar.gz) = ce0d33ba8a66545f3331c108a7e6af1e5d2ca602b88fefe51943029ace1f7a7c6bfe6bd468c330110e06ea6c332ea5f3d703e15ea3e032f7421d8c8754788725
+Size (rust-1.57.0-armv7-unknown-linux-gnueabihf.tar.gz) = 310908793 bytes
+BLAKE2s (rust-1.57.0-armv7-unknown-netbsd-eabihf.tar.gz) = ef5b256aba1729b00e5721b00bde46d35386a249ac58f5f77a53170c59465067
+SHA512 (rust-1.57.0-armv7-unknown-netbsd-eabihf.tar.gz) = 57ac5f9fab4c24d4320df69a64e26728065558c471eb7710f106968a5f97cf20e545ad87e67855d3d0c8c582e2885e80552c4b7b54409cb79c279926034c0e53
+Size (rust-1.57.0-armv7-unknown-netbsd-eabihf.tar.gz) = 218034938 bytes
+BLAKE2s (rust-1.57.0-i586-unknown-netbsd.tar.gz) = 19422b7dcff615990b7a13dc93495b04e32fbc545340cdd719ad59382e3a904e
+SHA512 (rust-1.57.0-i586-unknown-netbsd.tar.gz) = 70120121359c2d755b666d42e971c5bfe49f40658640e4118578fc0b2db9d6b429cb84c934e56a0fd1fb20aa836036633451c883e11d6362e8995d9e2cc98107
+Size (rust-1.57.0-i586-unknown-netbsd.tar.gz) = 261665383 bytes
+BLAKE2s (rust-1.57.0-i686-unknown-linux-gnu.tar.gz) = 4db90cb24572ee81bae53fedc034da2bbac2ee7d5a057a5264c8f3bc7f4a1b81
+SHA512 (rust-1.57.0-i686-unknown-linux-gnu.tar.gz) = 75c2ba22a1404ef0643ed47380cbfaf63c7f3a93b2aa646f3406af9f8e197e07e63e108b61690d7a54ec525817cdbe26c5a21d6126878e4fd318d1e75029a7b8
+Size (rust-1.57.0-i686-unknown-linux-gnu.tar.gz) = 360466770 bytes
+BLAKE2s (rust-1.57.0-powerpc-unknown-netbsd.tar.gz) = fd057ef11e3446d57091edd5f839e8285b7bd8d538fb9dcd2fd189a0ccab53a6
+SHA512 (rust-1.57.0-powerpc-unknown-netbsd.tar.gz) = 4c6c45176e18aa7d581b3106b7bee70124b54acdad65d201a15b0762176e1877aeea18d004642230bfa7b304a64f5c3e9520d2dfa3f04f27782978aca22ede15
+Size (rust-1.57.0-powerpc-unknown-netbsd.tar.gz) = 289285818 bytes
+BLAKE2s (rust-1.57.0-powerpc-unknown-netbsd90.tar.gz) = 0263767c7b21d5d43876b4f2e8b3e69af3eb2e692d6bd1061642592f60c4430c
+SHA512 (rust-1.57.0-powerpc-unknown-netbsd90.tar.gz) = e55c7f926453882abc005271f4770cb31ab235c1b7132ef8c592fbd8db6a355f05b50f31035528e0a39be23faf5fa40005131a76a8e6624551e5ba39e6d55b39
+Size (rust-1.57.0-powerpc-unknown-netbsd90.tar.gz) = 295698783 bytes
+BLAKE2s (rust-1.57.0-sparc64-unknown-netbsd.tar.gz) = df1df712f81078dcf5a99d57955aecee18d89739bf5345760ee4dd3275879aa9
+SHA512 (rust-1.57.0-sparc64-unknown-netbsd.tar.gz) = 24e6596499a0ed8935c8fa90d7a642227408559eb6ee8733c1205b7cf94a6a3b6a9eeae1d5411378bfdfbad4025d5f9682d47a89045089f1fe04221910f96520
+Size (rust-1.57.0-sparc64-unknown-netbsd.tar.gz) = 262794300 bytes
+BLAKE2s (rust-1.57.0-x86_64-apple-darwin.tar.gz) = 3a897325c867d8c32477f68eb90ee1caa721ee915acf55bc35d2c0413a533a97
+SHA512 (rust-1.57.0-x86_64-apple-darwin.tar.gz) = 6ecde904f76633bec180cf15a473ca04fee1419f893d2f264035216dbf0e27bedd22b6aa4f603d85800d1aa6236df27756d75211625326dc94dcd0dfd1264550
+Size (rust-1.57.0-x86_64-apple-darwin.tar.gz) = 296205449 bytes
+BLAKE2s (rust-1.57.0-x86_64-unknown-freebsd.tar.gz) = ce7a1ea73a1a0d4a63c002109d03016b3279d64815b6398afb7f0eedbfb26ec0
+SHA512 (rust-1.57.0-x86_64-unknown-freebsd.tar.gz) = ea5ca19cb51d5fe90e3da5fdb140421859e352408052c66b4cbd9f108ce5453fdc24ec24f902af76fbd07b0a72f4f393f8589e93500e643f50c276adcd4689d9
+Size (rust-1.57.0-x86_64-unknown-freebsd.tar.gz) = 282834308 bytes
+BLAKE2s (rust-1.57.0-x86_64-unknown-illumos.tar.gz) = ea61a8827f5b47baef4ed7d80c927a82ec1eedc1735f8afb7a6a2b93bbe72aa0
+SHA512 (rust-1.57.0-x86_64-unknown-illumos.tar.gz) = 3613606e6ebf6985635c824a259ad1c22bb16eaf4bc31c76a248883d3f24cf6eee87facd34fe06712da3e58e941b1bc347f9b412593797b43d9b5bcf98a7805d
+Size (rust-1.57.0-x86_64-unknown-illumos.tar.gz) = 186585246 bytes
+BLAKE2s (rust-1.57.0-x86_64-unknown-linux-gnu.tar.gz) = b457917358139f9d21656e8959b25e577d8bffbaf7eaeee49f19132c8b8670d7
+SHA512 (rust-1.57.0-x86_64-unknown-linux-gnu.tar.gz) = 314530c2c71199ccc2f3b43165dd43e16f3bb50d1d3bfa5151aa3c6fdafec8789a0f9b215646b4dcaec86e589a4d875f0c3c922e8169a104bd637e6f701b9d9c
+Size (rust-1.57.0-x86_64-unknown-linux-gnu.tar.gz) = 253578539 bytes
+BLAKE2s (rust-1.57.0-x86_64-unknown-netbsd.tar.gz) = 355205a27605e6f2ecfaf58616815581b6da65136e0f4798b43e036e41573927
+SHA512 (rust-1.57.0-x86_64-unknown-netbsd.tar.gz) = 2abbcaea071e0322da6678c975450da2c488288c11dc561e76bf2006c2e39d99def24627ee833956a702c201012f49f3aac475ee76c0529e014c15d28bddb205
+Size (rust-1.57.0-x86_64-unknown-netbsd.tar.gz) = 264930357 bytes
+BLAKE2s (rust-std-1.57.0-aarch64-apple-darwin.tar.gz) = 9f40746ac176a24ddc0af08b77c9f2843674e85af394c20461256daf0c65d89a
+SHA512 (rust-std-1.57.0-aarch64-apple-darwin.tar.gz) = 0cd91cfd0e0493aaed10ece93804fde739fddd3851fd1135ce006ed5b4fe9785792670c49f67d198357a37d922ef632b784dd4c9814786546263c88d34d8e253
+Size (rust-std-1.57.0-aarch64-apple-darwin.tar.gz) = 36320839 bytes
+BLAKE2s (rust-std-1.57.0-aarch64-unknown-linux-gnu.tar.gz) = 052e320309ae3d71e24e6c8c7c191207eef1e76f91785684b82036f6405a8592
+SHA512 (rust-std-1.57.0-aarch64-unknown-linux-gnu.tar.gz) = 68abbff71d348856a71c0f5b1b0554b774ff6d11e0ffe06c123f9c06dc34cf7e2f5b8bf68f6f64f6b9625e8556ae2367bf1d8d624074f674be83eb8de729eac0
+Size (rust-std-1.57.0-aarch64-unknown-linux-gnu.tar.gz) = 51489670 bytes
+BLAKE2s (rust-std-1.57.0-aarch64-unknown-netbsd.tar.gz) = 7110b55817147033f38cd11c70281a0916de0b6b01bd685337e138d431ecbeb6
+SHA512 (rust-std-1.57.0-aarch64-unknown-netbsd.tar.gz) = 128b94c13c95b3e2e20d4f418eff8e89b3db8f83033c1a06cfc17c48887062deb60f09d8b6e3e222dc9d32fbfb2435b1f8ae44420f2f655fbb0b99c5dab722f8
+Size (rust-std-1.57.0-aarch64-unknown-netbsd.tar.gz) = 31559863 bytes
+BLAKE2s (rust-std-1.57.0-aarch64_be-unknown-netbsd.tar.gz) = a50ecb70199704c7f9ef333fd534713fea07eac80a12a34a4e54eabad8ef5b20
+SHA512 (rust-std-1.57.0-aarch64_be-unknown-netbsd.tar.gz) = 696fe48f5a3494bba458412013444911e6ae1abd3fcafaa52d9749c0f1df815c30363602f14213585592185fb310ab6a0fdd0e1467248ecb73a20a32cafbf0b7
+Size (rust-std-1.57.0-aarch64_be-unknown-netbsd.tar.gz) = 31592442 bytes
+BLAKE2s (rust-std-1.57.0-arm-unknown-linux-gnueabihf.tar.gz) = 9b9d079060530d532b8a72b0c335260127046cfed1c2373b1153ea27345fde09
+SHA512 (rust-std-1.57.0-arm-unknown-linux-gnueabihf.tar.gz) = ca20929165869db0072f88e64be841c48b5aa02ec334fac37c85bb033441042fe061f1b32e4602de72e269f896984a0961140fdecefdf214c9156383166dd5fd
+Size (rust-std-1.57.0-arm-unknown-linux-gnueabihf.tar.gz) = 33378310 bytes
+BLAKE2s (rust-std-1.57.0-armv7-unknown-linux-gnueabihf.tar.gz) = cd60108d94a484937878b9a6fee2dd0464575569ccbf628e3a16fa3056a22449
+SHA512 (rust-std-1.57.0-armv7-unknown-linux-gnueabihf.tar.gz) = 80feb45105668c718bdddbcd0f8c6060fcf5568dee3a3826d95f9e9d3769f5cb932083b0bf6c8e9d6f1378e17e3b1bf7c271a94168e851c22a57909d7650f4e0
+Size (rust-std-1.57.0-armv7-unknown-linux-gnueabihf.tar.gz) = 34661078 bytes
+BLAKE2s (rust-std-1.57.0-armv7-unknown-netbsd-eabihf.tar.gz) = c85c9891995cd46df0395e7841390347ebf76098051479c5ba05e7052ac54ecc
+SHA512 (rust-std-1.57.0-armv7-unknown-netbsd-eabihf.tar.gz) = 8a92a117fb6a733d5f12eb5548b42f64c2d7ef1da47dd887c5ab52fb2bc9cb896438264213b82339fc790682387ce59807aef4d472c1f078311890315c6509ec
+Size (rust-std-1.57.0-armv7-unknown-netbsd-eabihf.tar.gz) = 30520080 bytes
+BLAKE2s (rust-std-1.57.0-i586-unknown-netbsd.tar.gz) = 5964b56d774b3f8f738d68b6d1bcaa106ee30b123ef8eae0e771fd29e03b3bc3
+SHA512 (rust-std-1.57.0-i586-unknown-netbsd.tar.gz) = 0e030be374cc8f9fe22909ef5c6039a41a97bf41b66aabda67c139224d386584a32ca39ad19a45e6b3fddda5a28a083bee212184c495393502e335fba9844c22
+Size (rust-std-1.57.0-i586-unknown-netbsd.tar.gz) = 32975151 bytes
+BLAKE2s (rust-std-1.57.0-i686-unknown-linux-gnu.tar.gz) = 5c365ee122b02c85a46234277b650127e765bf49a93701e53cbb4aa51cb712b3
+SHA512 (rust-std-1.57.0-i686-unknown-linux-gnu.tar.gz) = b970d68524b80a0983358b2aa45c5a1602c228fd63c7a77d173d776142b0f5f6a283548444ce829eef4593d7921d8e2e440f1dd051034f4d04a8c36337031992
+Size (rust-std-1.57.0-i686-unknown-linux-gnu.tar.gz) = 36959620 bytes
+BLAKE2s (rust-std-1.57.0-powerpc-unknown-netbsd.tar.gz) = 57686193ba117b1669b6d1ef83f1e1536bea0a6cc2982ee581662bcd17722b9c
+SHA512 (rust-std-1.57.0-powerpc-unknown-netbsd.tar.gz) = 84cdeb4f9e0e981ae04887f75ca8dd08928a572ffcd3b786474d0c6cc284feff2813ed0049a4ce71abe06ae6e8f2c269993fae4654416051f8d54462b70fbcbd
+Size (rust-std-1.57.0-powerpc-unknown-netbsd.tar.gz) = 29112229 bytes
+BLAKE2s (rust-std-1.57.0-powerpc-unknown-netbsd90.tar.gz) = 8e020ac374e571e92c9a3c47924fd4e354a0ad2cb5b27cbf4fa92ef66cc0250a
+SHA512 (rust-std-1.57.0-powerpc-unknown-netbsd90.tar.gz) = 8c27040ca67dcaa0205762422033727166d3b768712146373b7a7e2dc62fcc347bb496b54f4c6a79a0a08b67c832b7b75b3e81d0ea7669ce8dd62b02ba0a0e6e
+Size (rust-std-1.57.0-powerpc-unknown-netbsd90.tar.gz) = 29106627 bytes
+BLAKE2s (rust-std-1.57.0-sparc64-unknown-netbsd.tar.gz) = f9d0a5d8e86037c6b863ef2e3308e4cf36c2cda66a13a63e6955c5d91055c087
+SHA512 (rust-std-1.57.0-sparc64-unknown-netbsd.tar.gz) = 5504f0441c769e76f9a4a0e6500a3ba6cd4b377539b2a19ac556554efe836ca65fe2426cfb2511e40a53dc7d079cf607e6c9fe9bfa2ce65e37cc33d0094d8b5b
+Size (rust-std-1.57.0-sparc64-unknown-netbsd.tar.gz) = 29262628 bytes
+BLAKE2s (rust-std-1.57.0-x86_64-apple-darwin.tar.gz) = 4fed0d4e1a9fb535862ad1e4837299c3721bd53ce9ae121b87b64463892b941d
+SHA512 (rust-std-1.57.0-x86_64-apple-darwin.tar.gz) = 50eb6851f2abfc63ac6b0ec0d8151513b6ba686fc9ebfc9fa7da421de7bf17e457eee9627991cfea8bb823ac457b45d1abf2880b7d3d1fed125f20173668c9a4
+Size (rust-std-1.57.0-x86_64-apple-darwin.tar.gz) = 37799551 bytes
+BLAKE2s (rust-std-1.57.0-x86_64-unknown-freebsd.tar.gz) = 00a2dcca1ecfb50af095674f751c727f33b1244855152fa4a4d995f2ad8e2161
+SHA512 (rust-std-1.57.0-x86_64-unknown-freebsd.tar.gz) = 5b7ca0ea756cd6244fdf54bc2cec8fed46f85c7548f83b91169760fe4dd1287226108c628475069f44e61e58793d5f9745a44d39da38f667275b8552690fdf01
+Size (rust-std-1.57.0-x86_64-unknown-freebsd.tar.gz) = 39491244 bytes
+BLAKE2s (rust-std-1.57.0-x86_64-unknown-linux-gnu.tar.gz) = 817d4a9efc728e0205ec699d403e9c1b5203f136a8594d6ca7acc7a6f027d227
+SHA512 (rust-std-1.57.0-x86_64-unknown-linux-gnu.tar.gz) = ad5765f611d35401980c365a27121cdecee6896876cc5209b2fc86442c0c3068eb2ee4d782f4697d2f02fca29d549f0c1532e4346673b421c7a6409a2e59979a
+Size (rust-std-1.57.0-x86_64-unknown-linux-gnu.tar.gz) = 41029426 bytes
+BLAKE2s (rust-std-1.57.0-x86_64-unknown-netbsd.tar.gz) = eeda978f01a950f6c014666a3ad9c127a6472bc14e77f29981d017e7274294b8
+SHA512 (rust-std-1.57.0-x86_64-unknown-netbsd.tar.gz) = 052d9d6a56862b1fbd9ced3134c0b7bc670e4051bfff3dd8496959d3b5fbd89f1511bd309ab3ecc48f8b4cf044fbaa988d594c31067d5da689570850a5ab235c
+Size (rust-std-1.57.0-x86_64-unknown-netbsd.tar.gz) = 36823936 bytes
+BLAKE2s (rustc-1.58.1-src.tar.gz) = 6233cef1a23819d01111ac2721fef01e7f0e757e5420630f4c453f5343c02a61
+SHA512 (rustc-1.58.1-src.tar.gz) = 556de73500bb66796e1d6ec063f26d60e7fe03d496e0783b3b92b54d1aea8354999a6eff325a68eabdaa61cf2b356168768686bfc2ccb48766308490f9c4d945
+Size (rustc-1.58.1-src.tar.gz) = 183834489 bytes
+SHA1 (patch-compiler_rustc__codegen__ssa_src_back_linker.rs) = a9a891b9c507958354fb819587d6d4b31ff83ce6
 SHA1 (patch-compiler_rustc__llvm_build.rs) = 73f8225f6dea809da9381d78a8099d13c7c151c0
 SHA1 (patch-compiler_rustc__target_src_spec_aarch64__be__unknown__netbsd.rs) = acad7e2b0bbeb85f6453aeee74a0f2ca253d6a9b
 SHA1 (patch-compiler_rustc__target_src_spec_i586__unknown__netbsd.rs) = efae710b37c089702802c3d5aa678d1cc5f88cc2
@@ -111,7 +111,7 @@ SHA1 (patch-compiler_rustc__target_src_spec_netbsd__base.rs) = 18e3cb9f32c417067
 SHA1 (patch-library_std_src_sys_unix_mod.rs) = f8669d680f169137ac2891af2977909619366a97
 SHA1 (patch-library_std_src_sys_unix_thread.rs) = e5f661b3dd00058e874fe60cd89d9e919325e99b
 SHA1 (patch-library_unwind_build.rs) = df092d5c07fa0be63a9510f1d6a77e5094ca3b15
-SHA1 (patch-src_bootstrap_bootstrap.py) = 54a631b0a25ceb04469e7be60298a031ae6916d6
+SHA1 (patch-src_bootstrap_bootstrap.py) = 9ffb0d83bafd1bed78e357d832bae79b24589c7c
 SHA1 (patch-src_bootstrap_builder.rs) = b686a545c001936f6da22f7a5b38ac1300c9869b
 SHA1 (patch-src_bootstrap_compile.rs) = c57799aee9c12603f5e6a13cb6b5befc8f96b4b6
 SHA1 (patch-src_bootstrap_lib.rs) = f6918e0939b6fe63ae9b524d4c809375149efb15
diff --git a/rust/options.mk b/rust/options.mk
index 31cce543b9..44b8dba9fb 100644
--- a/rust/options.mk
+++ b/rust/options.mk
@@ -23,10 +23,11 @@ PKG_SUGGESTED_OPTIONS+=	rust-cargo-static
 .include "../../mk/bsd.options.mk"
 
 #
-# Use the internal copy of LLVM.
-# This contains some extra optimizations.
+# Use the internal copy of LLVM or the external one?
+# The internal one contains some extra optimizations.
 #
 .if empty(PKG_OPTIONS:Mrust-llvm)
+BUILDLINK_API_DEPENDS.llvm+=	llvm>=12.0.0
 .include "../../lang/llvm/buildlink3.mk"
 CONFIGURE_ARGS+=	--enable-llvm-link-shared
 CONFIGURE_ARGS+=	--llvm-root=${BUILDLINK_PREFIX.llvm}
diff --git a/rust/patches/patch-compiler_rustc__codegen__ssa_src_back_linker.rs b/rust/patches/patch-compiler_rustc__codegen__ssa_src_back_linker.rs
index b0b8091f57..a95337f84a 100644
--- a/rust/patches/patch-compiler_rustc__codegen__ssa_src_back_linker.rs
+++ b/rust/patches/patch-compiler_rustc__codegen__ssa_src_back_linker.rs
@@ -4,12 +4,12 @@ Do not use @rpath on Darwin.
 
 --- compiler/rustc_codegen_ssa/src/back/linker.rs.orig	2021-09-06 18:42:35.000000000 +0000
 +++ compiler/rustc_codegen_ssa/src/back/linker.rs
-@@ -303,7 +303,7 @@ impl<'a> GccLinker<'a> {
+@@ -326,7 +326,7 @@ impl<'a> GccLinker<'a> {
+             // principled solution at some point to force the compiler to pass
              // the right `-Wl,-install_name` with an `@rpath` in it.
              if self.sess.opts.cg.rpath || self.sess.opts.debugging_opts.osx_rpath_install_name {
-                 self.linker_arg("-install_name");
--                let mut v = OsString::from("@rpath/");
-+                let mut v = OsString::from("@PREFIX@/lib/");
-                 v.push(out_filename.file_name().unwrap());
-                 self.linker_arg(&v);
+-                let mut rpath = OsString::from("@rpath/");
++                let mut rpath = OsString::from("@PREFIX@/lib/");
+                 rpath.push(out_filename.file_name().unwrap());
+                 self.linker_args(&[OsString::from("-install_name"), rpath]);
              }
diff --git a/rust/patches/patch-compiler_rustc__llvm_build.rs b/rust/patches/patch-compiler_rustc__llvm_build.rs
index a4e5c5a6c6..7af182c085 100644
--- a/rust/patches/patch-compiler_rustc__llvm_build.rs
+++ b/rust/patches/patch-compiler_rustc__llvm_build.rs
@@ -1,4 +1,4 @@
-$NetBSD: patch-compiler_rustc__llvm_build.rs,v 1.4 2021/11/20 16:09:46 he Exp $
+$NetBSD$
 
 Fix build on NetBSD HEAD-llvm. XXX there is probably a better way to do this.
 
diff --git a/rust/patches/patch-src_bootstrap_bootstrap.py b/rust/patches/patch-src_bootstrap_bootstrap.py
index 98d5cc9833..ba9e8113bb 100644
--- a/rust/patches/patch-src_bootstrap_bootstrap.py
+++ b/rust/patches/patch-src_bootstrap_bootstrap.py
@@ -1,7 +1,6 @@
 $NetBSD: patch-src_bootstrap_bootstrap.py,v 1.4 2020/02/17 20:24:18 jperkin Exp $
 
 Use `uname -p` on NetBSD, as that is reliable and sensible there.
-Add -Copt-level=2 to RUSTFLAGS.
 Handle earmv7hf for NetBSD.
 
 --- src/bootstrap/bootstrap.py.orig	2021-02-10 17:36:44.000000000 +0000
@@ -40,11 +39,3 @@ Handle earmv7hf for NetBSD.
          else:
              ostype += 'eabihf'
      elif cputype == 'mips':
-@@ -936,6 +944,7 @@ class RustBuild(object):
- 
-         # preserve existing RUSTFLAGS
-         env.setdefault("RUSTFLAGS", "")
-+        env["RUSTFLAGS"] += " -Copt-level=2"
-         build_section = "target.{}".format(self.build)
-         target_features = []
-         if self.get_toml("crt-static", build_section) == "true":


Home | Main Index | Thread Index | Old Index