pkgsrc-WIP-changes archive

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

rust: Update to 1.66.0.



Module Name:	pkgsrc-wip
Committed By:	Jonathan Perkin <jonathan%perkin.org.uk@localhost>
Pushed By:	jperkin
Date:		Wed Dec 21 22:31:38 2022 +0000
Changeset:	322a17d782a4ef84097083c9e923ebb0bcd1adfa

Modified Files:
	rust/Makefile
	rust/cross.mk
	rust/distinfo
	rust/do-cross.mk
	rust/patches/patch-compiler_rustc__codegen__ssa_src_back_linker.rs
	rust/patches/patch-compiler_rustc__target_src_spec_i586__unknown__netbsd.rs
	rust/patches/patch-compiler_rustc__target_src_spec_netbsd__base.rs
	rust/patches/patch-src_bootstrap_builder.rs
	rust/patches/patch-src_bootstrap_compile.rs
	rust/patches/patch-vendor_libc_src_unix_bsd_netbsdlike_netbsd_mips.rs
	rust/patches/patch-vendor_valuable_no__atomic.rs
Added Files:
	rust/patches/patch-src_bootstrap_install.rs
	rust/patches/patch-vendor_crossbeam-epoch-0.9.6_no__atomic.rs
	rust/patches/patch-vendor_crossbeam-utils-0.8.8_no__atomic.rs
	rust/patches/patch-vendor_crossbeam_no__atomic.rs
Removed Files:
	rust/patches/patch-vendor_crossbea_no__atomic.rs
	rust/patches/patch-vendor_crossbeam-epch-0.9.6_no__atomic.rs
	rust/patches/patch-vendor_crossbeam-utils-0.8.0_no__atomic.rs
	rust/patches/patch-vendor_libc-0.2.131_src_unix_bsd_netbsdlike_netbsd_mips.rs
	rust/patches/patch-vendor_libc-0.2.131_src_unix_bsd_netbsdlike_netbsd_mod.rs
	rust/patches/patch-vendor_libc-0.2.131_src_unix_solarish_mod.rs

Log Message:
rust: Update to 1.66.0.

Perform a bunch of pkglint cleanup while here, and bump bootstrap kits
to 1.65.0.

Version 1.66.0 (2022-12-15)
==========================

Language
--------
- [Permit specifying explicit discriminants on all `repr(Int)`
  enums](https://github.com/rust-lang/rust/pull/95710/)
  ```rust
  #[repr(u8)]
  enum Foo {
      A(u8) = 0,
      B(i8) = 1,
      C(bool) = 42,
  }
  ```
- [Allow transmutes between the same type differing only in
  lifetimes](https://github.com/rust-lang/rust/pull/101520/)
- [Change constant evaluation errors from a deny-by-default lint to a
  hard error](https://github.com/rust-lang/rust/pull/102091/)
- [Trigger `must_use` on `impl Trait` for
  supertraits](https://github.com/rust-lang/rust/pull/102287/) This
  makes `impl ExactSizeIterator` respect the existing `#[must_use]`
  annotation on `Iterator`.
- [Allow `..X` and `..=X` in
  patterns](https://github.com/rust-lang/rust/pull/102275/)
- [Uplift `clippy::for_loops_over_fallibles` lint into
  rustc](https://github.com/rust-lang/rust/pull/99696/)
- [Stabilize `sym` operands in inline
  assembly](https://github.com/rust-lang/rust/pull/103168/)
- [Update to Unicode 15](https://github.com/rust-lang/rust/pull/101912/)
- [Opaque types no longer imply lifetime
  bounds](https://github.com/rust-lang/rust/pull/95474/) This is a
  soundness fix which may break code that was erroneously relying on this
  behavior.

Compiler
--------
- [Add armv5te-none-eabi and thumbv5te-none-eabi tier 3
  targets](https://github.com/rust-lang/rust/pull/101329/)
  - Refer to Rust's [platform support page][platform-support-doc] for
    more information on Rust's tiered platform support.
- [Add support for linking against macOS universal
  libraries](https://github.com/rust-lang/rust/pull/98736)

Libraries
---------
- [Fix `#[derive(Default)]` on a generic `#[default]` enum adding
  unnecessary `Default`
  bounds](https://github.com/rust-lang/rust/pull/101040/)
- [Update to Unicode 15](https://github.com/rust-lang/rust/pull/101821/)

Stabilized APIs
---------------
- [`proc_macro::Span::source_text`](https://doc.rust-lang.org/stable/proc_macro/struct.Span.html#method.source_text)
- [`uX::{checked_add_signed, overflowing_add_signed,
  saturating_add_signed,
  wrapping_add_signed}`](https://doc.rust-lang.org/stable/std/primitive.u8.html#method.checked_add_signed)
- [`iX::{checked_add_unsigned, overflowing_add_unsigned,
  saturating_add_unsigned,
  wrapping_add_unsigned}`](https://doc.rust-lang.org/stable/std/primitive.i8.html#method.checked_add_unsigned)
- [`iX::{checked_sub_unsigned, overflowing_sub_unsigned,
  saturating_sub_unsigned,
  wrapping_sub_unsigned}`](https://doc.rust-lang.org/stable/std/primitive.i8.html#method.checked_sub_unsigned)
- [`BTreeSet::{first, last, pop_first,
  pop_last}`](https://doc.rust-lang.org/stable/std/collections/struct.BTreeSet.html#method.first)
- [`BTreeMap::{first_key_value, last_key_value, first_entry, last_entry,
  pop_first,
  pop_last}`](https://doc.rust-lang.org/stable/std/collections/struct.BTreeMap.html#method.first_key_value)
- [Add `AsFd` implementations for stdio lock types on
  WASI.](https://github.com/rust-lang/rust/pull/101768/)
- [`impl TryFrom<Vec<T>> for Box<[T;
  N]>`](https://doc.rust-lang.org/stable/std/boxed/struct.Box.html#impl-TryFrom%3CVec%3CT%2C%20Global%3E%3E-for-Box%3C%5BT%3B%20N%5D%2C%20Global%3E)
- [`core::hint::black_box`](https://doc.rust-lang.org/stable/std/hint/fn.black_box.html)
- [`Duration::try_from_secs_{f32,f64}`](https://doc.rust-lang.org/stable/std/time/struct.Duration.html#method.try_from_secs_f32)
- [`Option::unzip`](https://doc.rust-lang.org/stable/std/option/enum.Option.html#method.unzip)
- [`std::os::fd`](https://doc.rust-lang.org/stable/std/os/fd/index.html)

Rustdoc
-------
- [Add Rustdoc warning for invalid HTML tags in the
  documentation](https://github.com/rust-lang/rust/pull/101720/)

Cargo
-----
- [Added `cargo remove` to remove dependencies from
  Cargo.toml](https://doc.rust-lang.org/nightly/cargo/commands/cargo-remove.html)
- [`cargo publish` now waits for the new version to be downloadable
  before exiting](https://github.com/rust-lang/cargo/pull/11062)

See [detailed release notes](https://github.com/rust-lang/cargo/blob/master/CHANGELOG.md#cargo-166-2022-12-15) for more.

Compatibility Notes
-------------------
- [Only apply `ProceduralMasquerade` hack to older versions of
  `rental`](https://github.com/rust-lang/rust/pull/94063/)
- [Don't export `__heap_base` and `__data_end` on
  wasm32-wasi.](https://github.com/rust-lang/rust/pull/102385/)
- [Don't export `__wasm_init_memory` on
  WebAssembly.](https://github.com/rust-lang/rust/pull/102426/)
- [Only export `__tls_*` on
  wasm32-unknown-unknown.](https://github.com/rust-lang/rust/pull/102440/)
- [Don't link to `libresolv` in libstd on
  Darwin](https://github.com/rust-lang/rust/pull/102766/)
- [Update libstd's libc to 0.2.135 (to make `libstd` no longer pull in
  `libiconv.dylib` on
  Darwin)](https://github.com/rust-lang/rust/pull/103277/)
- [Opaque types no longer imply lifetime
  bounds](https://github.com/rust-lang/rust/pull/95474/)
  This is a soundness fix which may break code that was erroneously
  relying on this behavior.
- [Make `order_dependent_trait_objects` show up in future-breakage
  reports](https://github.com/rust-lang/rust/pull/102635/)
- [Change std::process::Command spawning to default to inheriting the
  parent's signal mask](https://github.com/rust-lang/rust/pull/101077/)

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

These changes do not affect any public interfaces of Rust, but they
represent significant improvements to the performance or internals of
rustc and related tools.

- [Enable BOLT for LLVM
  compilation](https://github.com/rust-lang/rust/pull/94381/)
- [Enable LTO for
  rustc_driver.so](https://github.com/rust-lang/rust/pull/101403/)

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

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

diffstat:
 rust/Makefile                                      |  52 ++++----
 rust/cross.mk                                      |  18 +--
 rust/distinfo                                      | 132 ++-------------------
 rust/do-cross.mk                                   |  24 ++--
 ...compiler_rustc__codegen__ssa_src_back_linker.rs |   4 +-
 ...rustc__target_src_spec_i586__unknown__netbsd.rs |  19 ++-
 ...compiler_rustc__target_src_spec_netbsd__base.rs |  16 ++-
 rust/patches/patch-src_bootstrap_builder.rs        |   6 +-
 rust/patches/patch-src_bootstrap_compile.rs        |   6 +-
 rust/patches/patch-src_bootstrap_install.rs        |  25 ++++
 rust/patches/patch-vendor_crossbea_no__atomic.rs   |  15 ---
 ...patch-vendor_crossbeam-epch-0.9.6_no__atomic.rs |  15 ---
 ...atch-vendor_crossbeam-epoch-0.9.6_no__atomic.rs |  15 +++
 ...atch-vendor_crossbeam-utils-0.8.0_no__atomic.rs |  15 ---
 ...atch-vendor_crossbeam-utils-0.8.8_no__atomic.rs |  15 +++
 rust/patches/patch-vendor_crossbeam_no__atomic.rs  |  15 +++
 ...-0.2.131_src_unix_bsd_netbsdlike_netbsd_mips.rs |  27 -----
 ...c-0.2.131_src_unix_bsd_netbsdlike_netbsd_mod.rs |  44 -------
 ...ch-vendor_libc-0.2.131_src_unix_solarish_mod.rs |  15 ---
 ...dor_libc_src_unix_bsd_netbsdlike_netbsd_mips.rs |   2 +-
 rust/patches/patch-vendor_valuable_no__atomic.rs   |   2 +
 21 files changed, 161 insertions(+), 321 deletions(-)

diffs:
diff --git a/rust/Makefile b/rust/Makefile
index 3ec0a380b3..c8b126acf7 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.65.0-src
+DISTNAME=	rustc-1.66.0-src
 PKGNAME=	${DISTNAME:S/rustc/rust/:S/-src//}
 CATEGORIES=	lang
 MASTER_SITES=	https://static.rust-lang.org/dist/
@@ -200,49 +200,49 @@ BUILDLINK_TRANSFORM+=	opt:x86_64:arm64
 DISTFILES:=		${DEFAULT_DISTFILES}
 
 .if !empty(MACHINE_PLATFORM:MDarwin-*-aarch64) || make(distinfo) || make (makesum) || make(mdi)
-RUST_STAGE0_VER=	1.64.0
+RUST_STAGE0_VER=	1.65.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
 DISTFILES:=		${DISTFILES} ${RUST_STAGE0} ${RUST_STD_STAGE0}
 .endif
 .if !empty(MACHINE_PLATFORM:MDarwin-*-x86_64) || make(distinfo) || make (makesum) || make(mdi)
-RUST_STAGE0_VER=	1.64.0
+RUST_STAGE0_VER=	1.65.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
 DISTFILES:=		${DISTFILES} ${RUST_STAGE0} ${RUST_STD_STAGE0}
 .endif
 .if !empty(MACHINE_PLATFORM:MLinux-*-aarch64) || make(distinfo) || make (makesum) || make(mdi)
-RUST_STAGE0_VER=	1.64.0
+RUST_STAGE0_VER=	1.65.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
 DISTFILES:=		${DISTFILES} ${RUST_STAGE0} ${RUST_STD_STAGE0}
 .endif
 .if !empty(MACHINE_PLATFORM:MLinux-*-earmv6hf) || make(distinfo) || make (makesum) || make(mdi)
-RUST_STAGE0_VER=	1.64.0
+RUST_STAGE0_VER=	1.65.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
 DISTFILES:=		${DISTFILES} ${RUST_STAGE0} ${RUST_STD_STAGE0}
 .endif
 .if !empty(MACHINE_PLATFORM:MLinux-*-earmv7hf) || make(distinfo) || make (makesum) || make(mdi)
-RUST_STAGE0_VER=	1.64.0
+RUST_STAGE0_VER=	1.65.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
 DISTFILES:=		${DISTFILES} ${RUST_STAGE0} ${RUST_STD_STAGE0}
 .endif
 .if !empty(MACHINE_PLATFORM:MLinux-*-i386) || make(distinfo) || make (makesum) || make(mdi)
-RUST_STAGE0_VER=	1.64.0
+RUST_STAGE0_VER=	1.65.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
 DISTFILES:=		${DISTFILES} ${RUST_STAGE0} ${RUST_STD_STAGE0}
 .endif
 .if !empty(MACHINE_PLATFORM:MLinux-*-x86_64) || make(distinfo) || make (makesum) || make(mdi)
-RUST_STAGE0_VER=	1.64.0
+RUST_STAGE0_VER=	1.65.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
@@ -254,7 +254,7 @@ DISTFILES:=		${DISTFILES} ${RUST_STAGE0} ${RUST_STD_STAGE0}
 # 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.63.0
+RUST_STAGE0_VER=	1.65.0
 RUST_ARCH:=		x86_64-unknown-illumos
 RUST_STAGE0:=		rust-${RUST_STAGE0_VER}-${RUST_ARCH}.tar.gz
 SITES.${RUST_STAGE0}=	https://us-central.manta.mnx.io/pkgsrc/public/pkg-bootstraps/
@@ -267,14 +267,14 @@ CONFIGURE_ARGS+=	--host=${RUST_ARCH}
 CONFIGURE_ARGS+=	--target=${RUST_ARCH}
 .endif
 .if !empty(MACHINE_PLATFORM:MFreeBSD-*-x86_64) || make(distinfo) || make (makesum) || make(mdi)
-RUST_STAGE0_VER=	1.64.0
+RUST_STAGE0_VER=	1.65.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
 DISTFILES:=		${DISTFILES} ${RUST_STAGE0} ${RUST_STD_STAGE0}
 .endif
 .if !empty(MACHINE_PLATFORM:MNetBSD-*-i386) || make(distinfo) || make (makesum) || make(mdi)
-RUST_STAGE0_VER=	1.64.0
+RUST_STAGE0_VER=	1.65.0
 RUST_ARCH=		i586-unknown-netbsd
 RUST_STAGE0:=		rust-${RUST_STAGE0_VER}-${RUST_ARCH}.tar.xz
 RUST_STD_STAGE0:=	rust-std-${RUST_STAGE0_VER}-${RUST_ARCH}.tar.xz
@@ -294,14 +294,14 @@ pre-build-fix-paxctl:
 	${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.64.0
+RUST_STAGE0_VER=	1.65.0
 RUST_ARCH=		x86_64-unknown-netbsd
 RUST_STAGE0:=		rust-${RUST_STAGE0_VER}-${RUST_ARCH}.tar.xz
 RUST_STD_STAGE0:=	rust-std-${RUST_STAGE0_VER}-${RUST_ARCH}.tar.xz
 DISTFILES:=		${DISTFILES} ${RUST_STAGE0} ${RUST_STD_STAGE0}
 .endif
 .if !empty(MACHINE_PLATFORM:MNetBSD-*-powerpc) || make(distinfo) || make (makesum) || make(mdi)
-RUST_STAGE0_VER=	1.64.0
+RUST_STAGE0_VER=	1.65.0
 RUST_ARCH=		powerpc-unknown-netbsd
 
 # Cross-built against NetBSD 9.0
@@ -324,7 +324,7 @@ SITES.${RUST_STD_STAGE0}=	${MASTER_SITE_LOCAL:=rust/}
 
 .endif
 .if !empty(MACHINE_PLATFORM:MNetBSD-*-aarch64) || make(distinfo) || make (makesum) || make(mdi)
-RUST_STAGE0_VER=		1.64.0
+RUST_STAGE0_VER=		1.65.0
 RUST_ARCH=			aarch64-unknown-netbsd
 RUST_STAGE0:=			rust-${RUST_STAGE0_VER}-${RUST_ARCH}.tar.xz
 RUST_STD_STAGE0:=		rust-std-${RUST_STAGE0_VER}-${RUST_ARCH}.tar.xz
@@ -333,7 +333,7 @@ SITES.${RUST_STAGE0}=		${MASTER_SITE_LOCAL:=rust/}
 SITES.${RUST_STD_STAGE0}=	${MASTER_SITE_LOCAL:=rust/}
 .endif
 .if !empty(MACHINE_PLATFORM:MNetBSD-*-aarch64eb) || make(distinfo) || make (makesum) || make(mdi)
-RUST_STAGE0_VER=		1.64.0
+RUST_STAGE0_VER=		1.65.0
 RUST_ARCH=			aarch64_be-unknown-netbsd
 RUST_STAGE0:=			rust-${RUST_STAGE0_VER}-${RUST_ARCH}.tar.xz
 RUST_STD_STAGE0:=		rust-std-${RUST_STAGE0_VER}-${RUST_ARCH}.tar.xz
@@ -342,7 +342,7 @@ SITES.${RUST_STAGE0}=		${MASTER_SITE_LOCAL:=rust/}
 SITES.${RUST_STD_STAGE0}=	${MASTER_SITE_LOCAL:=rust/}
 .endif
 .if !empty(MACHINE_PLATFORM:MNetBSD-*-sparc64) || make(distinfo) || make (makesum) || make(mdi)
-RUST_STAGE0_VER=		1.64.0
+RUST_STAGE0_VER=		1.65.0
 RUST_ARCH=			sparc64-unknown-netbsd
 RUST_STAGE0:=			rust-${RUST_STAGE0_VER}-${RUST_ARCH}.tar.xz
 RUST_STD_STAGE0:=		rust-std-${RUST_STAGE0_VER}-${RUST_ARCH}.tar.xz
@@ -352,7 +352,7 @@ SITES.${RUST_STD_STAGE0}=	${MASTER_SITE_LOCAL:=rust/}
 .endif
 .if !empty(MACHINE_PLATFORM:MNetBSD-*-earmv7hf) || make(distinfo) || make (makesum) || make(mdi)
 RUST_ARCH=			armv7-unknown-netbsd-eabihf
-RUST_STAGE0_VER=		1.64.0
+RUST_STAGE0_VER=		1.65.0
 RUST_STAGE0:=			rust-${RUST_STAGE0_VER}-${RUST_ARCH}.tar.xz
 RUST_STD_STAGE0:=		rust-std-${RUST_STAGE0_VER}-${RUST_ARCH}.tar.xz
 DISTFILES:=			${DISTFILES} ${RUST_STAGE0} ${RUST_STD_STAGE0}
@@ -361,7 +361,7 @@ SITES.${RUST_STD_STAGE0}=	${MASTER_SITE_LOCAL:=rust/}
 .endif
 .if !empty(MACHINE_PLATFORM:MNetBSD-*-earmv6hf) || make(distinfo) || make (makesum) || make(mdi)
 RUST_ARCH=			armv6-unknown-netbsd-eabihf
-RUST_STAGE0_VER=		1.64.0
+RUST_STAGE0_VER=		1.65.0
 RUST_STAGE0:=			rust-${RUST_STAGE0_VER}-${RUST_ARCH}.tar.xz
 RUST_STD_STAGE0:=		rust-std-${RUST_STAGE0_VER}-${RUST_ARCH}.tar.xz
 DISTFILES:=			${DISTFILES} ${RUST_STAGE0} ${RUST_STD_STAGE0}
@@ -370,7 +370,7 @@ SITES.${RUST_STD_STAGE0}=	${MASTER_SITE_LOCAL:=rust/}
 .endif
 #.if !empty(MACHINE_PLATFORM:MNetBSD-*-mipsel) || make(distinfo) || make (makesum) || make(mdi)
 #RUST_ARCH=			mipsel-unknown-netbsd
-#RUST_STAGE0_VER=		1.64.0
+#RUST_STAGE0_VER=		1.65.0
 #RUST_STAGE0:=			rust-${RUST_STAGE0_VER}-${RUST_ARCH}.tar.xz
 #RUST_STD_STAGE0:=		rust-std-${RUST_STAGE0_VER}-${RUST_ARCH}.tar.xz
 #DISTFILES:=			${DISTFILES} ${RUST_STAGE0} ${RUST_STD_STAGE0}
@@ -418,8 +418,10 @@ CKSUMS+=	8914a68865af026c1f4fb1d5f02ba0053362ef34b813ad60cc4aa3a88aa4999e
 CKSUMS+=	36261a678137edb49eab7c4d51052e4a9c78312a248dd25c4b67a44180cfbbd6
 CKSUMS+=	8f9613e50c2771b33d7cf817a735d536b389ec57f861b9486d870373c768276e
 CKSUMS+=	86a2db06339eb850f9d28d524a94a9db5aa4f4d2c3fd080fb90c8c101ef53bed
-
-CKSUM_CRATES+=	vendor/libc-0.2.131
+CKSUMS+=	fa260decf53280d4fdf714af60f42d4774f8d6f2da71b0a55a6c2a85e422eb57
+CKSUMS+=	624b6c3cc11d3785b6a3eacf1dbae820192e12c7c7da7de0abde94eb86fbf27e
+CKSUMS+=	52a31038984e68582347f4b28fd64c01e6308ff4293628818bb279605e7b28c6
+CKSUMS+=	d7c68074765debe9f6d21797be22b34f7699535e2b9f15b131db18a8ba2bc751
 
 CKSUM_CRATES+=	vendor/lzma-sys
 CKSUMS+=	6fd5e9245db34c6f557b8bfcaf03db82fc88c3b06dbfbb5f03b2bcd138983ef9
@@ -444,6 +446,8 @@ CKSUMS+=	1ca104253f186211d88627c66086278adf6cd8e17eaaa243b822106d5e95d637
 CKSUM_CRATES+=	vendor/crossbeam-utils
 CKSUMS+=	916ed15218bb7b75a4e0d432430e7134efd27ca43ca8a8766e0c90e89febb602
 CKSUMS+=	9203c99b493cf333be37410484eb3a1d7f9fccf5049aa5fd6fc9b89b20f946ed
+CKSUMS+=	f58085b9d0666ccf62e0ae17fb5dae937c0a86fcc55dc0ae04ad8659e696a49c
+CKSUMS+=	edd00ed29d88c1324bf15008e83394dbb5e09f723a7f040c322f8be1d50e41ea
 
 CKSUM_CRATES+=	vendor/crossbeam-epoch
 CKSUMS+=	916ed15218bb7b75a4e0d432430e7134efd27ca43ca8a8766e0c90e89febb602
@@ -611,13 +615,13 @@ stage0-bootstrap: install
 		${CP} `${PKG_CC} -print-file-name=$${lib}` \
 		    ${BOOTSTRAP_TMPDIR}/lib/pkgsrc/; \
 	done; \
-	for lib in libLLVM-14.so libcrypto.so.1.1 libcurl.so.4 \
-		   libssl.so.1.1 libz.so.1; do \
+	for lib in libLLVM-15.so libcrypto.so.1.1 libcurl.so.4 \
+		   libssl.so.1.1 libz.so.1 libzstd.so.1; do \
 		${CP} ${PREFIX}/lib/$${lib} ${BOOTSTRAP_TMPDIR}/lib/pkgsrc/; \
 	done; \
 	for lib in libiconv.so.2 libidn2.so.0 libintl.so.8 liblber.so.2 \
 		   libldap.so.2 libnghttp2.so.14 libsasl2.so.3 \
-		   libssh2.so.1 libunistring.so.2; do \
+		   libssh2.so.1 libunistring.so.5; do \
 		${CP} ${PREFIX}/lib/$${lib} ${BOOTSTRAP_TMPDIR}/lib/pkgsrc/; \
 	done; \
 	for f in ${BOOTSTRAP_TMPDIR}/bin/*; do \
diff --git a/rust/cross.mk b/rust/cross.mk
index e1f9168397..bbdb178192 100644
--- a/rust/cross.mk
+++ b/rust/cross.mk
@@ -39,15 +39,15 @@
 # the ultimate target to built for, as well as the
 # host the compiler is supposed to run on.
 # Rust's target designation
-#TARGET= 		armv7-unknown-netbsd-eabihf
-#TARGET= 		armv6-unknown-netbsd-eabihf
-#TARGET= 		sparc64-unknown-netbsd
-#TARGET= 		powerpc-unknown-netbsd
-#TARGET= 		aarch64-unknown-netbsd
-#TARGET= 		aarch64_be-unknown-netbsd
-#TARGET= 		i686-unknown-netbsd
-#TARGET= 		i586-unknown-netbsd
-#TARGET= 		mipsel-unknown-netbsd
+#TARGET=		armv7-unknown-netbsd-eabihf
+#TARGET=		armv6-unknown-netbsd-eabihf
+#TARGET=		sparc64-unknown-netbsd
+#TARGET=		powerpc-unknown-netbsd
+#TARGET=		aarch64-unknown-netbsd
+#TARGET=		aarch64_be-unknown-netbsd
+#TARGET=		i686-unknown-netbsd
+#TARGET=		i586-unknown-netbsd
+#TARGET=		mipsel-unknown-netbsd
 #
 #SCRIPTS=		${WRKDIR}/scripts
 #CONFIGURE_ARGS+=	--host=${TARGET}
diff --git a/rust/distinfo b/rust/distinfo
index a349c2cb58..1ad33e8b58 100644
--- a/rust/distinfo
+++ b/rust/distinfo
@@ -1,120 +1,12 @@
-$NetBSD: distinfo,v 1.118 2020/08/06 11:42:56 jperkin Exp $
+$NetBSD$
 
-BLAKE2s (rust-1.63.0-x86_64-unknown-illumos.tar.gz) = 7844914d1a21e8df16bc2a7aad5f01d8502a79806f4606edf2edc7fa38d7f6e5
-SHA512 (rust-1.63.0-x86_64-unknown-illumos.tar.gz) = 1279e4cb7dce1e23cdf8b40afa3540c60e24f22e41a02acd0985cdfa13d825d09ba92859e138734ab2f8435808b4e61c510006a4aba75a02f6b3a45b9bafe556
-Size (rust-1.63.0-x86_64-unknown-illumos.tar.gz) = 201958566 bytes
-BLAKE2s (rust-1.64.0-aarch64-apple-darwin.tar.gz) = 22c3a7016f235e2d29825f371976cd8d3e235ac0d97b58aeee780e3818e81f1f
-SHA512 (rust-1.64.0-aarch64-apple-darwin.tar.gz) = c21797d1cf21c409cea46d3dc9d33591c468b77d915f019c9cf2f031b3dc78af4d3b22d0edb6f5032ca6083f52b7ab969878b735ea9aaafe7c0336fe847814c3
-Size (rust-1.64.0-aarch64-apple-darwin.tar.gz) = 232722441 bytes
-BLAKE2s (rust-1.64.0-aarch64-unknown-linux-gnu.tar.gz) = 1c32110fdf2be923932093803b4b33e5ad9e575bf7c6fe3b11368f9484f3559d
-SHA512 (rust-1.64.0-aarch64-unknown-linux-gnu.tar.gz) = 61284a6f5fb5b6b8fba8a17fbe72b27c03dcc04f1a252725b001bf2fa38b5df7ca12bc3aabaf2eb631c3eb9de8c9c563e96b034e2532385178192dcf39377fb4
-Size (rust-1.64.0-aarch64-unknown-linux-gnu.tar.gz) = 421442906 bytes
-BLAKE2s (rust-1.64.0-aarch64-unknown-netbsd.tar.xz) = 69458f8c220274839064ad7d4152944713b193285a3dba7e85ab2828c8f3dc17
-SHA512 (rust-1.64.0-aarch64-unknown-netbsd.tar.xz) = 078c9eb535bc6068f774828ee478d88678654b49ce1a9d832e607f692c38194a1273544af742ac257dbf28defc2107d0fcbdbd469e73aab821568426f6e45d32
-Size (rust-1.64.0-aarch64-unknown-netbsd.tar.xz) = 160377572 bytes
-BLAKE2s (rust-1.64.0-aarch64_be-unknown-netbsd.tar.xz) = c3124bcd13d0b92bc45d8ced830f5e958a07a1965836f13c03c16aa75a0b2e96
-SHA512 (rust-1.64.0-aarch64_be-unknown-netbsd.tar.xz) = 99111f962bb300eedcc5ddfdcd89769765654e2eab080908d99f5906a0efb9673475d602926362b3e13db75a1f97245bdf61f7c7e1354fae92517777d09ce283
-Size (rust-1.64.0-aarch64_be-unknown-netbsd.tar.xz) = 155440804 bytes
-BLAKE2s (rust-1.64.0-arm-unknown-linux-gnueabihf.tar.gz) = 6d2b26f3aeec5b5e56369b1d757b7833f986aba6994631e85dbcb4226df6a38b
-SHA512 (rust-1.64.0-arm-unknown-linux-gnueabihf.tar.gz) = 7f55836e76292c9d0f945610c432b28969709bf45513a286a194848f9989a155527565d4e1cfe38fbde937f344485ac3cbdbe79f392aac571ff49ba896e48cf3
-Size (rust-1.64.0-arm-unknown-linux-gnueabihf.tar.gz) = 328779282 bytes
-BLAKE2s (rust-1.64.0-armv6-unknown-netbsd-eabihf.tar.xz) = 9bfd0efd28426f88f3669a2131dc15a66af70287e27101dc4eb89ee2df0486e7
-SHA512 (rust-1.64.0-armv6-unknown-netbsd-eabihf.tar.xz) = 8199c544c603c2222643f4efefc6fe802da77c7f3b62b50931801dfe540b79b7db356f9066bcd6077acf20b6284a4f96a2b4a1f1c382df4abc6d05eeeb83d7b3
-Size (rust-1.64.0-armv6-unknown-netbsd-eabihf.tar.xz) = 157659320 bytes
-BLAKE2s (rust-1.64.0-armv7-unknown-linux-gnueabihf.tar.gz) = 06cabb1f1ce2f1d724118da6e63ee8823d6a644b0ce722704cc57a2e5b308fe9
-SHA512 (rust-1.64.0-armv7-unknown-linux-gnueabihf.tar.gz) = 689159b77bfbfd13e0f7aae454263b498024c7d4040807e7b7a6ea760fd29563666cbc6c5b47eb0cf834558cce69ac89d63fbf23862b6c631769458e844aa3a8
-Size (rust-1.64.0-armv7-unknown-linux-gnueabihf.tar.gz) = 319828033 bytes
-BLAKE2s (rust-1.64.0-armv7-unknown-netbsd-eabihf.tar.xz) = f578dd33157dc253d86505f31968647bc503288f859168ca096c82adafb5e49a
-SHA512 (rust-1.64.0-armv7-unknown-netbsd-eabihf.tar.xz) = b3df96819a5ff1a137503b6c7d56405542833ae30a435100a465e5b224ed6803aef7b934099951f450b969e0cb0a116ecafb00e3e50a60d1ce56a8760813466b
-Size (rust-1.64.0-armv7-unknown-netbsd-eabihf.tar.xz) = 136518340 bytes
-BLAKE2s (rust-1.64.0-i586-unknown-netbsd.tar.xz) = b1b5754a600d9cf08499eacdc521470a05f4239b2e552a29618be22d756ad549
-SHA512 (rust-1.64.0-i586-unknown-netbsd.tar.xz) = 9ce3fda065e095441824e4843ff3bd08b98c341b4fa4790a3d13126b3408b433ef740d1d66f27b78d20f9dc37d33123becf298e5e59459fa3af7e95ad9bf5b43
-Size (rust-1.64.0-i586-unknown-netbsd.tar.xz) = 173159048 bytes
-BLAKE2s (rust-1.64.0-i686-unknown-linux-gnu.tar.gz) = 060f0aa535ae4bc81ee34c77ff28856106901ee9f11096fcf57dcac4bdf3e9b7
-SHA512 (rust-1.64.0-i686-unknown-linux-gnu.tar.gz) = 40d3d1b25d6159c7b8812c2a29497c21d4d67791e98f7bc56d823ebf8809b6409917675768974e157c75fc40bf9d654a09e6d37a87f2ac96bc46f97f62176bea
-Size (rust-1.64.0-i686-unknown-linux-gnu.tar.gz) = 384878959 bytes
-BLAKE2s (rust-1.64.0-powerpc-unknown-netbsd.tar.xz) = 5c0776dafa0734e14194b2280eae472d2fc9ba3c8263ab6a78766a35670ca5e8
-SHA512 (rust-1.64.0-powerpc-unknown-netbsd.tar.xz) = 7df11c5b27ab1d7ba532132709401a44245bd407dfa80815acd8ca4a41012934d172754d2b1ddc949e36f5b49e232baa9c86c8b582f14a7ca8ca24b191aa82e8
-Size (rust-1.64.0-powerpc-unknown-netbsd.tar.xz) = 175669184 bytes
-BLAKE2s (rust-1.64.0-powerpc-unknown-netbsd90.tar.xz) = cc67867ad46f6e49f1ab36c57b41fd46fc5de2791174a4b2c2eeed9946101215
-SHA512 (rust-1.64.0-powerpc-unknown-netbsd90.tar.xz) = faa572c4016152ca3f0990af047ed75975bb6fdfb61d8d4f3482f8105ad42689baf2dd72ad4a09d73af8acdfd4f60603d9acbf7ddfa2c53088faba8e368900d1
-Size (rust-1.64.0-powerpc-unknown-netbsd90.tar.xz) = 184358988 bytes
-BLAKE2s (rust-1.64.0-sparc64-unknown-netbsd.tar.xz) = db1d8f81ef1850bdedb3fd197a2a7538088726e47ceb613a2690c4c11af03674
-SHA512 (rust-1.64.0-sparc64-unknown-netbsd.tar.xz) = bff8153f8b0e70341b63ac55562bdedd1ff76f3919f07a9b96b58b723eee67f4091e820023d37efe44a1ecc0a152d717ecfcbb41d005fb28a7b87ac32541df02
-Size (rust-1.64.0-sparc64-unknown-netbsd.tar.xz) = 154799664 bytes
-BLAKE2s (rust-1.64.0-x86_64-apple-darwin.tar.gz) = 2dc2518ae1901b6c122c40eb3d8882ccc03aa9c9ed1e4a5f084afb3d5180b2e0
-SHA512 (rust-1.64.0-x86_64-apple-darwin.tar.gz) = b77f3742d7152e5fca5341455c26551f613d45d02f62d28b149803a07a9326bf5d66bae58f1dbf52cc1724b2223623ed67c3360ef169756cb6ee7bf1e3ae1ee9
-Size (rust-1.64.0-x86_64-apple-darwin.tar.gz) = 308074220 bytes
-BLAKE2s (rust-1.64.0-x86_64-unknown-freebsd.tar.gz) = 53096277f018d9f137a7034677655022ea4c3d1f8eab1e031156440eabb72140
-SHA512 (rust-1.64.0-x86_64-unknown-freebsd.tar.gz) = 6782e614a8e7fdc4a8de5eeda4605cacf174fa182f447d90fe99eb8bde1ffffc12093f2018d7050f48f1fe27aad6fd187c18f2ad4e023f37d459e60eb5c11251
-Size (rust-1.64.0-x86_64-unknown-freebsd.tar.gz) = 295539873 bytes
-BLAKE2s (rust-1.64.0-x86_64-unknown-linux-gnu.tar.gz) = 20a707652941e6d1f72612cb5d01f984be5b13908b9e572f080b6c2fa1a98c0d
-SHA512 (rust-1.64.0-x86_64-unknown-linux-gnu.tar.gz) = c74dd6d1bc92db74ee16d951c48234ec0da484b8b4a26eedd1a1abbb737329c6fb4c07ca5bf896215d6422a8c71adc285b31428a286cf783f013cb529de87515
-Size (rust-1.64.0-x86_64-unknown-linux-gnu.tar.gz) = 278604926 bytes
-BLAKE2s (rust-1.64.0-x86_64-unknown-netbsd.tar.xz) = c9ea3782495c4beb89bf6971af76184fbd13675eb445db4d105a6917d161ee40
-SHA512 (rust-1.64.0-x86_64-unknown-netbsd.tar.xz) = 35f9dbd04b0fc2a2a3f0b919dfadd68eb42b9f880543138be3f5a86c0bbbd8a59e82e2124293b951729ce252ad70877d6f1482eb3a30b9a11ef736e29d2bba6a
-Size (rust-1.64.0-x86_64-unknown-netbsd.tar.xz) = 178537552 bytes
-BLAKE2s (rust-std-1.64.0-aarch64-apple-darwin.tar.gz) = 43598162948737b0de41889189ddef5709f0d19a5a8d27ad51c89d442abddfbd
-SHA512 (rust-std-1.64.0-aarch64-apple-darwin.tar.gz) = fc90aa9dbc8c141e66950ba0f14079f95adc702473b07067d1644f2709e6e19f6a68f8961542fa42eb591afc1b9d1e3a658d2705c29a17c922dbc96eb2deb6c6
-Size (rust-std-1.64.0-aarch64-apple-darwin.tar.gz) = 40852207 bytes
-BLAKE2s (rust-std-1.64.0-aarch64-unknown-linux-gnu.tar.gz) = a6544a2e61fde414a0a9a35cdc6443eec4f8d7dfae6e643f7b8b1a455a161088
-SHA512 (rust-std-1.64.0-aarch64-unknown-linux-gnu.tar.gz) = 886141f52cb9215f5ca7f891f8b269b94e8c5c8b41efd007a6a5277cd9925efb078fd8cc413a56dcb1d591af876ae2f69a860216cb022f545de1ad31c819967c
-Size (rust-std-1.64.0-aarch64-unknown-linux-gnu.tar.gz) = 63376902 bytes
-BLAKE2s (rust-std-1.64.0-aarch64-unknown-netbsd.tar.xz) = 3e827b680536df3e9965e747886808df142e9a24bed539d307037d1f54cb0774
-SHA512 (rust-std-1.64.0-aarch64-unknown-netbsd.tar.xz) = 63da2718bb0127b94c29fbe6c119f7e86af2c136c3bdb7421b8bd836302932931f6ee172626b4467be5a9e3b2ca5cbba887ff980b9749d3cd0a9d52d8ae6f137
-Size (rust-std-1.64.0-aarch64-unknown-netbsd.tar.xz) = 23337716 bytes
-BLAKE2s (rust-std-1.64.0-aarch64_be-unknown-netbsd.tar.xz) = 6974e8af0bb937ebc0c3622661231d1e329cb13edcc71e352f763433b383f4dd
-SHA512 (rust-std-1.64.0-aarch64_be-unknown-netbsd.tar.xz) = 26a88d2fd530af3f74281a3a4fc63a232d9d61f55b4ab6587f7beeaae5404b98446ae24e62961ed366705e54e22d6e2a04b09948004aa016b28096c47e5e2b49
-Size (rust-std-1.64.0-aarch64_be-unknown-netbsd.tar.xz) = 23301696 bytes
-BLAKE2s (rust-std-1.64.0-arm-unknown-linux-gnueabihf.tar.gz) = 191e0761caa575a97b653485c642ed3d1bc28e3a5781624b78eb0899009b198c
-SHA512 (rust-std-1.64.0-arm-unknown-linux-gnueabihf.tar.gz) = 6cbf61ad9f0dd313a3d54fa5858a4ed6da1d62299704524b43771b2204d74fdbd715f0640f0c0f535a0536d80a00b47e143a63095a4c3b42e8a12cfdfb1cda50
-Size (rust-std-1.64.0-arm-unknown-linux-gnueabihf.tar.gz) = 37191437 bytes
-BLAKE2s (rust-std-1.64.0-armv6-unknown-netbsd-eabihf.tar.xz) = dd763d197fc1fc2e417b8719e1568fac22df606e383a53e76537f08e7051483a
-SHA512 (rust-std-1.64.0-armv6-unknown-netbsd-eabihf.tar.xz) = 4da70b642ad95d5d5982671455e35e3721dc85b72219ad618dcae0a6cd15577de05e67224b5346e6b7bc343cb0a2dbcf66a1410f81b9c89140cbd60c8707f9d5
-Size (rust-std-1.64.0-armv6-unknown-netbsd-eabihf.tar.xz) = 21527316 bytes
-BLAKE2s (rust-std-1.64.0-armv7-unknown-linux-gnueabihf.tar.gz) = c097faa3390e48d8311a2386886f9aebb070f2c72bf5e7962f54fa2247d149d4
-SHA512 (rust-std-1.64.0-armv7-unknown-linux-gnueabihf.tar.gz) = 8af103400c35ca8974fa5875610be890267d954bf910e3bfd2938a518d9db1a49d7c2af421f558c59347f9f316748a384ca24bfb9fe7c2a7ab7bd11d9bbe7766
-Size (rust-std-1.64.0-armv7-unknown-linux-gnueabihf.tar.gz) = 38950145 bytes
-BLAKE2s (rust-std-1.64.0-armv7-unknown-netbsd-eabihf.tar.xz) = cf209b4e1bac81029f1a30626d844616efe3b81ffb8bc8ff49215385d0e7053f
-SHA512 (rust-std-1.64.0-armv7-unknown-netbsd-eabihf.tar.xz) = 9616fd2cb93b1c2aa1ac070640a834696958a1e2c4354948637bebccb493847403043fc8256aafd0c7c5cac81f87683f5be296032c79a699a36179b9dbcc3548
-Size (rust-std-1.64.0-armv7-unknown-netbsd-eabihf.tar.xz) = 22529920 bytes
-BLAKE2s (rust-std-1.64.0-i586-unknown-netbsd.tar.xz) = 7485113a2c7c4f20d73558362d2e303bb04cb582ed0339ccba5593dec87a662e
-SHA512 (rust-std-1.64.0-i586-unknown-netbsd.tar.xz) = c5d157932b72b8aa3e78b85e33d1cd51e46877e3f89d74c836d74e40446bded6ec8a15fef239f196ddc5b6cd43c25144f1d9620f57d8495bb0cdec0572a2b7ab
-Size (rust-std-1.64.0-i586-unknown-netbsd.tar.xz) = 23407976 bytes
-BLAKE2s (rust-std-1.64.0-i686-unknown-linux-gnu.tar.gz) = c61c865716b19f5ccfca97d15636792a6a59e30dc8151e49ca34cf4ad4478a5b
-SHA512 (rust-std-1.64.0-i686-unknown-linux-gnu.tar.gz) = 3e1481b2182f2faf87a5756d20a87fc07cf1da249c2beddb33c9557a3ad13f80607b714da86d9e2401c3cae59469d24b8c4b8297e31472383949b6888c55fb0f
-Size (rust-std-1.64.0-i686-unknown-linux-gnu.tar.gz) = 40951154 bytes
-BLAKE2s (rust-std-1.64.0-powerpc-unknown-netbsd.tar.xz) = c4e4b44345c14b3a39d20915890ba2d7e6579734cb9a8bf2f1742557feeac34c
-SHA512 (rust-std-1.64.0-powerpc-unknown-netbsd.tar.xz) = b3d520fe26e6aff6721115fb128dafadc190bc2501bb56cee23b67cda9cbe34811886bb73fd476dacd25d43db281ba9efce6e675a113c2e60dfa7b9761b93ff8
-Size (rust-std-1.64.0-powerpc-unknown-netbsd.tar.xz) = 21383612 bytes
-BLAKE2s (rust-std-1.64.0-powerpc-unknown-netbsd90.tar.xz) = 17498a609df2d2f63122cfa74f11c06cfb6a24745e8ee39b4d44b1796dd0b971
-SHA512 (rust-std-1.64.0-powerpc-unknown-netbsd90.tar.xz) = 2ea09a94c4a837f0a78cab8f3c391db482fb59e0e92e2cfe84092e52998eb052b84a37adf0faf5db641999fdc17d7dc458b3f873770702d02f051a1a39a6ffc7
-Size (rust-std-1.64.0-powerpc-unknown-netbsd90.tar.xz) = 21412256 bytes
-BLAKE2s (rust-std-1.64.0-sparc64-unknown-netbsd.tar.xz) = 5eb4209839c53757fccc83e927d513678e71b98f241d95f63d8813f7b443fbd6
-SHA512 (rust-std-1.64.0-sparc64-unknown-netbsd.tar.xz) = b1cc089d0395a552168bb2812a87e6330c0dba5b25f3433abc40ab32ff0016e8afefe83506d5a974ca07e243bb31ff4092674b9220e6fdd01074b08300f63254
-Size (rust-std-1.64.0-sparc64-unknown-netbsd.tar.xz) = 21317136 bytes
-BLAKE2s (rust-std-1.64.0-x86_64-apple-darwin.tar.gz) = 54b5ad3479844d274c2110a06de33958afd776e2d323c7e232a2359f2b94ec75
-SHA512 (rust-std-1.64.0-x86_64-apple-darwin.tar.gz) = 33931df7ff04362238fc5789e0f05f75cb7bdeef3a4532c607c921a5b06371fb30d4d575ea360a3da364c504cad0f87afe0464c358439cc21def4eae9a45832d
-Size (rust-std-1.64.0-x86_64-apple-darwin.tar.gz) = 41561388 bytes
-BLAKE2s (rust-std-1.64.0-x86_64-unknown-freebsd.tar.gz) = c247b73615f3a2d430dccdbeb7471ffd36a17d9d3afc9e24fcf1ac2a687ff215
-SHA512 (rust-std-1.64.0-x86_64-unknown-freebsd.tar.gz) = 1d7e53dee5a13e9ce95e50a96fe744d23f8589ef749fb4b22db11d25ba5439cb0c3ddcc8fb6c3c70b6441f1211b59ea236bf39af4f04ffba321d158d0163aed0
-Size (rust-std-1.64.0-x86_64-unknown-freebsd.tar.gz) = 43726303 bytes
-BLAKE2s (rust-std-1.64.0-x86_64-unknown-linux-gnu.tar.gz) = 1e7cb20e70f9ce09ce099628f381b6c99660086b07dff3dada6f3756b2a61168
-SHA512 (rust-std-1.64.0-x86_64-unknown-linux-gnu.tar.gz) = a04840d22919d02bd6c60f9e496fb69f6dece9a9c7000aaca1e81ee0b599d6375f146054e8b36d28d858ec1de9087ce69fa776cec32decbf96a19aa01c678b5a
-Size (rust-std-1.64.0-x86_64-unknown-linux-gnu.tar.gz) = 45367042 bytes
-BLAKE2s (rust-std-1.64.0-x86_64-unknown-netbsd.tar.xz) = e69610a09255d56e7883fd06240b398e7980c746ca7d14bb718b6e8ca7fb5324
-SHA512 (rust-std-1.64.0-x86_64-unknown-netbsd.tar.xz) = 7b34177ed20de0edfab4f2256ec9e263da82ed09a774f4f51ec874c22a72afde69e550a492f802c622f31b5c57d99284b7abe51821e1bc27cc3f6744fab4851d
-Size (rust-std-1.64.0-x86_64-unknown-netbsd.tar.xz) = 26757388 bytes
-BLAKE2s (rustc-1.65.0-src.tar.gz) = 8928f0949b66cc135a472dca1f3cc4a1749773dc90cc421399b5f276b828828e
-SHA512 (rustc-1.65.0-src.tar.gz) = e7387706c5c30e572c34b755b393dbc0c76061dbff777b5b4a75f94f2699e9c5152001cdaba07f8c465d93e9169b90bc57fe08dc8223d9ab9c878668c328fb44
-Size (rustc-1.65.0-src.tar.gz) = 208744689 bytes
-SHA1 (patch-compiler_rustc__codegen__ssa_src_back_linker.rs) = bfa0196fa53ac0fc95dc30a4a5097b8db805251e
+SHA1 (patch-compiler_rustc__codegen__ssa_src_back_linker.rs) = 62819cf6db7d2e3e77d433fe883046c28fc20d91
 SHA1 (patch-compiler_rustc__llvm_build.rs) = e99c9eb2fd1731c0e6f5d38ff74bf28bf0be87d0
 SHA1 (patch-compiler_rustc__target_src_spec_aarch64__be__unknown__netbsd.rs) = c81d0d288699056ae45569f8d0a1c9bb08153ec4
-SHA1 (patch-compiler_rustc__target_src_spec_i586__unknown__netbsd.rs) = 71b5736952023931c94c6996e73cdcfc66b429fe
+SHA1 (patch-compiler_rustc__target_src_spec_i586__unknown__netbsd.rs) = 9176248e6dbd5648a4f9c7100b30ad4a58ea3c94
 SHA1 (patch-compiler_rustc__target_src_spec_mipsel__unknown__netbsd.rs) = 2c5d6088a7df293b6c4ffea54c8751d2f5722495
 SHA1 (patch-compiler_rustc__target_src_spec_mod.rs) = 5042a89fe5da4219b54082c104a1b44ba7cc395e
-SHA1 (patch-compiler_rustc__target_src_spec_netbsd__base.rs) = 57b26a7eb55a4a8e9ec8c4fb8b3b318a25d5a78b
+SHA1 (patch-compiler_rustc__target_src_spec_netbsd__base.rs) = f732bf814b178318ccee9753f7777748662598a7
 SHA1 (patch-library_backtrace_src_symbolize_gimli.rs) = 32ab8ea3809cd4f6fee9fc0df5db47d76ccbd9d2
 SHA1 (patch-library_backtrace_src_symbolize_gimli_elf.rs) = 56621c10310914672a851cf5dfbf343a9ff4e1be
 SHA1 (patch-library_std_src_sys_unix_mod.rs) = f8669d680f169137ac2891af2977909619366a97
@@ -122,8 +14,9 @@ SHA1 (patch-library_std_src_sys_unix_thread.rs) = e5f661b3dd00058e874fe60cd89d9e
 SHA1 (patch-library_std_src_sys_unix_thread__parker_netbsd.rs) = a8dcda5f9ff273b53f5b59718020c24526399a37
 SHA1 (patch-library_unwind_build.rs) = df092d5c07fa0be63a9510f1d6a77e5094ca3b15
 SHA1 (patch-src_bootstrap_bootstrap.py) = fdb4e2e7fd61ae10f4f4b06ef895a8ebf47fbf7a
-SHA1 (patch-src_bootstrap_builder.rs) = f9bd1fb6a6fef46ef93ed81c409768e632cd8c67
-SHA1 (patch-src_bootstrap_compile.rs) = c57799aee9c12603f5e6a13cb6b5befc8f96b4b6
+SHA1 (patch-src_bootstrap_builder.rs) = 30065ebf270f725d4decda1eb4ced603da25748b
+SHA1 (patch-src_bootstrap_compile.rs) = 94b05db59b8bc50dce48537aeb72ba9ce293bb07
+SHA1 (patch-src_bootstrap_install.rs) = 65b0571a6297c3469cd50cde9a8dbf86638136f4
 SHA1 (patch-src_bootstrap_lib.rs) = f6918e0939b6fe63ae9b524d4c809375149efb15
 SHA1 (patch-src_llvm-project_llvm_CMakeLists.txt) = 7abfabb6ec70df229a69355f8c76825610165c37
 SHA1 (patch-src_llvm-project_llvm_cmake_modules_AddLLVM.cmake) = 67de0d9fc105ef7ea7a0d96fa25fc779c2b89024
@@ -137,17 +30,14 @@ SHA1 (patch-src_tools_rust-installer_install-template.sh) = ca769db07986ded26d92
 SHA1 (patch-vendor_backtrace_src_symbolize_gimli.rs) = b93148ff72a60a17c6a444f2616386c40d872153
 SHA1 (patch-vendor_backtrace_src_symbolize_gimli_elf.rs) = 308538090d9ce11d206d6eef0e675581a1fc6e80
 SHA1 (patch-vendor_cc_src_lib.rs) = dc40f4fb0f7508b886d6d93b27e9936403a96765
-SHA1 (patch-vendor_crossbea_no__atomic.rs) = 6054fa9cb00b9cc7d9125354702945ac22ad6aeb
-SHA1 (patch-vendor_crossbeam-epch-0.9.6_no__atomic.rs) = 96334fb4ceee3332b5f1c7750c93664485b01365
+SHA1 (patch-vendor_crossbeam-epoch-0.9.6_no__atomic.rs) = 96334fb4ceee3332b5f1c7750c93664485b01365
 SHA1 (patch-vendor_crossbeam-epoch-0.9.8_no__atomic.rs) = fce16287a86bfa54f4b138f0c4a6c477f2d2e217
 SHA1 (patch-vendor_crossbeam-epoch_no__atomic.rs) = ee6294d0cef62e843aa7d4e693cc72b1347ff6e1
 SHA1 (patch-vendor_crossbeam-queue_no__atomic.rs) = aaa732788e97803eb7e219614f5e7ff1d9dc1d0f
-SHA1 (patch-vendor_crossbeam-utils-0.8.0_no__atomic.rs) = 7f31d6c45ef843eb2595df58e46b0e44dded0cc9
+SHA1 (patch-vendor_crossbeam-utils-0.8.8_no__atomic.rs) = 7f31d6c45ef843eb2595df58e46b0e44dded0cc9
 SHA1 (patch-vendor_crossbeam-utils_no__atomic.rs) = 4ada02a26490ca6fcd87af999bbb8cef48078060
+SHA1 (patch-vendor_crossbeam_no__atomic.rs) = 6054fa9cb00b9cc7d9125354702945ac22ad6aeb
 SHA1 (patch-vendor_kqueue_src_time.rs) = 21950e7d79fb88257bdb11b988f2a3ae0084ba3d
-SHA1 (patch-vendor_libc-0.2.131_src_unix_bsd_netbsdlike_netbsd_mips.rs) = 07fb20807cec24932dff175cfadf028a993969bf
-SHA1 (patch-vendor_libc-0.2.131_src_unix_bsd_netbsdlike_netbsd_mod.rs) = ed30af5e87dc8e7668d04f31b29c2c73a57e8adc
-SHA1 (patch-vendor_libc-0.2.131_src_unix_solarish_mod.rs) = cbf7785c7ec801b86c8e9277972aef7c0fa4bda6
 SHA1 (patch-vendor_libc_src_unix_bsd_netbsdlike_netbsd_mips.rs) = 09326b70d7821b1742285c464c70b347400191d7
 SHA1 (patch-vendor_libc_src_unix_bsd_netbsdlike_netbsd_mod.rs) = 94608147cae5fd7a6ae2aed14ca8da4b1c92db1e
 SHA1 (patch-vendor_libc_src_unix_solarish_mod.rs) = 8364e19ea09203d32494c37ff3db19fe3d6b9d8a
@@ -158,4 +48,4 @@ SHA1 (patch-vendor_openssl-sys_build_main.rs) = 3924efda02e7d8e2115db55b84a7dcc9
 SHA1 (patch-vendor_rustc-ap-rustc__target_src_spec_aarch64__be__unknown__netbsd.rs) = 4e86aec4c89db9a331950a12f8ec7b8aaa50eed7
 SHA1 (patch-vendor_stacker_src_lib.rs) = e00a1e95eb16540ff182715db778bf97ebd07a5e
 SHA1 (patch-vendor_target-lexicon_src_targets.rs) = 7aab839a16e51534aee01a8d3098d7a916803ec4
-SHA1 (patch-vendor_valuable_no__atomic.rs) = 4c3415e08569c6330f238ff47b25ef229ab7b68f
+SHA1 (patch-vendor_valuable_no__atomic.rs) = 3a40cb846bf1fae864c55a0ddba8fdeb5efcba72
diff --git a/rust/do-cross.mk b/rust/do-cross.mk
index 584c4b9929..0e9a904194 100644
--- a/rust/do-cross.mk
+++ b/rust/do-cross.mk
@@ -5,15 +5,15 @@
 VERSION!=	make show-var VARNAME=PKGVERSION
 V_NOREV!=	make show-var VARNAME=PKGVERSION_NOREV
 
-SHORT_TARGETS+= 	armv7
-SHORT_TARGETS+= 	armv6
-SHORT_TARGETS+= 	sparc64
-SHORT_TARGETS+= 	powerpc
-SHORT_TARGETS+= 	powerpc90
-SHORT_TARGETS+= 	arm64
-SHORT_TARGETS+= 	arm64_be
-SHORT_TARGETS+= 	i386
-#SHORT_TARGETS+= 	mipsel	# produces 64-bit mips instructions(!)
+SHORT_TARGETS+=		armv7
+SHORT_TARGETS+=		armv6
+SHORT_TARGETS+=		sparc64
+SHORT_TARGETS+=		powerpc
+SHORT_TARGETS+=		powerpc90
+SHORT_TARGETS+=		arm64
+SHORT_TARGETS+=		arm64_be
+SHORT_TARGETS+=		i386
+#SHORT_TARGETS+=	mipsel	# produces 64-bit mips instructions(!)
 
 # Conditional local overrides of ROOT.* variables:
 .sinclude "local-roots.mk"
@@ -77,7 +77,7 @@ CA.${st}+=--set=target.${TGT.${st}}.linker=${SCRIPTS}/gcc-wrap
 CA.${st}+=--set=target.${TGT.${st}}.ar=${ROOT.${st}}/tools/bin/${G_TGT.${st}}-ar
 do-${st}:
 	mkdir -p dist
-	@echo "=======> Cross-building rust for ${st}"
+	@${ECHO} "=======> Cross-building rust for ${st}"
 	${DEBUG} make -f Makefile clean
 	${DEBUG} env \
 		CROSS_ROOT=${ROOT.${st}} \
@@ -95,13 +95,13 @@ do-${st}:
 		src=$${distdir}/$${comp}-${V_NOREV}-${TGT.${st}}.tar.xz; \
 		tgt=dist/$${comp}-${VERSION}-$${TT}.tar.xz; \
 		if [ ! -f "$${tgt}" ]; then \
-			echo ln $${src} $${tgt}; \
+			${ECHO} ln $${src} $${tgt}; \
 			${DEBUG} ln $${src} $${tgt}; \
 		fi; \
 	done; \
 	src_comp=rust-src-${V_NOREV}.tar.xz; \
 	if [ ! -f dist/$${src_comp} ]; then \
-		echo ln $${distdir}/$${src_comp} dist; \
+		${ECHO} ln $${distdir}/$${src_comp} dist; \
 		${DEBUG} ln $${distdir}/$${src_comp} dist; \
 	fi
 .endfor
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 32343104c5..d603fa804b 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
@@ -2,9 +2,9 @@ $NetBSD$
 
 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.orig	2022-12-12 16:02:12.000000000 +0000
 +++ compiler/rustc_codegen_ssa/src/back/linker.rs
-@@ -326,7 +326,7 @@ impl<'a> GccLinker<'a> {
+@@ -325,7 +325,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.unstable_opts.osx_rpath_install_name {
diff --git a/rust/patches/patch-compiler_rustc__target_src_spec_i586__unknown__netbsd.rs b/rust/patches/patch-compiler_rustc__target_src_spec_i586__unknown__netbsd.rs
index 6b3704c65a..f48263ca61 100644
--- a/rust/patches/patch-compiler_rustc__target_src_spec_i586__unknown__netbsd.rs
+++ b/rust/patches/patch-compiler_rustc__target_src_spec_i586__unknown__netbsd.rs
@@ -2,16 +2,19 @@ $NetBSD$
 
 Add an i586 / pentium variant, in an effort to support AMD Geode etc.
 
---- compiler/rustc_target/src/spec/i586_unknown_netbsd.rs.orig	2021-06-19 17:28:44.197224530 +0000
+--- compiler/rustc_target/src/spec/i586_unknown_netbsd.rs.orig	2022-12-21 19:11:11.452711494 +0000
 +++ compiler/rustc_target/src/spec/i586_unknown_netbsd.rs
-@@ -0,0 +1,19 @@
-+use crate::spec::{LinkerFlavor, StackProbeType, Target, TargetOptions};
+@@ -0,0 +1,26 @@
++use crate::spec::{Cc, LinkerFlavor, StackProbeType, Target, TargetOptions};
 +
 +pub fn target() -> Target {
 +    let mut base = super::netbsd_base::opts();
 +    base.cpu = "pentium".into();
 +    base.max_atomic_width = Some(64);
-+    base.pre_link_args.entry(LinkerFlavor::Gcc).or_default().push("-m32".into());
++    base.pre_link_args
++        .entry(LinkerFlavor::Unix(Cc::Yes))
++        .or_default()
++        .push("-m32".into());
 +    // don't use probe-stack=inline-asm until rust-lang/rust#83139 is resolved.
 +    base.stack_probes = StackProbeType::Call;
 +
@@ -19,8 +22,12 @@ Add an i586 / pentium variant, in an effort to support AMD Geode etc.
 +        llvm_target: "i586-unknown-netbsdelf".into(),
 +        pointer_width: 32,
 +        data_layout: "e-m:e-p:32:32-p270:32:32-p271:32:32-p272:64:64-\
-+            f64:32:64-f80:32-n8:16:32-S128".into(),
++            f64:32:64-f80:32-n8:16:32-S128"
++            .into(),
 +        arch: "x86".into(),
-+        options: TargetOptions { mcount: "__mcount".into(), ..base },
++        options: TargetOptions {
++            mcount: "__mcount".into(),
++            ..base
++        },
 +    }
 +}
diff --git a/rust/patches/patch-compiler_rustc__target_src_spec_netbsd__base.rs b/rust/patches/patch-compiler_rustc__target_src_spec_netbsd__base.rs
index 1272b31f09..76224e6100 100644
--- a/rust/patches/patch-compiler_rustc__target_src_spec_netbsd__base.rs
+++ b/rust/patches/patch-compiler_rustc__target_src_spec_netbsd__base.rs
@@ -3,17 +3,16 @@ $NetBSD$
 For the benefit of powerpc, when libatomic-links is installed,
 search the directory containing the symlinks to -latomic.
 
---- compiler/rustc_target/src/spec/netbsd_base.rs.orig	2022-05-18 01:29:36.000000000 +0000
+--- compiler/rustc_target/src/spec/netbsd_base.rs.orig	2022-12-12 16:02:12.000000000 +0000
 +++ compiler/rustc_target/src/spec/netbsd_base.rs
-@@ -1,6 +1,14 @@
+@@ -1,12 +1,20 @@
 -use crate::spec::{cvs, RelroLevel, TargetOptions};
-+use crate::spec::{cvs, RelroLevel, LinkArgs, LinkerFlavor, TargetOptions};
++use crate::spec::{cvs, Cc, RelroLevel, LinkerFlavor, TargetOptions};
  
  pub fn opts() -> TargetOptions {
-+    let mut args = LinkArgs::new();
-+    args.insert (
-+        LinkerFlavor::Gcc,
-+        vec![
++    let pre_link_args = TargetOptions::link_args(
++        LinkerFlavor::Unix(Cc::Yes),
++       &[
 +            // For the benefit of powerpc, when libatomic-links is installed,
 +            "-Wl,-L@PREFIX@/lib/libatomic".into(),
 +        ],
@@ -21,11 +20,10 @@ search the directory containing the symlinks to -latomic.
      TargetOptions {
          os: "netbsd".into(),
          dynamic_linking: true,
-@@ -8,6 +16,7 @@ pub fn opts() -> TargetOptions {
          families: cvs!["unix"],
          no_default_libraries: false,
          has_rpath: true,
-+        pre_link_args: args,
++        pre_link_args,
          position_independent_executables: true,
          relro_level: RelroLevel::Full,
          use_ctors_section: true,
diff --git a/rust/patches/patch-src_bootstrap_builder.rs b/rust/patches/patch-src_bootstrap_builder.rs
index 0bb7e9dd84..7856ff5fe5 100644
--- a/rust/patches/patch-src_bootstrap_builder.rs
+++ b/rust/patches/patch-src_bootstrap_builder.rs
@@ -3,9 +3,9 @@ $NetBSD: patch-src_bootstrap_builder.rs,v 1.11 2020/07/06 13:56:32 he Exp $
 Do not install 'src'.
 Use @PREFIX@, not $ORIGIN in rpath.
 
---- src/bootstrap/builder.rs.orig	2022-06-27 13:37:07.000000000 +0000
+--- src/bootstrap/builder.rs.orig	2022-12-12 16:02:12.000000000 +0000
 +++ src/bootstrap/builder.rs
-@@ -742,7 +742,6 @@ impl<'a> Builder<'a> {
+@@ -745,7 +745,6 @@ impl<'a> Builder<'a> {
                  install::Clippy,
                  install::Miri,
                  install::Analysis,
@@ -13,7 +13,7 @@ Use @PREFIX@, not $ORIGIN in rpath.
                  install::Rustc
              ),
              Kind::Run => describe!(
-@@ -1706,7 +1705,7 @@ impl<'a> Builder<'a> {
+@@ -1711,7 +1710,7 @@ impl<'a> Builder<'a> {
                  Some("-Wl,-rpath,@loader_path/../lib")
              } else if !target.contains("windows") {
                  rustflags.arg("-Clink-args=-Wl,-z,origin");
diff --git a/rust/patches/patch-src_bootstrap_compile.rs b/rust/patches/patch-src_bootstrap_compile.rs
index 6dc2ebbb8a..44405c5a74 100644
--- a/rust/patches/patch-src_bootstrap_compile.rs
+++ b/rust/patches/patch-src_bootstrap_compile.rs
@@ -2,12 +2,12 @@ $NetBSD: patch-src_bootstrap_compile.rs,v 1.1 2020/03/14 08:02:46 jperkin Exp $
 
 On Darwin, do not use @rpath for internal libraries.
 
---- src/bootstrap/compile.rs.orig	2021-09-06 18:42:35.000000000 +0000
+--- src/bootstrap/compile.rs.orig	2022-12-12 16:02:12.000000000 +0000
 +++ src/bootstrap/compile.rs
-@@ -414,7 +414,7 @@ fn copy_sanitizers(
+@@ -465,7 +465,7 @@ fn copy_sanitizers(
  
          if target == "x86_64-apple-darwin" || target == "aarch64-apple-darwin" {
-             // Update the library’s install name to reflect that it has has been renamed.
+             // Update the library’s install name to reflect that it has been renamed.
 -            apple_darwin_update_library_name(&dst, &format!("@rpath/{}", &runtime.name));
 +            apple_darwin_update_library_name(&dst, &format!("@PREFIX@/lib/{}", &runtime.name));
              // Upon renaming the install name, the code signature of the file will invalidate,
diff --git a/rust/patches/patch-src_bootstrap_install.rs b/rust/patches/patch-src_bootstrap_install.rs
new file mode 100644
index 0000000000..ff63ba8321
--- /dev/null
+++ b/rust/patches/patch-src_bootstrap_install.rs
@@ -0,0 +1,25 @@
+$NetBSD$
+
+Backport https://github.com/rust-lang/rust/commit/bcb75e61
+
+--- src/bootstrap/install.rs.orig	2022-12-12 16:02:12.000000000 +0000
++++ src/bootstrap/install.rs
+@@ -200,10 +200,14 @@ install!((self, builder, _config),
+         install_sh(builder, "clippy", self.compiler.stage, Some(self.target), &tarball);
+     };
+     Miri, alias = "miri", Self::should_build(_config), only_hosts: true, {
+-        let tarball = builder
+-            .ensure(dist::Miri { compiler: self.compiler, target: self.target })
+-            .expect("missing miri");
+-        install_sh(builder, "miri", self.compiler.stage, Some(self.target), &tarball);
++        if let Some(tarball) = builder.ensure(dist::Miri { compiler: self.compiler, target: self.target }) {
++            install_sh(builder, "miri", self.compiler.stage, Some(self.target), &tarball);
++        } else {
++            // Miri is only available on nightly
++            builder.info(
++                &format!("skipping Install miri stage{} ({})", self.compiler.stage, self.target),
++            );
++        }
+     };
+     Rustfmt, alias = "rustfmt", Self::should_build(_config), only_hosts: true, {
+         if let Some(tarball) = builder.ensure(dist::Rustfmt {
diff --git a/rust/patches/patch-vendor_crossbea_no__atomic.rs b/rust/patches/patch-vendor_crossbea_no__atomic.rs
deleted file mode 100644
index d6e95453b3..0000000000
--- a/rust/patches/patch-vendor_crossbea_no__atomic.rs
+++ /dev/null
@@ -1,15 +0,0 @@
-$NetBSD$
-
-Add "mipsel-unknown-netbsd" to the list who don't have
-native 64-bit atomic ops.
-
---- vendor/crossbeam/no_atomic.rs.orig	2022-09-19 15:35:01.000000000 +0000
-+++ vendor/crossbeam/no_atomic.rs
-@@ -28,6 +28,7 @@ const NO_ATOMIC_64: &[&str] = &[
-     "mipsel-unknown-linux-musl",
-     "mipsel-unknown-linux-uclibc",
-     "mipsel-unknown-none",
-+    "mipsel-unknown-netbsd",
-     "mipsisa32r6-unknown-linux-gnu",
-     "mipsisa32r6el-unknown-linux-gnu",
-     "powerpc-unknown-linux-gnu",
diff --git a/rust/patches/patch-vendor_crossbeam-epch-0.9.6_no__atomic.rs b/rust/patches/patch-vendor_crossbeam-epch-0.9.6_no__atomic.rs
deleted file mode 100644
index 2b024e978b..0000000000
--- a/rust/patches/patch-vendor_crossbeam-epch-0.9.6_no__atomic.rs
+++ /dev/null
@@ -1,15 +0,0 @@
-$NetBSD$
-
-Add "mipsel-unknown-netbsd" to the list who don't have 
-native 64-bit atomic ops.
-
---- vendor/crossbeam-epoch-0.9.6/no_atomic.rs.orig	2022-09-19 15:35:01.000000000 +0000
-+++ vendor/crossbeam-epoch-0.9.6/no_atomic.rs
-@@ -31,6 +31,7 @@ const NO_ATOMIC_64: &[&str] = &[
-     "mipsel-unknown-linux-musl",
-     "mipsel-unknown-linux-uclibc",
-     "mipsel-unknown-none",
-+    "mipsel-unknown-netbsd",
-     "mipsisa32r6-unknown-linux-gnu",
-     "mipsisa32r6el-unknown-linux-gnu",
-     "powerpc-unknown-freebsd",
diff --git a/rust/patches/patch-vendor_crossbeam-epoch-0.9.6_no__atomic.rs b/rust/patches/patch-vendor_crossbeam-epoch-0.9.6_no__atomic.rs
new file mode 100644
index 0000000000..2b024e978b
--- /dev/null
+++ b/rust/patches/patch-vendor_crossbeam-epoch-0.9.6_no__atomic.rs
@@ -0,0 +1,15 @@
+$NetBSD$
+
+Add "mipsel-unknown-netbsd" to the list who don't have 
+native 64-bit atomic ops.
+
+--- vendor/crossbeam-epoch-0.9.6/no_atomic.rs.orig	2022-09-19 15:35:01.000000000 +0000
++++ vendor/crossbeam-epoch-0.9.6/no_atomic.rs
+@@ -31,6 +31,7 @@ const NO_ATOMIC_64: &[&str] = &[
+     "mipsel-unknown-linux-musl",
+     "mipsel-unknown-linux-uclibc",
+     "mipsel-unknown-none",
++    "mipsel-unknown-netbsd",
+     "mipsisa32r6-unknown-linux-gnu",
+     "mipsisa32r6el-unknown-linux-gnu",
+     "powerpc-unknown-freebsd",
diff --git a/rust/patches/patch-vendor_crossbeam-utils-0.8.0_no__atomic.rs b/rust/patches/patch-vendor_crossbeam-utils-0.8.0_no__atomic.rs
deleted file mode 100644
index 6757627c15..0000000000
--- a/rust/patches/patch-vendor_crossbeam-utils-0.8.0_no__atomic.rs
+++ /dev/null
@@ -1,15 +0,0 @@
-$NetBSD$
-
-Add "mipsel-unknown-netbsd" to the list who don't have 
-native 64-bit atomic ops.
-
---- vendor/crossbeam-utils-0.8.8/no_atomic.rs.orig	2022-09-19 15:35:01.000000000 +0000
-+++ vendor/crossbeam-utils-0.8.8/no_atomic.rs
-@@ -36,6 +36,7 @@ const NO_ATOMIC_64: &[&str] = &[
-     "mipsel-unknown-linux-musl",
-     "mipsel-unknown-linux-uclibc",
-     "mipsel-unknown-none",
-+    "mipsel-unknown-netbsd",
-     "mipsisa32r6-unknown-linux-gnu",
-     "mipsisa32r6el-unknown-linux-gnu",
-     "msp430-none-elf",
diff --git a/rust/patches/patch-vendor_crossbeam-utils-0.8.8_no__atomic.rs b/rust/patches/patch-vendor_crossbeam-utils-0.8.8_no__atomic.rs
new file mode 100644
index 0000000000..6757627c15
--- /dev/null
+++ b/rust/patches/patch-vendor_crossbeam-utils-0.8.8_no__atomic.rs
@@ -0,0 +1,15 @@
+$NetBSD$
+
+Add "mipsel-unknown-netbsd" to the list who don't have 
+native 64-bit atomic ops.
+
+--- vendor/crossbeam-utils-0.8.8/no_atomic.rs.orig	2022-09-19 15:35:01.000000000 +0000
++++ vendor/crossbeam-utils-0.8.8/no_atomic.rs
+@@ -36,6 +36,7 @@ const NO_ATOMIC_64: &[&str] = &[
+     "mipsel-unknown-linux-musl",
+     "mipsel-unknown-linux-uclibc",
+     "mipsel-unknown-none",
++    "mipsel-unknown-netbsd",
+     "mipsisa32r6-unknown-linux-gnu",
+     "mipsisa32r6el-unknown-linux-gnu",
+     "msp430-none-elf",
diff --git a/rust/patches/patch-vendor_crossbeam_no__atomic.rs b/rust/patches/patch-vendor_crossbeam_no__atomic.rs
new file mode 100644
index 0000000000..d6e95453b3
--- /dev/null
+++ b/rust/patches/patch-vendor_crossbeam_no__atomic.rs
@@ -0,0 +1,15 @@
+$NetBSD$
+
+Add "mipsel-unknown-netbsd" to the list who don't have
+native 64-bit atomic ops.
+
+--- vendor/crossbeam/no_atomic.rs.orig	2022-09-19 15:35:01.000000000 +0000
++++ vendor/crossbeam/no_atomic.rs
+@@ -28,6 +28,7 @@ const NO_ATOMIC_64: &[&str] = &[
+     "mipsel-unknown-linux-musl",
+     "mipsel-unknown-linux-uclibc",
+     "mipsel-unknown-none",
++    "mipsel-unknown-netbsd",
+     "mipsisa32r6-unknown-linux-gnu",
+     "mipsisa32r6el-unknown-linux-gnu",
+     "powerpc-unknown-linux-gnu",
diff --git a/rust/patches/patch-vendor_libc-0.2.131_src_unix_bsd_netbsdlike_netbsd_mips.rs b/rust/patches/patch-vendor_libc-0.2.131_src_unix_bsd_netbsdlike_netbsd_mips.rs
deleted file mode 100644
index cc3a667dd8..0000000000
--- a/rust/patches/patch-vendor_libc-0.2.131_src_unix_bsd_netbsdlike_netbsd_mips.rs
+++ /dev/null
@@ -1,27 +0,0 @@
-$NetBSD$
-
---- vendor/libc-0.2.131/src/unix/bsd/netbsdlike/netbsd/mips.rs.orig	2022-11-21 21:09:34.700302249 +0000
-+++ vendor/libc-0.2.131/src/unix/bsd/netbsdlike/netbsd/mips.rs
-@@ -0,0 +1,22 @@
-+use PT_FIRSTMACH;
-+
-+pub type c_long = i32;
-+pub type c_ulong = u32;
-+pub type c_char = i8;
-+pub type __cpu_simple_lock_nv_t = ::c_int;
-+
-+// should be pub(crate), but that requires Rust 1.18.0
-+cfg_if! {
-+    if #[cfg(libc_const_size_of)] {
-+        #[doc(hidden)]
-+        pub const _ALIGNBYTES: usize = ::mem::size_of::<::c_longlong>() - 1;
-+    } else {
-+        #[doc(hidden)]
-+        pub const _ALIGNBYTES: usize = 8 - 1;
-+    }
-+}
-+
-+pub const PT_GETREGS: ::c_int = PT_FIRSTMACH + 1;
-+pub const PT_SETREGS: ::c_int = PT_FIRSTMACH + 2;
-+pub const PT_GETFPREGS: ::c_int = PT_FIRSTMACH + 3;
-+pub const PT_SETFPREGS: ::c_int = PT_FIRSTMACH + 4;
diff --git a/rust/patches/patch-vendor_libc-0.2.131_src_unix_bsd_netbsdlike_netbsd_mod.rs b/rust/patches/patch-vendor_libc-0.2.131_src_unix_bsd_netbsdlike_netbsd_mod.rs
deleted file mode 100644
index c76cdf2b01..0000000000
--- a/rust/patches/patch-vendor_libc-0.2.131_src_unix_bsd_netbsdlike_netbsd_mod.rs
+++ /dev/null
@@ -1,44 +0,0 @@
-$NetBSD$
-
---- vendor/libc-0.2.131/src/unix/bsd/netbsdlike/netbsd/mod.rs.orig	2022-11-02 16:21:41.000000000 +0000
-+++ vendor/libc-0.2.131/src/unix/bsd/netbsdlike/netbsd/mod.rs
-@@ -2971,6 +2971,22 @@ extern "C" {
-     pub fn kinfo_getvmmap(pid: ::pid_t, cntp: *mut ::size_t) -> *mut kinfo_vmentry;
- }
- 
-+#[link(name = "execinfo")]
-+extern "C" {
-+    pub fn backtrace(addrlist: *mut *mut ::c_void, len: ::size_t) -> ::size_t;
-+    pub fn backtrace_symbols(addrlist: *const *mut ::c_void, len: ::size_t) -> *mut *mut ::c_char;
-+    pub fn backtrace_symbols_fd(
-+        addrlist: *const *mut ::c_void,
-+        len: ::size_t,
-+        fd: ::c_int,
-+    ) -> ::c_int;
-+    pub fn backtrace_symbols_fmt(
-+        addrlist: *const *mut ::c_void,
-+        len: ::size_t,
-+        fmt: *const ::c_char,
-+    ) -> *mut *mut ::c_char;
-+}
-+
- cfg_if! {
-     if #[cfg(target_arch = "aarch64")] {
-         mod aarch64;
-@@ -2990,7 +3006,15 @@ cfg_if! {
-     } else if #[cfg(target_arch = "x86")] {
-         mod x86;
-         pub use self::x86::*;
-+    } else if #[cfg(target_arch = "mips")] {
-+        mod mips;
-+        pub use self::mips::*;
-+    } else if #[cfg(target_arch = "mipsel")] {
-+        mod mips;
-+        pub use self::mips::*;
-     } else {
--        // Unknown target_arch
-+        // Unknown target_arch, this should error out
-+        mod unknown;
-+        pub use self::unknown::*;
-     }
- }
diff --git a/rust/patches/patch-vendor_libc-0.2.131_src_unix_solarish_mod.rs b/rust/patches/patch-vendor_libc-0.2.131_src_unix_solarish_mod.rs
deleted file mode 100644
index 32ddc4092c..0000000000
--- a/rust/patches/patch-vendor_libc-0.2.131_src_unix_solarish_mod.rs
+++ /dev/null
@@ -1,15 +0,0 @@
-$NetBSD: patch-vendor_libc_src_unix_solarish_mod.rs,v 1.1 2019/05/31 14:11:23 jperkin Exp $
-
-Fix xattr build.
-
---- vendor/libc-0.2.131/src/unix/solarish/mod.rs.orig	2019-05-20 13:47:24.000000000 +0000
-+++ vendor/libc-0.2.131/src/unix/solarish/mod.rs
-@@ -1215,6 +1215,8 @@ pub const EOWNERDEAD: ::c_int = 58;
- pub const ENOTRECOVERABLE: ::c_int = 59;
- pub const ENOSTR: ::c_int = 60;
- pub const ENODATA: ::c_int = 61;
-+// This is not supported but is required for xattr
-+pub const ENOATTR: ::c_int = ::ENODATA;
- pub const ETIME: ::c_int = 62;
- pub const ENOSR: ::c_int = 63;
- pub const ENONET: ::c_int = 64;
diff --git a/rust/patches/patch-vendor_libc_src_unix_bsd_netbsdlike_netbsd_mips.rs b/rust/patches/patch-vendor_libc_src_unix_bsd_netbsdlike_netbsd_mips.rs
index 695fe830a5..514e6518ca 100644
--- a/rust/patches/patch-vendor_libc_src_unix_bsd_netbsdlike_netbsd_mips.rs
+++ b/rust/patches/patch-vendor_libc_src_unix_bsd_netbsdlike_netbsd_mips.rs
@@ -1,4 +1,4 @@
-# $NetBSD$
+$NetBSD$
 
 Add mips support.
 
diff --git a/rust/patches/patch-vendor_valuable_no__atomic.rs b/rust/patches/patch-vendor_valuable_no__atomic.rs
index f214c98768..f485c63d9d 100644
--- a/rust/patches/patch-vendor_valuable_no__atomic.rs
+++ b/rust/patches/patch-vendor_valuable_no__atomic.rs
@@ -1,5 +1,7 @@
 $NetBSD$
 
+Add mipsel-unknown-netbsd.
+
 --- vendor/valuable/no_atomic.rs.orig	2022-09-19 15:35:03.000000000 +0000
 +++ vendor/valuable/no_atomic.rs
 @@ -30,6 +30,7 @@ const NO_ATOMIC_64: &[&str] = &[


Home | Main Index | Thread Index | Old Index