pkgsrc-WIP-changes archive

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

Remove old versions of Rust



Module Name:	pkgsrc-wip
Committed By:	pin <voidpin%protonmail.com@localhost>
Pushed By:	pin
Date:		Thu Apr 18 11:37:57 2024 +0200
Changeset:	377241db7564641885fd8cb2b87a8e6e304e1581

Modified Files:
	Makefile
Removed Files:
	rust175-bin/DESCR
	rust175-bin/Makefile
	rust175-bin/buildlink3.mk
	rust175-bin/distinfo
	rust175-bin/files/install.sh
	rust175/DESCR
	rust175/HOWTO-BOOTSTRAP
	rust175/Makefile
	rust175/buildlink3.mk
	rust175/cargo.mk
	rust175/cross.mk
	rust175/distinfo
	rust175/do-cross.mk
	rust175/files/gcc-wrap
	rust175/options.mk
	rust175/patches/patch-compiler_rustc__codegen__ssa_src_back_linker.rs
	rust175/patches/patch-compiler_rustc__llvm_build.rs
	rust175/patches/patch-compiler_rustc__target_src_spec_base_netbsd.rs
	rust175/patches/patch-compiler_rustc__target_src_spec_mod.rs
	rust175/patches/patch-compiler_rustc__target_src_spec_targets_mips64el__unknown__netbsd.rs
	rust175/patches/patch-library_backtrace_src_symbolize_gimli.rs
	rust175/patches/patch-library_backtrace_src_symbolize_gimli_elf.rs
	rust175/patches/patch-library_std_src_sys_unix_mod.rs
	rust175/patches/patch-library_std_src_sys_unix_thread.rs
	rust175/patches/patch-library_std_src_sys_unix_thread__parking_netbsd.rs
	rust175/patches/patch-src_bootstrap_bootstrap.py
	rust175/patches/patch-src_bootstrap_src_core_build__steps_compile.rs
	rust175/patches/patch-src_bootstrap_src_core_build__steps_llvm.rs
	rust175/patches/patch-src_bootstrap_src_core_builder.rs
	rust175/patches/patch-src_bootstrap_src_lib.rs
	rust175/patches/patch-src_llvm-project_llvm_CMakeLists.txt
	rust175/patches/patch-src_llvm-project_llvm_cmake_modules_AddLLVM.cmake
	rust175/patches/patch-src_llvm-project_llvm_include_llvm-c_DataTypes.h
	rust175/patches/patch-src_llvm-project_llvm_include_llvm_Analysis_ConstantFolding.h
	rust175/patches/patch-src_llvm-project_llvm_lib_Support_BLAKE3_blake3__impl.h
	rust175/patches/patch-src_llvm-project_llvm_utils_FileCheck_FileCheck.cpp
	rust175/patches/patch-src_tools_cargo_src_cargo_core_profiles.rs
	rust175/patches/patch-src_tools_cargo_tests_testsuite_build.rs
	rust175/patches/patch-src_tools_rust-installer_install-template.sh
	rust175/patches/patch-vendor_backtrace_src_symbolize_gimli.rs
	rust175/patches/patch-vendor_backtrace_src_symbolize_gimli_elf.rs
	rust175/patches/patch-vendor_cc-1.0.73_src_lib.rs
	rust175/patches/patch-vendor_cc_src_lib.rs
	rust175/patches/patch-vendor_crossbeam-epoch_no__atomic.rs
	rust175/patches/patch-vendor_crossbeam-utils-0.8.14-no__atomic.rs
	rust175/patches/patch-vendor_crossbeam-utils_no__atomic.rs
	rust175/patches/patch-vendor_libc-0.2.141_src_unix_bsd_netbsdlike_netbsd_mips.rs
	rust175/patches/patch-vendor_libc-0.2.141_src_unix_bsd_netbsdlike_netbsd_riscv64.rs
	rust175/patches/patch-vendor_libc-0.2.146_src_unix_bsd_netbsdlike_netbsd_mips.rs
	rust175/patches/patch-vendor_libc-0.2.146_src_unix_bsd_netbsdlike_netbsd_mod.rs
	rust175/patches/patch-vendor_libc-0.2.146_src_unix_bsd_netbsdlike_netbsd_riscv64.rs
	rust175/patches/patch-vendor_libc-0.2.146_src_unix_solarish_mod.rs
	rust175/patches/patch-vendor_libc-0.2.148_src_unix_bsd_netbsdlike+netbsd_mips.rs
	rust175/patches/patch-vendor_libc-0.2.148_src_unix_bsd_netbsdlike_netbsd_mod.rs
	rust175/patches/patch-vendor_libc-0.2.148_src_unix_bsd_netbsdlike_netbsd_riscv64.rs
	rust175/patches/patch-vendor_libc-0.2.148_src_unix_solarish_mod.rs
	rust175/patches/patch-vendor_libc-0.2.149_src_unix_bsd_netbsdlike_netbsd_mips.rs
	rust175/patches/patch-vendor_libc-0.2.149_src_unix_bsd_netbsdlike_netbsd_mod.rs
	rust175/patches/patch-vendor_libc-0.2.149_src_unix_bsd_netbsdlike_netbsd_riscv64.rs
	rust175/patches/patch-vendor_libc-0.2.149_src_unix_solarish_mod.rs
	rust175/patches/patch-vendor_libc_src_unix_solarish_mod.rs
	rust175/patches/patch-vendor_lzma-sys_config.h
	rust175/patches/patch-vendor_nix_src_sys_signal.rs
	rust175/patches/patch-vendor_openssl-src_openssl_Configurations_10-main.conf
	rust175/patches/patch-vendor_openssl-src_src_lib.rs
	rust175/patches/patch-vendor_openssl-sys_build_find__normal.rs
	rust175/patches/patch-vendor_openssl-sys_build_main.rs
	rust175/patches/patch-vendor_rustc-ap-rustc__target_src_spec_aarch64__be__unknown__netbsd.rs
	rust175/patches/patch-vendor_stacker_src_lib.rs
	rust175/patches/patch-vendor_target-lexicon_src_targets.rs
	rust175/patches/patch-vendor_valuable_no__atomic.rs
	rust175/platform.mk
	rust175/rust.mk
	rust176-bin/DESCR
	rust176-bin/Makefile
	rust176-bin/buildlink3.mk
	rust176-bin/distinfo
	rust176-bin/files/install.sh
	rust176/DESCR
	rust176/HOWTO-BOOTSTRAP
	rust176/Makefile
	rust176/buildlink3.mk
	rust176/cargo.mk
	rust176/cross.mk
	rust176/distinfo
	rust176/do-cross.mk
	rust176/files/gcc-wrap
	rust176/options.mk
	rust176/patches/patch-compiler_rustc__codegen__ssa_src_back_linker.rs
	rust176/patches/patch-compiler_rustc__llvm_build.rs
	rust176/patches/patch-compiler_rustc__target_src_spec_base_netbsd.rs
	rust176/patches/patch-compiler_rustc__target_src_spec_mod.rs
	rust176/patches/patch-compiler_rustc__target_src_spec_targets_i586__unknown__netbsd.rs
	rust176/patches/patch-compiler_rustc__target_src_spec_targets_mips64el__unknown__netbsd.rs
	rust176/patches/patch-library_backtrace_src_symbolize_gimli.rs
	rust176/patches/patch-library_backtrace_src_symbolize_gimli_elf.rs
	rust176/patches/patch-library_std_src_sys_unix_mod.rs
	rust176/patches/patch-library_std_src_sys_unix_thread.rs
	rust176/patches/patch-library_std_src_sys_unix_thread__parking_netbsd.rs
	rust176/patches/patch-src_bootstrap_bootstrap.py
	rust176/patches/patch-src_bootstrap_src_core_build__steps_compile.rs
	rust176/patches/patch-src_bootstrap_src_core_builder.rs
	rust176/patches/patch-src_bootstrap_src_lib.rs
	rust176/patches/patch-src_llvm-project_llvm_CMakeLists.txt
	rust176/patches/patch-src_llvm-project_llvm_cmake_modules_AddLLVM.cmake
	rust176/patches/patch-src_llvm-project_llvm_include_llvm-c_DataTypes.h
	rust176/patches/patch-src_llvm-project_llvm_include_llvm_Analysis_ConstantFolding.h
	rust176/patches/patch-src_llvm-project_llvm_lib_Support_BLAKE3_blake3__impl.h
	rust176/patches/patch-src_llvm-project_llvm_utils_FileCheck_FileCheck.cpp
	rust176/patches/patch-src_tools_cargo_src_cargo_core_profiles.rs
	rust176/patches/patch-src_tools_cargo_tests_testsuite_build.rs
	rust176/patches/patch-src_tools_rust-installer_install-template.sh
	rust176/patches/patch-vendor_aho-corasick_src_packed_teddy_builder.rs
	rust176/patches/patch-vendor_aho-corasick_src_packed_vector.rs
	rust176/patches/patch-vendor_backtrace_src_symbolize_gimli.rs
	rust176/patches/patch-vendor_backtrace_src_symbolize_gimli_elf.rs
	rust176/patches/patch-vendor_cc-1.0.73_src_lib.rs
	rust176/patches/patch-vendor_cc_src_lib.rs
	rust176/patches/patch-vendor_crossbeam-epoch_no__atomic.rs
	rust176/patches/patch-vendor_crossbeam-utils-0.8.14-no__atomic.rs
	rust176/patches/patch-vendor_crossbeam-utils_no__atomic.rs
	rust176/patches/patch-vendor_libc-0.2.148_src_unix_bsd_netbsdlike+netbsd_mips.rs
	rust176/patches/patch-vendor_libc-0.2.148_src_unix_bsd_netbsdlike_netbsd_mod.rs
	rust176/patches/patch-vendor_libc-0.2.148_src_unix_bsd_netbsdlike_netbsd_riscv64.rs
	rust176/patches/patch-vendor_libc-0.2.148_src_unix_solarish_mod.rs
	rust176/patches/patch-vendor_libc_src_unix_solarish_mod.rs
	rust176/patches/patch-vendor_lzma-sys_config.h
	rust176/patches/patch-vendor_nix-0.26.2_src_sys_signal.rs
	rust176/patches/patch-vendor_openssl-src_openssl_Configurations_10-main.conf
	rust176/patches/patch-vendor_openssl-src_src_lib.rs
	rust176/patches/patch-vendor_openssl-sys_build_find__normal.rs
	rust176/patches/patch-vendor_openssl-sys_build_main.rs
	rust176/patches/patch-vendor_rustc-ap-rustc__target_src_spec_aarch64__be__unknown__netbsd.rs
	rust176/patches/patch-vendor_stacker_src_lib.rs
	rust176/patches/patch-vendor_target-lexicon_src_targets.rs
	rust176/patches/patch-vendor_valuable_no__atomic.rs
	rust176/platform.mk
	rust176/rust.mk

Log Message:
Remove old versions of Rust

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

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

diffstat:
 Makefile                                           |   4 -
 rust175-bin/DESCR                                  |  17 -
 rust175-bin/Makefile                               | 282 ------
 rust175-bin/buildlink3.mk                          |  13 -
 rust175-bin/distinfo                               |  56 --
 rust175-bin/files/install.sh                       | 971 ---------------------
 rust175/DESCR                                      |  13 -
 rust175/HOWTO-BOOTSTRAP                            |  85 --
 rust175/Makefile                                   | 707 ---------------
 rust175/buildlink3.mk                              |  17 -
 rust175/cargo.mk                                   | 109 ---
 rust175/cross.mk                                   |  82 --
 rust175/distinfo                                   | 172 ----
 rust175/do-cross.mk                                | 107 ---
 rust175/files/gcc-wrap                             | 199 -----
 rust175/options.mk                                 |  76 --
 ...compiler_rustc__codegen__ssa_src_back_linker.rs |  15 -
 .../patches/patch-compiler_rustc__llvm_build.rs    |  50 --
 ...-compiler_rustc__target_src_spec_base_netbsd.rs |  32 -
 .../patch-compiler_rustc__target_src_spec_mod.rs   |  14 -
 ...t_src_spec_targets_mips64el__unknown__netbsd.rs |  29 -
 .../patch-library_backtrace_src_symbolize_gimli.rs |  14 -
 ...ch-library_backtrace_src_symbolize_gimli_elf.rs |  25 -
 .../patches/patch-library_std_src_sys_unix_mod.rs  |  14 -
 .../patch-library_std_src_sys_unix_thread.rs       |  56 --
 ...rary_std_src_sys_unix_thread__parking_netbsd.rs |  34 -
 rust175/patches/patch-src_bootstrap_bootstrap.py   |  47 -
 ...-src_bootstrap_src_core_build__steps_compile.rs |  15 -
 ...tch-src_bootstrap_src_core_build__steps_llvm.rs |  20 -
 .../patch-src_bootstrap_src_core_builder.rs        |  15 -
 rust175/patches/patch-src_bootstrap_src_lib.rs     |  23 -
 .../patch-src_llvm-project_llvm_CMakeLists.txt     |  18 -
 ...c_llvm-project_llvm_cmake_modules_AddLLVM.cmake |  49 --
 ...rc_llvm-project_llvm_include_llvm-c_DataTypes.h |  34 -
 ...ct_llvm_include_llvm_Analysis_ConstantFolding.h |  17 -
 ...-project_llvm_lib_Support_BLAKE3_blake3__impl.h |  20 -
 ...llvm-project_llvm_utils_FileCheck_FileCheck.cpp |  15 -
 ...atch-src_tools_cargo_src_cargo_core_profiles.rs |  17 -
 .../patch-src_tools_cargo_tests_testsuite_build.rs |  31 -
 ...ch-src_tools_rust-installer_install-template.sh | 179 ----
 .../patch-vendor_backtrace_src_symbolize_gimli.rs  |  14 -
 ...tch-vendor_backtrace_src_symbolize_gimli_elf.rs |  24 -
 rust175/patches/patch-vendor_cc-1.0.73_src_lib.rs  |  16 -
 rust175/patches/patch-vendor_cc_src_lib.rs         |  40 -
 .../patch-vendor_crossbeam-epoch_no__atomic.rs     |  20 -
 ...tch-vendor_crossbeam-utils-0.8.14-no__atomic.rs |  14 -
 .../patch-vendor_crossbeam-utils_no__atomic.rs     |  19 -
 ...-0.2.141_src_unix_bsd_netbsdlike_netbsd_mips.rs |  29 -
 ...2.141_src_unix_bsd_netbsdlike_netbsd_riscv64.rs |  31 -
 ...-0.2.146_src_unix_bsd_netbsdlike_netbsd_mips.rs |  29 -
 ...c-0.2.146_src_unix_bsd_netbsdlike_netbsd_mod.rs |  59 --
 ...2.146_src_unix_bsd_netbsdlike_netbsd_riscv64.rs |  29 -
 ...ch-vendor_libc-0.2.146_src_unix_solarish_mod.rs |  15 -
 ...-0.2.148_src_unix_bsd_netbsdlike+netbsd_mips.rs |  29 -
 ...c-0.2.148_src_unix_bsd_netbsdlike_netbsd_mod.rs |  52 --
 ...2.148_src_unix_bsd_netbsdlike_netbsd_riscv64.rs |  29 -
 ...ch-vendor_libc-0.2.148_src_unix_solarish_mod.rs |  15 -
 ...-0.2.149_src_unix_bsd_netbsdlike_netbsd_mips.rs |  29 -
 ...c-0.2.149_src_unix_bsd_netbsdlike_netbsd_mod.rs |  31 -
 ...2.149_src_unix_bsd_netbsdlike_netbsd_riscv64.rs |  29 -
 ...ch-vendor_libc-0.2.149_src_unix_solarish_mod.rs |  15 -
 .../patch-vendor_libc_src_unix_solarish_mod.rs     |  15 -
 rust175/patches/patch-vendor_lzma-sys_config.h     |  18 -
 rust175/patches/patch-vendor_nix_src_sys_signal.rs |  15 -
 ...openssl-src_openssl_Configurations_10-main.conf |  18 -
 .../patches/patch-vendor_openssl-src_src_lib.rs    |  64 --
 .../patch-vendor_openssl-sys_build_find__normal.rs |  30 -
 .../patches/patch-vendor_openssl-sys_build_main.rs |  24 -
 ...target_src_spec_aarch64__be__unknown__netbsd.rs |  27 -
 rust175/patches/patch-vendor_stacker_src_lib.rs    |  15 -
 .../patch-vendor_target-lexicon_src_targets.rs     |  22 -
 .../patches/patch-vendor_valuable_no__atomic.rs    |  14 -
 rust175/platform.mk                                |  26 -
 rust175/rust.mk                                    |  55 --
 rust176-bin/DESCR                                  |  17 -
 rust176-bin/Makefile                               | 296 -------
 rust176-bin/buildlink3.mk                          |  13 -
 rust176-bin/distinfo                               |  59 --
 rust176-bin/files/install.sh                       | 971 ---------------------
 rust176/DESCR                                      |  13 -
 rust176/HOWTO-BOOTSTRAP                            |  85 --
 rust176/Makefile                                   | 703 ---------------
 rust176/buildlink3.mk                              |  17 -
 rust176/cargo.mk                                   | 109 ---
 rust176/cross.mk                                   |  82 --
 rust176/distinfo                                   | 164 ----
 rust176/do-cross.mk                                | 107 ---
 rust176/files/gcc-wrap                             | 199 -----
 rust176/options.mk                                 |  76 --
 ...compiler_rustc__codegen__ssa_src_back_linker.rs |  15 -
 .../patches/patch-compiler_rustc__llvm_build.rs    |  50 --
 ...-compiler_rustc__target_src_spec_base_netbsd.rs |  32 -
 .../patch-compiler_rustc__target_src_spec_mod.rs   |  14 -
 ...arget_src_spec_targets_i586__unknown__netbsd.rs |  16 -
 ...t_src_spec_targets_mips64el__unknown__netbsd.rs |  29 -
 .../patch-library_backtrace_src_symbolize_gimli.rs |  14 -
 ...ch-library_backtrace_src_symbolize_gimli_elf.rs |  25 -
 .../patches/patch-library_std_src_sys_unix_mod.rs  |  14 -
 .../patch-library_std_src_sys_unix_thread.rs       |  56 --
 ...rary_std_src_sys_unix_thread__parking_netbsd.rs |  34 -
 rust176/patches/patch-src_bootstrap_bootstrap.py   |  47 -
 ...-src_bootstrap_src_core_build__steps_compile.rs |  15 -
 .../patch-src_bootstrap_src_core_builder.rs        |  15 -
 rust176/patches/patch-src_bootstrap_src_lib.rs     |  23 -
 .../patch-src_llvm-project_llvm_CMakeLists.txt     |  18 -
 ...c_llvm-project_llvm_cmake_modules_AddLLVM.cmake |  49 --
 ...rc_llvm-project_llvm_include_llvm-c_DataTypes.h |  34 -
 ...ct_llvm_include_llvm_Analysis_ConstantFolding.h |  17 -
 ...-project_llvm_lib_Support_BLAKE3_blake3__impl.h |  20 -
 ...llvm-project_llvm_utils_FileCheck_FileCheck.cpp |  15 -
 ...atch-src_tools_cargo_src_cargo_core_profiles.rs |  17 -
 .../patch-src_tools_cargo_tests_testsuite_build.rs |  31 -
 ...ch-src_tools_rust-installer_install-template.sh | 179 ----
 ...vendor_aho-corasick_src_packed_teddy_builder.rs |  31 -
 .../patch-vendor_aho-corasick_src_packed_vector.rs |  13 -
 .../patch-vendor_backtrace_src_symbolize_gimli.rs  |  14 -
 ...tch-vendor_backtrace_src_symbolize_gimli_elf.rs |  24 -
 rust176/patches/patch-vendor_cc-1.0.73_src_lib.rs  |  16 -
 rust176/patches/patch-vendor_cc_src_lib.rs         |  22 -
 .../patch-vendor_crossbeam-epoch_no__atomic.rs     |  20 -
 ...tch-vendor_crossbeam-utils-0.8.14-no__atomic.rs |  14 -
 .../patch-vendor_crossbeam-utils_no__atomic.rs     |  19 -
 ...-0.2.148_src_unix_bsd_netbsdlike+netbsd_mips.rs |  29 -
 ...c-0.2.148_src_unix_bsd_netbsdlike_netbsd_mod.rs |  52 --
 ...2.148_src_unix_bsd_netbsdlike_netbsd_riscv64.rs |  29 -
 ...ch-vendor_libc-0.2.148_src_unix_solarish_mod.rs |  15 -
 .../patch-vendor_libc_src_unix_solarish_mod.rs     |  15 -
 rust176/patches/patch-vendor_lzma-sys_config.h     |  18 -
 .../patch-vendor_nix-0.26.2_src_sys_signal.rs      |  15 -
 ...openssl-src_openssl_Configurations_10-main.conf |  18 -
 .../patches/patch-vendor_openssl-src_src_lib.rs    |  64 --
 .../patch-vendor_openssl-sys_build_find__normal.rs |  30 -
 .../patches/patch-vendor_openssl-sys_build_main.rs |  24 -
 ...target_src_spec_aarch64__be__unknown__netbsd.rs |  27 -
 rust176/patches/patch-vendor_stacker_src_lib.rs    |  15 -
 .../patch-vendor_target-lexicon_src_targets.rs     |  22 -
 .../patches/patch-vendor_valuable_no__atomic.rs    |  14 -
 rust176/platform.mk                                |  26 -
 rust176/rust.mk                                    |  55 --
 139 files changed, 8935 deletions(-)

diffs:
diff --git a/Makefile b/Makefile
index cd9979c667..2580fc8ef4 100644
--- a/Makefile
+++ b/Makefile
@@ -5038,10 +5038,6 @@ SUBDIR+=	runas
 SUBDIR+=	runcpm
 SUBDIR+=	rust-analyzer
 SUBDIR+=	rust-synapse-compress-state
-SUBDIR+=	rust175
-SUBDIR+=	rust175-bin
-SUBDIR+=	rust176
-SUBDIR+=	rust176-bin
 SUBDIR+=	rust177
 SUBDIR+=	rust177-bin
 SUBDIR+=	s-nail
diff --git a/rust175-bin/DESCR b/rust175-bin/DESCR
deleted file mode 100644
index 5c709044ce..0000000000
--- a/rust175-bin/DESCR
+++ /dev/null
@@ -1,17 +0,0 @@
-Rust is a systems programming language focused on three goals: safety,
-speed, and concurrency.  It maintains these goals without having a
-garbage collector, making it a useful language for a number of use cases
-other languages aren't good at: embedding in other languages, programs
-with specific space and time requirements, and writing low-level code,
-like device drivers and operating systems.
-
-It improves on current languages targeting this space by having a number
-of compile-time safety checks that produce no runtime overhead, while
-eliminating all data races.  Rust also aims to achieve "zero-cost
-abstractions" even though some of these abstractions feel like those of
-a high-level language.  Even then, Rust still allows precise control
-like a low-level language would.
-
-This package installs a released binary, on architectures supported by
-upstream, or a TNF-built binary, on NetBSD versions not supported by
-upstream.
diff --git a/rust175-bin/Makefile b/rust175-bin/Makefile
deleted file mode 100644
index abafd9c680..0000000000
--- a/rust175-bin/Makefile
+++ /dev/null
@@ -1,282 +0,0 @@
-# $NetBSD: Makefile,v 1.55 2023/09/28 12:24:32 he Exp $
-
-DISTNAME=	rust-1.75.0
-PKGNAME=	${DISTNAME:S/rust/rust-bin/1}
-CATEGORIES=	lang
-MASTER_SITES=	https://static.rust-lang.org/dist/
-DIST_SUBDIR=	${PKGNAME}
-
-MAINTAINER=	pkgsrc-users%NetBSD.org@localhost
-HOMEPAGE=	https://rust-lang.org/
-COMMENT=	Safe, concurrent, practical language (pre-built distribution)
-LICENSE=	mit OR apache-2.0
-
-CONFLICTS+=	rust-[0-9]*
-
-# Rust upstream provided binaries
-ONLY_FOR_PLATFORM+=	Darwin-*-aarch64
-ONLY_FOR_PLATFORM+=	Darwin-*-x86_64
-ONLY_FOR_PLATFORM+=	FreeBSD-*-x86_64
-ONLY_FOR_PLATFORM+=	Linux-*-i386
-ONLY_FOR_PLATFORM+=	Linux-*-x86_64
-
-# he%NetBSD.org@localhost provided binaries
-ONLY_FOR_PLATFORM+=	NetBSD-*-aarch64
-ONLY_FOR_PLATFORM+=	NetBSD-*-aarch64eb
-ONLY_FOR_PLATFORM+=	NetBSD-*-earmv7hf
-ONLY_FOR_PLATFORM+=	NetBSD-*-earmv6hf
-ONLY_FOR_PLATFORM+=	NetBSD-*-i386
-ONLY_FOR_PLATFORM+=	NetBSD-*-powerpc
-ONLY_FOR_PLATFORM+=	NetBSD-*-sparc64
-ONLY_FOR_PLATFORM+=	NetBSD-*-mipsel
-ONLY_FOR_PLATFORM+=	NetBSD-*-riscv64
-ONLY_FOR_PLATFORM+=	NetBSD-*-x86_64
-
-NETBSD_REPO=	https://cdn.NetBSD.org/pub/pkgsrc/distfiles/LOCAL_PORTS/rust/
-
-CHECK_RELRO_SKIP+=	lib/rustlib/*/bin/*
-
-CHECK_SHLIBS_SKIP+=	bin/cargo-clippy
-CHECK_SHLIBS_SKIP+=	bin/rustfmt
-
-# Bootstraps built for 9.0.
-BROKEN_ON_PLATFORM+=	NetBSD-8.*-earmv7hf
-BROKEN_ON_PLATFORM+=	NetBSD-8.*-earmv6hf
-BROKEN_ON_PLATFORM+=	NetBSD-8.*-powerpc
-
-# Binary distributions aren't built as PIE.
-MKPIE_SUPPORTED=	no
-
-NO_BUILD=	yes
-USE_TOOLS+=	bash pax
-WRKSRC=		${WRKDIR}/${DISTFILES:C/.tar.[gx]z//}
-
-GENERATE_PLIST+=	find ${DESTDIR}${PREFIX} \( -type f -o -type l \) -print | \
-			sed 's,${DESTDIR}${PREFIX}/,,' | ${SORT} ;
-
-INSTALLATION_DIRS=	bin ${PKGMANDIR} share/doc/cargo/bash_completion.d
-
-.include "../../mk/bsd.prefs.mk"
-
-.if ${OPSYS} == "NetBSD" && ${OPSYS_VERSION} < 080000
-BROKEN+=		"Bootstrap unavailable for old NetBSD version"
-.endif
-
-DISTFILES:=	# empty
-
-# Rust upstream provided binaries
-
-.if !empty(MACHINE_PLATFORM:MDarwin-*-aarch64) || make(distinfo) || make(makesum) || make(mdi)
-RUST_ARCH:=	aarch64-apple-darwin
-DISTFILES:=	${DISTFILES} ${DISTNAME}-${RUST_ARCH}.tar.gz
-.endif
-.if !empty(MACHINE_PLATFORM:MDarwin-*-x86_64) || make(distinfo) || make(makesum) || make(mdi)
-RUST_ARCH:=	x86_64-apple-darwin
-DISTFILES:=	${DISTFILES} ${DISTNAME}-${RUST_ARCH}.tar.gz
-.endif
-.if !empty(MACHINE_PLATFORM:MFreeBSD-*-x86_64) || make(distinfo) || make(makesum) || make(mdi)
-RUST_ARCH:=	x86_64-unknown-freebsd
-DISTFILES:=	${DISTFILES} ${DISTNAME}-${RUST_ARCH}.tar.gz
-.endif
-.if !empty(MACHINE_PLATFORM:MLinux-*-i386) || make(distinfo) || make(makesum) || make(mdi)
-RUST_ARCH:=	i686-unknown-linux-gnu
-DISTFILES:=	${DISTFILES} ${DISTNAME}-${RUST_ARCH}.tar.gz
-.endif
-.if (!empty(MACHINE_PLATFORM:MLinux-*-aarch64) && !empty(GLIBC_VERSION)) || make(distinfo) || make(makesum) || make(mdi)
-RUST_ARCH:=	aarch64-unknown-linux-gnu
-DISTFILES:=	${DISTFILES} ${DISTNAME}-${RUST_ARCH}.tar.gz
-.endif
-.if (!empty(MACHINE_PLATFORM:MLinux-*-aarch64) && empty(GLIBC_VERSION)) || make(distinfo) || make(makesum) || make(mdi)
-RUST_ARCH:=	aarch64-unknown-linux-musl
-DISTFILES:=	${DISTFILES} ${DISTNAME}-${RUST_ARCH}.tar.gz
-.endif
-.if (!empty(MACHINE_PLATFORM:MLinux-*-x86_64) && !empty(GLIBC_VERSION)) || make(distinfo) || make(makesum) || make(mdi)
-RUST_ARCH:=	x86_64-unknown-linux-gnu
-DISTFILES:=	${DISTFILES} ${DISTNAME}-${RUST_ARCH}.tar.gz
-.endif
-.if (!empty(MACHINE_PLATFORM:MLinux-*-x86_64) && empty(GLIBC_VERSION)) || make(distinfo) || make(makesum) || make(mdi)
-RUST_ARCH:=	x86_64-unknown-linux-musl
-DISTFILES:=	${DISTFILES} ${DISTNAME}-${RUST_ARCH}.tar.gz
-.endif
-.if !empty(MACHINE_PLATFORM:MNetBSD-*-x86_64) || make(distinfo) || make(makesum) || make(mdi)
-RUST_ARCH:=	x86_64-unknown-netbsd
-DISTFILES:=	${DISTFILES} ${DISTNAME}-${RUST_ARCH}.tar.gz
-.endif
-
-# NetBSD provided binaries:
-
-NBSUF=
-
-.if !empty(MACHINE_PLATFORM:MNetBSD-*-aarch64) || make(distinfo) || make(makesum) || make(mdi)
-RUST_ARCH:=	aarch64-unknown-netbsd
-DN:=		${DISTNAME}${NBSUF}
-EXTRACT_SUFX=	.tar.xz
-DF:=		${DN}-${RUST_ARCH}${EXTRACT_SUFX}
-DISTFILES:=	${DISTFILES} ${DF}
-SITES.${DF}=	${NETBSD_REPO}
-.endif
-.if !empty(MACHINE_PLATFORM:MNetBSD-*-aarch64eb) || make(distinfo) || make(makesum) || make(mdi)
-RUST_ARCH:=	aarch64_be-unknown-netbsd
-DN:=		${DISTNAME}${NBSUF}
-EXTRACT_SUFX=	.tar.xz
-DF:=		${DN}-${RUST_ARCH}${EXTRACT_SUFX}
-DISTFILES:=	${DISTFILES} ${DF}
-SITES.${DF}=	${NETBSD_REPO}
-.endif
-.if !empty(MACHINE_PLATFORM:MNetBSD-*-earmv6hf) || make(distinfo) || make(makesum) || make(mdi)
-RUST_ARCH:=	armv6-unknown-netbsd-eabihf
-DN:=		${DISTNAME}${NBSUF}
-EXTRACT_SUFX=	.tar.xz
-DF:=		${DN}-${RUST_ARCH}${EXTRACT_SUFX}
-DISTFILES:=	${DISTFILES} ${DF}
-SITES.${DF}=	${NETBSD_REPO}
-.endif
-.if !empty(MACHINE_PLATFORM:MNetBSD-*-earmv7hf) || make(distinfo) || make(makesum) || make(mdi)
-RUST_ARCH:=	armv7-unknown-netbsd-eabihf
-DN:=		${DISTNAME}${NBSUF}
-EXTRACT_SUFX=	.tar.xz
-DF:=		${DN}-${RUST_ARCH}${EXTRACT_SUFX}
-DISTFILES:=	${DISTFILES} ${DF}
-SITES.${DF}=	${NETBSD_REPO}
-.endif
-.if !empty(MACHINE_PLATFORM:MNetBSD-*-i386) || make(distinfo) || make(makesum) || make(mdi)
-RUST_ARCH:=	i586-unknown-netbsd
-DN:=		${DISTNAME}${NBSUF}
-EXTRACT_SUFX=	.tar.xz
-DF:=		${DN}-${RUST_ARCH}${EXTRACT_SUFX}
-DISTFILES:=	${DISTFILES} ${DF}
-SITES.${DF}=	${NETBSD_REPO}
-.endif
-.if !empty(MACHINE_PLATFORM:MNetBSD-*-powerpc) || make(distinfo) || make(makesum) || make(mdi)
-# Now only supports OS_VERSION >= 9.0
-RUST_ARCH:=	powerpc-unknown-netbsd
-DN:=		${DISTNAME}${NBSUF}
-EXTRACT_SUFX=	.tar.xz
-DF:=		${DN}-${RUST_ARCH}${EXTRACT_SUFX}
-DISTFILES:=	${DISTFILES} ${DF}
-SITES.${DF}=	${NETBSD_REPO}
-.endif
-.if !empty(MACHINE_PLATFORM:MNetBSD-*-sparc64) || make(distinfo) || make(makesum) || make(mdi)
-RUST_ARCH:=	sparc64-unknown-netbsd
-DN:=		${DISTNAME}${NBSUF}
-EXTRACT_SUFX=	.tar.xz
-DF:=		${DN}-${RUST_ARCH}${EXTRACT_SUFX}
-DISTFILES:=	${DISTFILES} ${DF}
-SITES.${DF}=	${NETBSD_REPO}
-.endif
-.if !empty(MACHINE_PLATFORM:MNetBSD-*-mipsel) || make(distinfo) || make(makesum) || make(mdi)
-RUST_ARCH:=	mipsel-unknown-netbsd
-DN:=		${DISTNAME}${NBSUF}
-EXTRACT_SUFX=	.tar.xz
-DF:=		${DN}-${RUST_ARCH}${EXTRACT_SUFX}
-DISTFILES:=	${DISTFILES} ${DF}
-SITES.${DF}=	${NETBSD_REPO}
-.endif
-.if !empty(MACHINE_PLATFORM:MNetBSD-*-riscv64) || make(distinfo) || make(makesum) || make(mdi)
-RUST_ARCH:=	riscv64gc-unknown-netbsd
-DN:=		${DISTNAME}${NBSUF}
-EXTRACT_SUFX=	.tar.xz
-DF:=		${DN}-${RUST_ARCH}${EXTRACT_SUFX}
-DISTFILES:=	${DISTFILES} ${DF}
-SITES.${DF}=	${NETBSD_REPO}
-.endif
-
-# Binary still extracts to plain non-nb'ed directory
-WRKSRC:=	${WRKSRC:C/nb[0-9]*//}
-# Undo the powerpc netbsd90 thingie...
-WRKSRC:=	${WRKSRC:C/netbsd90/netbsd/}
-
-do-install:
-	cd ${.CURDIR}/files; pax -rw install.sh ${WRKSRC}
-	cd ${WRKSRC} && env PKGMANDIR=${PKGMANDIR} bash ./install.sh \
-	--destdir=${DESTDIR} --prefix=${PREFIX}
-	${RM} -f ${DESTDIR}${PREFIX}/lib/rustlib/${RUST_ARCH}/bin/rust-llvm-dwp
-	${RM} -f ${DESTDIR}${PREFIX}/lib/rustlib/install.log
-	${RM} -f ${DESTDIR}${PREFIX}/lib/rustlib/manifest-*
-	${RM} -f ${DESTDIR}${PREFIX}/lib/rustlib/uninstall.sh
-
-.if ${OPSYS} == "Darwin"
-.PHONY: fix-darwin-install-name
-post-install: fix-darwin-install-name
-fix-darwin-install-name:
-.  for bin in clippy-driver miri rls rustc rustdoc
-	otool -XL ${DESTDIR}${PREFIX}/bin/${bin}			\
-	    | ${GREP} '@rpath' | while read rpath rest; do		\
-		install_name_tool -change $$rpath			\
-		    `${ECHO} $$rpath | ${SED} -e 's,@rpath,${PREFIX}/lib,g'` \
-		    ${DESTDIR}${PREFIX}/bin/${bin};			\
-	done
-.  endfor
-.  for bin in lldb lldb-mi llvm-nm llvm-objcopy llvm-objdump 	\
-		llvm-profdata llvm-readobj llvm-size llvm-strip
-	otool -XL ${DESTDIR}${PREFIX}/lib/rustlib/${RUST_ARCH}/bin/${bin} \
-	    | ${GREP} '@rpath' | while read rpath rest; do		\
-		install_name_tool -change $$rpath			\
-		    `${ECHO} $$rpath | ${SED} -e 's,@rpath,${PREFIX}/lib/rustlib/${RUST_ARCH}/lib,g'` \
-		    ${DESTDIR}${PREFIX}/lib/rustlib/${RUST_ARCH}/bin/${bin}; \
-	done
-.  endfor
-.  for lib in lib lib/rustlib/${RUST_ARCH}/lib lib/rustlib/${RUST_ARCH}/codegen-backends
-	for f in ${DESTDIR}${PREFIX}/${lib}/lib*.dylib; do		\
-		[ ! -f $$f ] && continue;				\
-		install_name_tool -id `${ECHO} $$f | ${SED} -e 's,${DESTDIR},,g'` $$f; \
-		otool -XL $$f | grep '@rpath' | while read rpath rest; do \
-			install_name_tool -change $$rpath \
-			    `${ECHO} $$rpath | ${SED} -e 's,@rpath,${PREFIX}/lib,g'` \
-			    $$f;					\
-		done;							\
-	done
-.  endfor
-.else
-TOOL_DEPENDS+=		patchelf-[0-9]*:../../devel/patchelf
-
-# The llvm utilities may need a specific libstdc++ version from compat80
-.  if ${OPSYS} == "NetBSD" && ${OPSYS_VERSION} >= 090000
-.    if ${MACHINE_ARCH} != "aarch64" && ${MACHINE_ARCH} != "earmv7hf" && \
-        ${MACHINE_ARCH} != "powerpc" && ${MACHINE_ARCH} != "earmv6hf" && \
-        ${MACHINE_ARCH} != "riscv64"
-DEPENDS+=		compat80-[0-9]*:../../emulators/compat80
-RUST_LLVM_RPATH=	${PREFIX}/emul/netbsd/usr/lib:${PREFIX}/lib
-FORCE_RPATH=
-.    else
-RUST_LLVM_RPATH=	${PREFIX}/lib
-.    endif
-.  else
-# ld.elf_so in NetBSD 8.x only obeys RPATH, not RUNPATH, so force RPATH there.
-RUST_LLVM_RPATH=	${PREFIX}/lib
-FORCE_RPATH=		--force-rpath
-.  endif
-
-.  if !empty(MACHINE_PLATFORM:MNetBSD-*-powerpc) || \
-      !empty(MACHINE_PLATFORM:MNetBSD-*-i386)
-.    include "../../devel/libatomic/buildlink3.mk"
-.  endif
-
-.PHONY: fix-relative-rpath
-post-install: fix-relative-rpath
-fix-relative-rpath:
-.  for bin in clippy-driver miri rls rustc rustdoc
-	if [ -f ${DESTDIR}${PREFIX}/bin/${bin} ]; then \
-		${PREFIX}/bin/patchelf ${FORCE_RPATH} --set-rpath \
-		    ${PREFIX}/lib ${DESTDIR}${PREFIX}/bin/${bin} ; \
-	fi
-.  endfor
-# Only Linux builds link these binaries against an LLVM library
-.  if ${OPSYS} == "Linux"
-.    for bin in llc llvm-ar llvm-as llvm-cov llvm-dis llvm-nm llvm-objcopy \
-	   llvm-objdump llvm-profdata llvm-readobj llvm-size llvm-strip opt \
-	   rust-lld
-	 ${PREFIX}/bin/patchelf ${FORCE_RPATH} --set-rpath ${RUST_LLVM_RPATH} \
-	   ${DESTDIR}${PREFIX}/lib/rustlib/${RUST_ARCH}/bin/${bin}
-.    endfor
-.  endif
-.  for lib in lib lib/rustlib/${RUST_ARCH}/lib \
-		lib/rustlib/${RUST_ARCH}/codegen-backends
-	for f in ${DESTDIR}${PREFIX}/${lib}/lib*.so; do			\
-		[ ! -f $$f ] && continue;				\
-		${PREFIX}/bin/patchelf ${FORCE_RPATH} --set-rpath ${PREFIX}/lib $$f;	\
-	done
-.  endfor
-.endif
-
-.include "../../mk/bsd.pkg.mk"
diff --git a/rust175-bin/buildlink3.mk b/rust175-bin/buildlink3.mk
deleted file mode 100644
index 1d6874ec86..0000000000
--- a/rust175-bin/buildlink3.mk
+++ /dev/null
@@ -1,13 +0,0 @@
-# $NetBSD: buildlink3.mk,v 1.2 2022/07/01 07:00:28 pin Exp $
-
-BUILDLINK_TREE+=	rust-bin
-
-.if !defined(RUST_BIN_BUILDLINK3_MK)
-RUST_BIN_BUILDLINK3_MK:=
-
-BUILDLINK_API_DEPENDS.rust-bin+=	rust-bin>=1.56.1
-BUILDLINK_PKGSRCDIR.rust-bin?=		../../lang/rust-bin
-BUILDLINK_PASSTHRU_DIRS+=		${PREFIX}/lib/rustlib
-.endif
-
-BUILDLINK_TREE+=	-rust-bin
diff --git a/rust175-bin/distinfo b/rust175-bin/distinfo
deleted file mode 100644
index 9d6062e324..0000000000
--- a/rust175-bin/distinfo
+++ /dev/null
@@ -1,56 +0,0 @@
-$NetBSD: distinfo,v 1.29 2023/09/28 15:57:26 gdt Exp $
-
-BLAKE2s (rust-bin-1.75.0/rust-1.75.0-aarch64-apple-darwin.tar.gz) = 0413f6810abc118a1be224b775d8de6a6c2ad55059944e1d95e6f325a4e41838
-SHA512 (rust-bin-1.75.0/rust-1.75.0-aarch64-apple-darwin.tar.gz) = d73b8884cdbec68c4f1d38635ec590424c081d39ea9f43bf01fc0e442d04a304fa9920409e41a97e9a70f98f09f91a6b565bc83d433328df5de860c32e01f580
-Size (rust-bin-1.75.0/rust-1.75.0-aarch64-apple-darwin.tar.gz) = 313810756 bytes
-BLAKE2s (rust-bin-1.75.0/rust-1.75.0-aarch64-unknown-linux-gnu.tar.gz) = 6265eca0657a28d2384a53ae1aad8b60c3837ec0cb1b8462e782ccbbf7608e56
-SHA512 (rust-bin-1.75.0/rust-1.75.0-aarch64-unknown-linux-gnu.tar.gz) = 6b2f556a7dffbde54482f121e5e57befc84d93ceb1f7dae8cd89dc36de0d98ab0f6cbda2abeb8d2c23d278abb3a07de4e4761815c0a1d6e4953be4ba7a6704fe
-Size (rust-bin-1.75.0/rust-1.75.0-aarch64-unknown-linux-gnu.tar.gz) = 460772111 bytes
-BLAKE2s (rust-bin-1.75.0/rust-1.75.0-aarch64-unknown-linux-musl.tar.gz) = ed699ea86f0791f8c304ab8eebd8db6bd25213eec4ee98a45688337833fd797b
-SHA512 (rust-bin-1.75.0/rust-1.75.0-aarch64-unknown-linux-musl.tar.gz) = 54604c42a159d27b4f5e9792b44358963d08f757130eac2f3ba1c5275ef4c2c73e03ff198c983197c5a3d5aa4564bfb19135800d4c05b60668e4f9f8cd32eda4
-Size (rust-bin-1.75.0/rust-1.75.0-aarch64-unknown-linux-musl.tar.gz) = 372340966 bytes
-BLAKE2s (rust-bin-1.75.0/rust-1.75.0-aarch64-unknown-netbsd.tar.xz) = 76ccec3dcf8b961b77de3c6e924b6ff5dc5daaae899636f5ca104c8194eb5edd
-SHA512 (rust-bin-1.75.0/rust-1.75.0-aarch64-unknown-netbsd.tar.xz) = f18d71fbad5bcb3facfac23468395b0184de75c3ff2fe59c7ae3e76211af3a8629086360c8e29cee6aada5d4f6d2bb27e90d41ae08d148f10e1a462582eb14a6
-Size (rust-bin-1.75.0/rust-1.75.0-aarch64-unknown-netbsd.tar.xz) = 160244012 bytes
-BLAKE2s (rust-bin-1.75.0/rust-1.75.0-aarch64_be-unknown-netbsd.tar.xz) = 3c8de5e2b7031dac3405af68ed589c423d7a4cd905364e31cf6d75125bcc0697
-SHA512 (rust-bin-1.75.0/rust-1.75.0-aarch64_be-unknown-netbsd.tar.xz) = f4f28566b93490330c5a060b6b38863951f3307e5d594e0535be2f91bf7f0f6ba0ad7eb2386feacc12f39620f01bff7b7c6c04e1784d5364fa4d94eeb307a8e2
-Size (rust-bin-1.75.0/rust-1.75.0-aarch64_be-unknown-netbsd.tar.xz) = 160117240 bytes
-BLAKE2s (rust-bin-1.75.0/rust-1.75.0-armv6-unknown-netbsd-eabihf.tar.xz) = a815881365e06f73b08fd9657201f4fa8072f6567ad3a73edd14fd1c43fac5b2
-SHA512 (rust-bin-1.75.0/rust-1.75.0-armv6-unknown-netbsd-eabihf.tar.xz) = 98092766fb0b7a1ccd54eb94efeb4af800a5e8d1d66cc2a7b94aa7c74bce7a9b427a49c23818b434a14bee63ecf441086458e35d0cf5cb7a6269f44ad25bc7e9
-Size (rust-bin-1.75.0/rust-1.75.0-armv6-unknown-netbsd-eabihf.tar.xz) = 137497008 bytes
-BLAKE2s (rust-bin-1.75.0/rust-1.75.0-armv7-unknown-netbsd-eabihf.tar.xz) = 510e494b4562201b956436d9d5525a62be2f5d1b341071d316ca9e53987222e8
-SHA512 (rust-bin-1.75.0/rust-1.75.0-armv7-unknown-netbsd-eabihf.tar.xz) = 7ef3fbe915c9c8acf6ae4eba9db82b2f337c4db55c87a326275c43f797ddab35a4ca3af4f5478d1fd4f9f260a1788e1ac4336166a66eed26545b97512454a079
-Size (rust-bin-1.75.0/rust-1.75.0-armv7-unknown-netbsd-eabihf.tar.xz) = 137950820 bytes
-BLAKE2s (rust-bin-1.75.0/rust-1.75.0-i586-unknown-netbsd.tar.xz) = 4b655bcfc334f5a1326fcf34c4a3c9311affbbfa3f9e94cc0bee1dfe8952437f
-SHA512 (rust-bin-1.75.0/rust-1.75.0-i586-unknown-netbsd.tar.xz) = a6de27b7ccc066f5a3fa1935d7a1db2215f29130644831917e7f71fda950cbcdbfef5c7948ab22f63637e5f13ee3b0f54d0f029290ed77ccc3cdc2710b35b57f
-Size (rust-bin-1.75.0/rust-1.75.0-i586-unknown-netbsd.tar.xz) = 173187680 bytes
-BLAKE2s (rust-bin-1.75.0/rust-1.75.0-i686-unknown-linux-gnu.tar.gz) = 3a7a95d130b44835c04d1faed48d328fa12d3af5af75b02eed9ec03edfd84a53
-SHA512 (rust-bin-1.75.0/rust-1.75.0-i686-unknown-linux-gnu.tar.gz) = 09adf5a9c3f2856142fcc31e7bb53f98b6c8faddb509960799b23bbaa97ce5bc9afcab380bab0da593026b57c75ed6f95f229b79e193fe59dd779380bd06179b
-Size (rust-bin-1.75.0/rust-1.75.0-i686-unknown-linux-gnu.tar.gz) = 409233544 bytes
-BLAKE2s (rust-bin-1.75.0/rust-1.75.0-mipsel-unknown-netbsd.tar.xz) = 7ab0a3a1ebdc123ed9da4e6191659a4fe6969d102f86bb3c4bb70c5937d8a00f
-SHA512 (rust-bin-1.75.0/rust-1.75.0-mipsel-unknown-netbsd.tar.xz) = 33076f2f7d49da5717c255ad3cc21eedef3b03cac57178f761604faadcd73f303159f15bbbe2059980ca059aa1a9fefbd417f935b89940ef74ac6573dae7c56a
-Size (rust-bin-1.75.0/rust-1.75.0-mipsel-unknown-netbsd.tar.xz) = 139163932 bytes
-BLAKE2s (rust-bin-1.75.0/rust-1.75.0-powerpc-unknown-netbsd.tar.xz) = e085863aba7879e9859a12a9fe6cae0b316a782507b45c49a663ebc64ff0ab19
-SHA512 (rust-bin-1.75.0/rust-1.75.0-powerpc-unknown-netbsd.tar.xz) = 6e48a2b9f4d286a9a6e09611cdc6e3715c691772fe5d8426125e90d6ded8c21ead8b53d846d8b59024f99ffe95971e74ba6c51afe37752d947a680168d38efe7
-Size (rust-bin-1.75.0/rust-1.75.0-powerpc-unknown-netbsd.tar.xz) = 185421672 bytes
-BLAKE2s (rust-bin-1.75.0/rust-1.75.0-riscv64gc-unknown-netbsd.tar.xz) = 862bfaf265d3c01e58ce373359d7177af107c9f5fd4486f2ff64779d1eeee61a
-SHA512 (rust-bin-1.75.0/rust-1.75.0-riscv64gc-unknown-netbsd.tar.xz) = 241787601ec894a999b446d148f5988e9dc1fbdc963cc1d31d5a92104121b525ab44210673ee014b3d73c37d426692b69e70180c3bdcecc293c953e7408273b1
-Size (rust-bin-1.75.0/rust-1.75.0-riscv64gc-unknown-netbsd.tar.xz) = 172302088 bytes
-BLAKE2s (rust-bin-1.75.0/rust-1.75.0-sparc64-unknown-netbsd.tar.xz) = ca7e8437c6069ef1e285e2fc06df2f018a99933d01c3740714b16a65da89a430
-SHA512 (rust-bin-1.75.0/rust-1.75.0-sparc64-unknown-netbsd.tar.xz) = 1098580b8fb0c7ad11f1a53ca1ac9639b6705d22845e1628747fcdf021be15855f4d1864c5f7c4f46a79d3e56174220faf53fd26ccdeb8a6e3bf2e5adf053bcb
-Size (rust-bin-1.75.0/rust-1.75.0-sparc64-unknown-netbsd.tar.xz) = 155575996 bytes
-BLAKE2s (rust-bin-1.75.0/rust-1.75.0-x86_64-apple-darwin.tar.gz) = ed157acd77760d4174a46c2757b94f2570893dbc1c08b7184d76324ae01dd952
-SHA512 (rust-bin-1.75.0/rust-1.75.0-x86_64-apple-darwin.tar.gz) = d30221f54226ba0200cc4605f61c4abdb00fc0435cd132ffd9ed15c1f88e993b1e36ff6f2e4bfc0efd217181f8d3b3b3d601598300821067cf5cb7fdab39d725
-Size (rust-bin-1.75.0/rust-1.75.0-x86_64-apple-darwin.tar.gz) = 324779780 bytes
-BLAKE2s (rust-bin-1.75.0/rust-1.75.0-x86_64-unknown-freebsd.tar.gz) = 38ae7059dda0a47ad682159a21da63743b34746415ab8b73d5601079017c2eea
-SHA512 (rust-bin-1.75.0/rust-1.75.0-x86_64-unknown-freebsd.tar.gz) = 52144faa646c363a7e05aa247b99bfe3779374b2543f922afd38203394df480eacb733d1ef4a391a6acf5c915beb7b923c549509fdb5a51153a15c0286148c7b
-Size (rust-bin-1.75.0/rust-1.75.0-x86_64-unknown-freebsd.tar.gz) = 312182515 bytes
-BLAKE2s (rust-bin-1.75.0/rust-1.75.0-x86_64-unknown-linux-gnu.tar.gz) = 6a435cd522a948f41db09706565aa437480b1a7f8b74c84bb025204675a06c00
-SHA512 (rust-bin-1.75.0/rust-1.75.0-x86_64-unknown-linux-gnu.tar.gz) = fdb0642e93915c150dd352c1c49fda275f61e78a91a6ff7403bd275fceb86563403055c00a0c745911bc9e17656e80034d257274ad3d306b1f3314ec1c541dcb
-Size (rust-bin-1.75.0/rust-1.75.0-x86_64-unknown-linux-gnu.tar.gz) = 321280060 bytes
-BLAKE2s (rust-bin-1.75.0/rust-1.75.0-x86_64-unknown-linux-musl.tar.gz) = 1e58268e89a3d83672277dfb6660573dfe4c72fd4fe1ca5fe456da993dd48131
-SHA512 (rust-bin-1.75.0/rust-1.75.0-x86_64-unknown-linux-musl.tar.gz) = eb814763531dd751acec9ac60925c867a750f421c80f3bc110049a53b7a7c10b985dc77210d409e43650bdfb5788758e25cb87358de8a9556272d04480a2a246
-Size (rust-bin-1.75.0/rust-1.75.0-x86_64-unknown-linux-musl.tar.gz) = 447845372 bytes
-BLAKE2s (rust-bin-1.75.0/rust-1.75.0-x86_64-unknown-netbsd.tar.gz) = 1a02e6000c7651ba5b350ff5fa9775e9953d632b46b894ede5248a3f7368ee33
-SHA512 (rust-bin-1.75.0/rust-1.75.0-x86_64-unknown-netbsd.tar.gz) = 4bfd41611c96e1bee4141e5a04d65f7f87f3b74c4eabc9dbf0d933bf36ebd24504fbccb43737f4230e9f9da607a128c4e4c99e7aeebacef8d40dd700330c041a
-Size (rust-bin-1.75.0/rust-1.75.0-x86_64-unknown-netbsd.tar.gz) = 286204478 bytes
diff --git a/rust175-bin/files/install.sh b/rust175-bin/files/install.sh
deleted file mode 100644
index 1cc270c333..0000000000
--- a/rust175-bin/files/install.sh
+++ /dev/null
@@ -1,971 +0,0 @@
-#!/bin/bash
-# Copyright 2014 The Rust Project Developers. See the COPYRIGHT
-# file at the top-level directory of this distribution and at
-# http://rust-lang.org/COPYRIGHT.
-#
-# Licensed under the Apache License, Version 2.0 <LICENSE-APACHE or
-# http://www.apache.org/licenses/LICENSE-2.0> or the MIT license
-# <LICENSE-MIT or http://opensource.org/licenses/MIT>, at your
-# option. This file may not be copied, modified, or distributed
-# except according to those terms.
-
-# No undefined variables
-set -u
-
-init_logging() {
-    local _abs_libdir="$1"
-    local _logfile="$_abs_libdir/$TEMPLATE_REL_MANIFEST_DIR/install.log"
-    LOGFILE="$_logfile"
-}
-
-log_line() {
-    local _line="$1"
-
-}
-
-msg() {
-    local _line="install: ${1-}"
-    echo "$_line"
-    log_line "$_line"
-}
-
-verbose_msg() {
-    if [ -n "${CFG_VERBOSE-}" ]; then
-	msg "${1-}"
-    else
-	log_line "install: ${1-}"
-    fi
-}
-
-step_msg() {
-    msg
-    msg "$1"
-    msg
-}
-
-verbose_step_msg() {
-    if [ -n "${CFG_VERBOSE-}" ]; then
-	msg
-	msg "$1"
-	msg
-    else
-	log_line ""
-	log_line "install: $1"
-	log_line ""
-    fi
-}
-
-warn() {
-    local _line="install: WARNING: $1"
-    echo "$_line" >&2
-    log_line "$_line"
-}
-
-err() {
-    local _line="install: error: $1"
-    echo "$_line" >&2
-    log_line "$_line"
-    exit 1
-}
-
-# A non-user error that is likely to result in a corrupted install
-critical_err() {
-    local _line="install: error: $1. see logs at '${LOGFILE-}'"
-    echo "$_line" >&2
-    log_line "$_line"
-    exit 1
-}
-
-need_ok() {
-    if [ $? -ne 0 ]
-    then
-        err "$1"
-    fi
-}
-
-critical_need_ok() {
-    if [ $? -ne 0 ]
-    then
-        critical_err "$1"
-    fi
-}
-
-want_ok() {
-    if [ $? -ne 0 ]; then
-	warn "$1"
-    fi
-}
-
-assert_nz() {
-    if [ -z "$1" ]; then err "assert_nz $2"; fi
-}
-
-need_cmd() {
-    if command -v $1 >/dev/null 2>&1
-    then verbose_msg "found $1"
-    else err "need $1"
-    fi
-}
-
-run() {
-    local _line="\$ $*"
-    "$@"
-    local _retval=$?
-    log_line "$_line"
-    return $_retval
-}
-
-write_to_file() {
-    local _msg="$1"
-    local _file="$2"
-    local _line="$ echo \"$_msg\" > \"$_file\""
-    echo "$_msg" > "$_file"
-    local _retval=$?
-    log_line "$_line"
-    return $_retval
-}
-
-append_to_file() {
-    local _msg="$1"
-    local _file="$2"
-    local _line="$ echo \"$_msg\" >> \"$_file\""
-    echo "$_msg" >> "$_file"
-    local _retval=$?
-    log_line "$_line"
-    return $_retval
-}
-
-make_dir_recursive() {
-    local _dir="$1"
-    local _line="$ umask 022 && mkdir -p \"$_dir\""
-    umask 022 && mkdir -p "$_dir"
-    local _retval=$?
-    log_line "$_line"
-    return $_retval
-}
-
-putvar() {
-    local t
-    local tlen
-    eval t=\$$1
-    eval tlen=\${#$1}
-}
-
-valopt() {
-    VAL_OPTIONS="$VAL_OPTIONS $1"
-
-    local op=$1
-    local default=$2
-    shift
-    shift
-    local doc="$*"
-    if [ $HELP -eq 0 ]
-    then
-        local uop=$(echo $op | tr 'a-z-' 'A-Z_')
-        local v="CFG_${uop}"
-        eval $v="$default"
-        for arg in $CFG_ARGS
-        do
-            if echo "$arg" | grep -q -- "--$op="
-            then
-                local val=$(echo "$arg" | cut -f2 -d=)
-                eval $v=$val
-            fi
-        done
-        putvar $v
-    else
-        if [ -z "$default" ]
-        then
-            default="<none>"
-        fi
-        op="${op}=[${default}]"
-        printf "    --%-30s %s\n" "$op" "$doc"
-    fi
-}
-
-opt() {
-    BOOL_OPTIONS="$BOOL_OPTIONS $1"
-
-    local op=$1
-    local default=$2
-    shift
-    shift
-    local doc="$*"
-    local flag=""
-
-    if [ $default -eq 0 ]
-    then
-        flag="enable"
-    else
-        flag="disable"
-        doc="don't $doc"
-    fi
-
-    if [ $HELP -eq 0 ]
-    then
-        for arg in $CFG_ARGS
-        do
-            if [ "$arg" = "--${flag}-${op}" ]
-            then
-                op=$(echo $op | tr 'a-z-' 'A-Z_')
-                flag=$(echo $flag | tr 'a-z' 'A-Z')
-                local v="CFG_${flag}_${op}"
-                eval $v=1
-                putvar $v
-            fi
-        done
-    else
-        if [ ! -z "${META-}" ]
-        then
-            op="$op=<$META>"
-        fi
-        printf "    --%-30s %s\n" "$flag-$op" "$doc"
-     fi
-}
-
-flag() {
-    BOOL_OPTIONS="$BOOL_OPTIONS $1"
-
-    local op=$1
-    shift
-    local doc="$*"
-
-    if [ $HELP -eq 0 ]
-    then
-        for arg in $CFG_ARGS
-        do
-            if [ "$arg" = "--${op}" ]
-            then
-                op=$(echo $op | tr 'a-z-' 'A-Z_')
-                local v="CFG_${op}"
-                eval $v=1
-                putvar $v
-            fi
-        done
-    else
-        if [ ! -z "${META-}" ]
-        then
-            op="$op=<$META>"
-        fi
-        printf "    --%-30s %s\n" "$op" "$doc"
-     fi
-}
-
-validate_opt () {
-    for arg in $CFG_ARGS
-    do
-        local is_arg_valid=0
-        for option in $BOOL_OPTIONS
-        do
-            if test --disable-$option = $arg
-            then
-                is_arg_valid=1
-            fi
-            if test --enable-$option = $arg
-            then
-                is_arg_valid=1
-            fi
-            if test --$option = $arg
-            then
-                is_arg_valid=1
-            fi
-        done
-        for option in $VAL_OPTIONS
-        do
-            if echo "$arg" | grep -q -- "--$option="
-            then
-                is_arg_valid=1
-            fi
-        done
-        if [ "$arg" = "--help" ]
-        then
-            echo
-            echo "No more help available for Configure options,"
-            echo "check the Wiki or join our IRC channel"
-            break
-        else
-            if test $is_arg_valid -eq 0
-            then
-                err "Option '$arg' is not recognized"
-            fi
-        fi
-    done
-}
-
-absolutify() {
-    local file_path="$1"
-    local file_path_dirname="$(dirname "$file_path")"
-    local file_path_basename="$(basename "$file_path")"
-    local file_abs_path="$(abs_path "$file_path_dirname")"
-    local file_path="$file_abs_path/$file_path_basename"
-    # This is the return value
-    RETVAL="$file_path"
-}
-
-# Prints the absolute path of a directory to stdout
-abs_path() {
-    local path="$1"
-    # Unset CDPATH because it causes havok: it makes the destination unpredictable
-    # and triggers 'cd' to print the path to stdout. Route `cd`'s output to /dev/null
-    # for good measure.
-    (unset CDPATH && cd "$path" > /dev/null && pwd)
-}
-
-uninstall_legacy() {
-    local _abs_libdir="$1"
-
-    local _uninstalled_something=false
-
-    # Replace commas in legacy manifest list with spaces
-    _legacy_manifest_dirs=`echo "$TEMPLATE_LEGACY_MANIFEST_DIRS" | sed "s/,/ /g"`
-
-    # Uninstall from legacy manifests
-    local _md
-    for _md in $_legacy_manifest_dirs; do
-	# First, uninstall from the installation prefix.
-	# Errors are warnings - try to rm everything in the manifest even if some fail.
-	if [ -f "$_abs_libdir/$_md/manifest" ]
-	then
-
-	    # iterate through installed manifest and remove files
-	    local _p;
-	    while read _p; do
-		# the installed manifest contains absolute paths
-		msg "removing legacy file $_p"
-		if [ -f "$_p" ]
-		then
-		    run rm -f "$_p"
-		    want_ok "failed to remove $_p"
-		else
-		    warn "supposedly installed file $_p does not exist!"
-		fi
-	    done < "$_abs_libdir/$_md/manifest"
-
-	    # If we fail to remove $md below, then the
-	    # installed manifest will still be full; the installed manifest
-	    # needs to be empty before install.
-	    msg "removing legacy manifest $_abs_libdir/$_md/manifest"
-	    run rm -f "$_abs_libdir/$_md/manifest"
-	    # For the above reason, this is a hard error
-	    need_ok "failed to remove installed manifest"
-
-	    # Remove $template_rel_manifest_dir directory
-	    msg "removing legacy manifest dir $_abs_libdir/$_md"
-	    run rm -R "$_abs_libdir/$_md"
-	    want_ok "failed to remove $_md"
-
-	    _uninstalled_something=true
-	fi
-    done
-
-    RETVAL="$_uninstalled_something"
-}
-
-uninstall_components() {
-    local _abs_libdir="$1"
-    local _dest_prefix="$2"
-    local _components="$3"
-
-    # We're going to start by uninstalling existing components. This
-    local _uninstalled_something=false
-
-    # First, try removing any 'legacy' manifests from before
-    # rust-installer
-    uninstall_legacy "$_abs_libdir"
-    assert_nz "$RETVAL", "RETVAL"
-    if [ "$RETVAL" = true ]; then
-	_uninstalled_something=true;
-    fi
-
-    # Load the version of the installed installer
-    local _installed_version=
-    if [ -f "$abs_libdir/$TEMPLATE_REL_MANIFEST_DIR/rust-installer-version" ]; then
-	_installed_version=`cat "$_abs_libdir/$TEMPLATE_REL_MANIFEST_DIR/rust-installer-version"`
-
-	# Sanity check
-	if [ ! -n "$_installed_version" ]; then critical_err "rust installer version is empty"; fi
-    fi
-
-    # If there's something installed, then uninstall
-    if [ -n "$_installed_version" ]; then
-	# Check the version of the installed installer
-	case "$_installed_version" in
-
-	    # If this is a previous version, then upgrade in place to the
-	    # current version before uninstalling.
-	    2 )
-		# The only change between version 2 -> 3 is that components are placed
-		# in subdirectories of the installer tarball. There are no changes
-		# to the installed data format, so nothing to do.
-		;;
-
-	    # This is the current version. Nothing need to be done except uninstall.
-	    "$TEMPLATE_RUST_INSTALLER_VERSION")
-		;;
-
-	    # If this is an unknown (future) version then bail.
-	    * )
-		echo "The copy of $TEMPLATE_PRODUCT_NAME at $_dest_prefix was installed using an"
-		echo "unknown version ($_installed_version) of rust-installer."
-		echo "Uninstall it first with the installer used for the original installation"
-		echo "before continuing."
-		exit 1
-		;;
-	esac
-
-	local _md="$_abs_libdir/$TEMPLATE_REL_MANIFEST_DIR"
-	local _installed_components="$(cat "$_md/components")"
-
-	# Uninstall (our components only) before reinstalling
-	local _available_component
-	for _available_component in $_components; do
-	    local _installed_component
-	    for _installed_component in $_installed_components; do
-		if [ "$_available_component" = "$_installed_component" ]; then
-		    msg "uninstalling component '$_available_component'"
-		    local _component_manifest="$_md/manifest-$_installed_component"
-
-		    # Sanity check: there should be a component manifest
-		    if [ ! -f "$_component_manifest" ]; then
-			critical_err "installed component '$_installed_component' has no manifest"
-		    fi
-
-		    # Iterate through installed component manifest and remove files
-		    local _directive
-		    while read _directive; do
-
-			local _command=${_directive%%:*}
-			local _file=${_directive#*:}
-
-			# Sanity checks
-			if [ ! -n "$_command" ]; then critical_err "malformed installation directive"; fi
-			if [ ! -n "$_file" ]; then critical_err "malformed installation directive"; fi
-
-			case "$_command" in
-			    file)
-				verbose_msg "removing file $_file"
-				if [ -f "$_file" ]; then
-				    run rm -f "$_file"
-				    want_ok "failed to remove $_file"
-				else
-				    warn "supposedly installed file $_file does not exist!"
-				fi
-				;;
-
-			    dir)
-				verbose_msg "removing directory $_file"
-				run rm -r "$_file"
-				want_ok "unable to remove directory $_file"
-				;;
-
-			    *)
-				critical_err "unknown installation directive"
-				;;
-			esac
-
-		    done < "$_component_manifest"
-
-		    # Remove the installed component manifest
-		    verbose_msg "removing component manifest $_component_manifest"
-		    run rm "$_component_manifest"
-		    # This is a hard error because the installation is unrecoverable
-		    critical_need_ok "failed to remove installed manifest for component '$_installed_component'"
-
-		    # Update the installed component list
-		    local _modified_components="$(sed "/^$_installed_component\$/d" "$_md/components")"
-		    write_to_file "$_modified_components" "$_md/components"
-		    critical_need_ok "failed to update installed component list"
-		fi
-	    done
-	done
-
-	# If there are no remaining components delete the manifest directory,
-	# but only if we're doing an uninstall - if we're doing an install,
-	# then leave the manifest directory around to hang onto the logs,
-	# and any files not managed by the installer.
-	if [ -n "${CFG_UNINSTALL-}" ]; then
-	    local _remaining_components="$(cat "$_md/components")"
-	    if [ ! -n "$_remaining_components" ]; then
-		verbose_msg "removing manifest directory $_md"
-		run rm -r "$_md"
-		want_ok "failed to remove $_md"
-
-		maybe_unconfigure_ld
-	    fi
-	fi
-
-	_uninstalled_something=true
-    fi
-
-    # There's no installed version. If we were asked to uninstall, then that's a problem.
-    if [ -n "${CFG_UNINSTALL-}" -a "$_uninstalled_something" = false ]
-    then
-	err "unable to find installation manifest at $CFG_LIBDIR/$TEMPLATE_REL_MANIFEST_DIR"
-    fi
-}
-
-install_components() {
-    local _src_dir="$1"
-    local _abs_libdir="$2"
-    local _dest_prefix="$3"
-    local _components="$4"
-
-    local _component
-    for _component in $_components; do
-
-	msg "installing component '$_component'"
-
-	# The file name of the manifest we're installing from
-	local _input_manifest="$_src_dir/$_component/manifest.in"
-
-	# Sanity check: do we have our input manifests?
-	if [ ! -f "$_input_manifest" ]; then
-	    critical_err "manifest for $_component does not exist at $_input_manifest"
-	fi
-
-	# The installed manifest directory
-	local _md="$_abs_libdir/$TEMPLATE_REL_MANIFEST_DIR"
-
-	# The file name of the manifest we're going to create during install
-	local _installed_manifest="$_md/manifest-$_component"
-
-	# Create the installed manifest, which we will fill in with absolute file paths
-	touch "$_installed_manifest"
-	critical_need_ok "failed to create installed manifest"
-
-	# Add this component to the installed component list
-	append_to_file "$_component" "$_md/components"
-	critical_need_ok "failed to update components list for $_component"
-
-	# Now install, iterate through the new manifest and copy files
-	local _directive
-	while read _directive; do
-
-	    local _command=${_directive%%:*}
-	    local _file=${_directive#*:}
-
-	    # Sanity checks
-	    if [ ! -n "$_command" ]; then critical_err "malformed installation directive"; fi
-	    if [ ! -n "$_file" ]; then critical_err "malformed installation directive"; fi
-
-	    # Decide the destination of the file
-	    local _file_install_path="$_dest_prefix/$_file"
-
-	    case "$_file" in
-		etc/*)
-		    local _f=${_file#"etc/"}
-		    _file_install_path="$CFG_DESTDIR_PREFIX/share/doc/cargo/$_f"
-		    ;;
-		bin/*)
-		    local _f=${_file#"bin/"}
-		    _file_install_path="$CFG_BINDIR/$_f"
-		    ;;
-		lib/*)
-		    local _f=${_file#"lib/"}
-		    _file_install_path="$CFG_LIBDIR/$_f"
-		    ;;
-		share/man/*)
-		    local _f=${_file#"share/man/"}
-		    _file_install_path="$CFG_DESTDIR_PREFIX/$PKGMANDIR/$_f"
-		    ;;
-		share/doc/*)
-            # HACK: Try to support overriding --docdir.  Paths with the form
-            # "share/doc/$product/" can be redirected to a single --docdir
-            # path. If the following detects that --docdir has been specified
-            # then it will replace everything preceeding the "$product" path
-            # component. The problem here is that the combined rust installer
-            # contains two "products": rust and cargo; so the contents of those
-            # directories will both be dumped into the same directory; and the
-            # contents of those directories are _not_ disjoint. Since this feature
-            # is almost entirely to support 'make install' anyway I don't expect
-            # this problem to be a big deal in practice.
-		    if [ "$CFG_DOCDIR" != "<default>" ]; then
-			local _f=${_file#"share/doc/"*/}
-			_file_install_path="$CFG_DOCDIR/$_f"
-		    fi
-		    ;;
-		share/*)
-		    local _f=${_file#"share/"}
-		    _file_install_path="$CFG_DATADIR/$_f"
-		    ;;
-	    esac
-
-
-	    # Make sure there's a directory for it
-	    make_dir_recursive "$(dirname "$_file_install_path")"
-	    critical_need_ok "directory creation failed"
-
-	    # Make the path absolute so we can uninstall it later without
-	    # starting from the installation cwd
-	    absolutify "$_file_install_path"
-	    _file_install_path="$RETVAL"
-	    assert_nz "$_file_install_path" "file_install_path"
-
-	    case "$_command" in
-		file )
-
-		    verbose_msg "copying file $_file_install_path"
-
-		    maybe_backup_path "$_file_install_path"
-
-		    local mode=644
-		    if test -x "$_src_dir/$_component/$_file"; then
-			mode=755
-		    fi
-		    case "$_file" in
-			bin/*) mode=755
-			       ;;
-		    esac
-		    run cp "$_src_dir/$_component/$_file" "$_file_install_path"
-		    run chmod $mode "$_file_install_path"
-		    critical_need_ok "file creation failed"
-
-		    # Update the manifest
-		    append_to_file "file:$_file_install_path" "$_installed_manifest"
-		    critical_need_ok "failed to update manifest"
-
-		    ;;
-
-		dir )
-
-		    verbose_msg "copying directory $_file_install_path"
-
-		    maybe_backup_path "$_file_install_path"
-
-		    run cp -R "$_src_dir/$_component/$_file" "$_file_install_path"
-		    critical_need_ok "failed to copy directory"
-
-                    # Set permissions. 0755 for dirs, 644 for files
-                    run chmod -R u+rwX,go+rX,go-w "$_file_install_path"
-                    critical_need_ok "failed to set permissions on directory"
-
-		    # Update the manifest
-		    append_to_file "dir:$_file_install_path" "$_installed_manifest"
-		    critical_need_ok "failed to update manifest"
-		    ;;
-
-		*)
-		    critical_err "unknown installation directive"
-		    ;;
-	    esac
-	done < "$_input_manifest"
-
-    done
-}
-
-maybe_configure_ld() {
-    local _abs_libdir="$1"
-
-    local _ostype="$(uname -s)"
-    assert_nz "$_ostype"  "ostype"
-
-    if [ "$_ostype" = "Linux" -a ! -n "${CFG_DISABLE_LDCONFIG-}" ]; then
-
-	# Fedora-based systems do not configure the dynamic linker to look
-	# /usr/local/lib, which is our default installation directory. To
-	# make things just work, try to put that directory in
-	# /etc/ld.so.conf.d/rust-installer-v1 so ldconfig picks it up.
-	# Issue #30.
-	#
-	# This will get rm'd when the last component is uninstalled in
-	# maybe_unconfigure_ld.
-	if [ "$_abs_libdir" = "/usr/local/lib" -a -d "/etc/ld.so.conf.d" ]; then
-	    echo "$_abs_libdir" > "/etc/ld.so.conf.d/rust-installer-v1-$TEMPLATE_REL_MANIFEST_DIR.conf"
-	    if [ $? -ne 0 ]; then
-		# This shouldn't happen if we've gotten this far
-		# installing to /usr/local
-		warn "failed to update /etc/ld.so.conf.d. this is unexpected"
-	    fi
-	fi
-
-	verbose_msg "running ldconfig"
-	if [ -n "${CFG_VERBOSE-}" ]; then
-	    ldconfig
-	else
-	    ldconfig 2> /dev/null
-	fi
-	if [ $? -ne 0 ]
-	then
-            warn "failed to run ldconfig. this may happen when not installing as root. run with --verbose to see the error"
-	fi
-    fi
-}
-
-maybe_unconfigure_ld() {
-    local _ostype="$(uname -s)"
-    assert_nz "$_ostype"  "ostype"
-
-    if [ "$_ostype" != "Linux" ]; then
-	return 0
-    fi
-
-    rm "/etc/ld.so.conf.d/rust-installer-v1-$TEMPLATE_REL_MANIFEST_DIR.conf" 2> /dev/null
-    # Above may fail since that file may not have been created on install
-}
-
-# Doing our own 'install'-like backup that is consistent across platforms
-maybe_backup_path() {
-    local _file_install_path="$1"
-
-    if [ -e "$_file_install_path" ]; then
-	msg "backing up existing file at $_file_install_path"
-	run mv -f "$_file_install_path" "$_file_install_path.old"
-	critical_need_ok "failed to back up $_file_install_path"
-    fi
-}
-
-install_uninstaller() {
-    local _src_dir="$1"
-    local _src_basename="$2"
-    local _abs_libdir="$3"
-
-    local _uninstaller="$_abs_libdir/$TEMPLATE_REL_MANIFEST_DIR/uninstall.sh"
-    msg "creating uninstall script at $_uninstaller"
-    run cp "$_src_dir/$_src_basename" "$_uninstaller"
-    critical_need_ok "unable to install uninstaller"
-}
-
-do_preflight_sanity_checks() {
-    local _src_dir="$1"
-    local _dest_prefix="$2"
-
-    # Sanity check: can we can write to the destination?
-    verbose_msg "verifying destination is writable"
-    make_dir_recursive "$CFG_LIBDIR"
-    need_ok "can't write to destination. consider \`sudo\`."
-    touch "$CFG_LIBDIR/rust-install-probe" > /dev/null
-    if [ $? -ne 0 ]
-    then
-	err "can't write to destination. consider \`sudo\`."
-    fi
-    rm "$CFG_LIBDIR/rust-install-probe"
-    need_ok "failed to remove install probe"
-
-    # Sanity check: don't install to the directory containing the installer.
-    # That would surely cause chaos.
-    verbose_msg "verifying destination is not the same as source"
-    local _prefix_dir="$(abs_path "$dest_prefix")"
-    if [ "$_src_dir" = "$_dest_prefix" -a "${CFG_UNINSTALL-}" != 1 ]; then
-	err "cannot install to same directory as installer"
-    fi
-}
-
-verbose_msg "looking for install programs"
-verbose_msg
-
-need_cmd mkdir
-need_cmd printf
-need_cmd cut
-need_cmd grep
-need_cmd uname
-need_cmd tr
-need_cmd sed
-need_cmd chmod
-need_cmd env
-need_cmd pwd
-
-CFG_ARGS="${@:-}"
-
-HELP=0
-if [ "${1-}" = "--help" ]
-then
-    HELP=1
-    shift
-    echo
-    echo "Usage: $0 [options]"
-    echo
-    echo "Options:"
-    echo
-else
-    verbose_step_msg "processing arguments"
-fi
-
-OPTIONS=""
-BOOL_OPTIONS=""
-VAL_OPTIONS=""
-
-flag uninstall "only uninstall from the installation prefix"
-valopt destdir "" "set installation root"
-valopt prefix "/usr/local" "set installation prefix"
-
-# Avoid prepending an extra / to the prefix path if there's no destdir
-# NB: CFG vars here are undefined when passing --help
-if [ -z "${CFG_DESTDIR-}" ]; then
-    CFG_DESTDIR_PREFIX="${CFG_PREFIX-}"
-else
-    CFG_DESTDIR_PREFIX="$CFG_DESTDIR/$CFG_PREFIX"
-fi
-
-# NB This isn't quite the same definition as in `configure`.
-# just using 'lib' instead of configure's CFG_LIBDIR_RELATIVE
-valopt without "" "comma-separated list of components to not install"
-valopt components "" "comma-separated list of components to install"
-flag list-components "list available components"
-valopt sysconfdir "$CFG_DESTDIR_PREFIX/etc" "install system configuration files"
-valopt bindir "$CFG_DESTDIR_PREFIX/bin" "install binaries"
-valopt libdir "$CFG_DESTDIR_PREFIX/lib" "install libraries"
-valopt datadir "$CFG_DESTDIR_PREFIX/share" "install data"
-# NB We repeat datadir default value because we don't set CFG_DATADIR in --help
-valopt mandir "${CFG_DATADIR-"$CFG_DESTDIR_PREFIX/share"}/man" "install man pages in PATH"
-# NB See the docdir handling in install_components for an explanation of this
-# weird <default> string
-valopt docdir "\<default\>" "install documentation in PATH"
-opt ldconfig 1 "run ldconfig after installation (Linux only)"
-opt verify 1 "obsolete"
-flag verbose "run with verbose output"
-
-if [ $HELP -eq 1 ]
-then
-    echo
-    exit 0
-fi
-
-verbose_step_msg "validating arguments"
-validate_opt
-
-# Template configuration.
-# These names surrounded by '%%` are replaced by sed when generating install.sh
-# FIXME: Might want to consider loading this from a file and not generating install.sh
-
-# Rust or Cargo
-TEMPLATE_PRODUCT_NAME='Rust'
-# rustlib or cargo
-TEMPLATE_REL_MANIFEST_DIR=rustlib
-# 'Rust is ready to roll.' or 'Cargo is cool to cruise.'
-TEMPLATE_SUCCESS_MESSAGE='rust installed.'
-# Locations to look for directories containing legacy, pre-versioned manifests
-TEMPLATE_LEGACY_MANIFEST_DIRS='rustlib,cargo'
-# The installer version
-TEMPLATE_RUST_INSTALLER_VERSION='3'
-
-# OK, let's get installing ...
-
-# This is where we are installing from
-src_dir="$(abs_path $(dirname "$0"))"
-
-# The name of the script
-src_basename="$(basename "$0")"
-
-# If we've been run as 'uninstall.sh' (from the existing installation)
-# then we're doing a full uninstall, as opposed to the --uninstall flag
-# which just means 'uninstall my components'.
-if [ "$src_basename" = "uninstall.sh" ]; then
-    if [ "${*:-}" != "" ]; then
-	# Currently don't know what to do with arguments in this mode
-	err "uninstall.sh does not take any arguments"
-    fi
-    CFG_UNINSTALL=1
-    CFG_DESTDIR_PREFIX="$(abs_path "$src_dir/../../")"
-    CFG_LIBDIR="$(abs_path "$src_dir/../")"
-fi
-
-# This is where we are installing to
-dest_prefix="$CFG_DESTDIR_PREFIX"
-
-# Open the components file to get the list of components to install.
-# NB: During install this components file is read from the installer's
-# source dir, during a full uninstall it's read from the manifest dir,
-# and thus contains all installed components.
-components=`cat "$src_dir/components"`
-
-# Sanity check: do we have components?
-if [ ! -n "$components" ]; then
-    err "unable to find installation components"
-fi
-
-# If the user asked for a component list, do that and exit
-if [ -n "${CFG_LIST_COMPONENTS-}" ]; then
-    echo
-    echo "# Available components"
-    echo
-    for component in $components; do
-	echo "* $component"
-    done
-    echo
-    exit 0
-fi
-
-# If the user specified which components to install/uninstall,
-# then validate that they exist and select them for installation
-if [ -n "$CFG_COMPONENTS" ]; then
-    # Remove commas
-    user_components="$(echo "$CFG_COMPONENTS" | sed "s/,/ /g")"
-    for user_component in $user_components; do
-	found=false
-	for my_component in $components; do
-	    if [ "$user_component" = "$my_component" ]; then
-		found=true
-	    fi
-	done
-	if [ "$found" = false ]; then
-	    err "unknown component: $user_component"
-	fi
-    done
-    components="$user_components"
-fi
-
-if [ -n "$CFG_WITHOUT" ]; then
-    without_components="$(echo "$CFG_WITHOUT" | sed "s/,/ /g")"
-    for without_component in $without_components; do
-	components="$(echo "$components" | sed "s/$without_component//" | sed "s/$without_component//")"
-    done
-fi
-
-if [ -z "$components" ]; then
-    if [ -z "${CFG_UNINSTALL-}" ]; then
-	err "no components selected for installation"
-    else
-	err "no components selected for uninstallation"
-    fi
-fi
-
-do_preflight_sanity_checks "$src_dir" "$dest_prefix"
-
-# Using an absolute path to libdir in a few places so that the status
-# messages are consistently using absolute paths.
-absolutify "$CFG_LIBDIR"
-abs_libdir="$RETVAL"
-assert_nz "$abs_libdir" "abs_libdir"
-
-# Create the manifest directory, where we will put our logs
-make_dir_recursive "$abs_libdir/$TEMPLATE_REL_MANIFEST_DIR"
-need_ok "failed to create $TEMPLATE_REL_MANIFEST_DIR"
-
-# Log messages and commands
-init_logging "$abs_libdir"
-
-# First do any uninstallation, including from legacy manifests. This
-# will also upgrade the metadata of existing installs.
-uninstall_components "$abs_libdir" "$dest_prefix" "$components"
-
-# If we're only uninstalling then exit
-if [ -n "${CFG_UNINSTALL-}" ]
-then
-    echo
-    echo "    $TEMPLATE_PRODUCT_NAME is uninstalled."
-    echo
-    exit 0
-fi
-
-# Create the manifest directory again! uninstall_legacy
-# may have deleted it.
-make_dir_recursive "$abs_libdir/$TEMPLATE_REL_MANIFEST_DIR"
-need_ok "failed to create $TEMPLATE_REL_MANIFEST_DIR"
-
-# Drop the version number into the manifest dir
-write_to_file "$TEMPLATE_RUST_INSTALLER_VERSION" "$abs_libdir/$TEMPLATE_REL_MANIFEST_DIR/rust-installer-version"
-critical_need_ok "failed to write installer version"
-
-# Install the uninstaller
-
-# Install each component
-install_components "$src_dir" "$abs_libdir" "$dest_prefix" "$components"
-
-# Make dynamic libraries available to the linker
-maybe_configure_ld "$abs_libdir"
-
-echo
-echo "    $TEMPLATE_SUCCESS_MESSAGE"
-echo
-
-
diff --git a/rust175/DESCR b/rust175/DESCR
deleted file mode 100644
index 6dc90a671e..0000000000
--- a/rust175/DESCR
+++ /dev/null
@@ -1,13 +0,0 @@
-Rust is a systems programming language focused on three goals: safety,
-speed, and concurrency.  It maintains these goals without having a
-garbage collector, making it a useful language for a number of use cases
-other languages aren't good at: embedding in other languages, programs
-with specific space and time requirements, and writing low-level code,
-like device drivers and operating systems.
-
-It improves on current languages targeting this space by having a number
-of compile-time safety checks that produce no runtime overhead, while
-eliminating all data races.  Rust also aims to achieve "zero-cost
-abstractions" even though some of these abstractions feel like those of
-a high-level language.  Even then, Rust still allows precise control
-like a low-level language would.
diff --git a/rust175/HOWTO-BOOTSTRAP b/rust175/HOWTO-BOOTSTRAP
deleted file mode 100644
index 81133db2ec..0000000000
--- a/rust175/HOWTO-BOOTSTRAP
+++ /dev/null
@@ -1,85 +0,0 @@
-How to build a rust bootstrap kit using pkgsrc
-----------------------------------------------
-
-A rust bootstrap kit is simply a pre-compiled binary of rust and
-the rust standard library, and contains the "rust" and "rust-std"
-build results, found in
-
-   work/rustc-<version>/build/dist/
-as
-   rust-<version>-<target>.tar.xz
-and
-   rust-std-<version>-<target>.tar.xz
-
-These result files are produced when the "dist" build target is
-used, ref. BUILD_TARGET.   For a normal native build of the rust
-pkgsrc package, the default BUILD_TARGET is "build", not "dist".
-
-There are two possible ways to produce a bootstrap kit:
-
-1) a native build.  This requires minimum preparation, except
-   possibly for setting rust.BUILD_TARGET to "dist" via e.g.
-   /etc/mk.conf.  Note that on NetBSD, using the "BUILD_TARGET" ==
-   "dist" results in the "rust-cargo-static" option being set, ref.
-   options.mk.  This is so that the resulting bootstrap kits are
-   built with mostly-static linking, reducing the run-time dependencies
-   of the bootstrap kits.
-
-2) a cross-build.  This requires a bit of preparation:
-
-   For each target you want to cross-build rust for, you need
-     - the cross toolchain resulting from "build.sh tools" for
-       the intended target
-     - an OS distribution extracted, including the comp.tgz
-       set so that the target's include files can be used
-     - for 32-bit ports, the "libatomic" package needs to be
-       available.  I'm sure there's a clever and long-winded
-       use of pkg_install which can be used to effect this;
-       I on my hand have always just extracted the tgz file
-       and done the minimal cleanup of the "cruft" files
-       which are part of the package meta-data.
-     - Pick a root directory for the target, e.g. /u/i386.
-       Below this directory place the "tools" containing
-       the cross-compiler in a "tools" sub-directory.
-       Similarly, the extracted OS distribution in the "dest"
-       sub-directory.
-
-   There are two methods available for doing the cross-compile:
-
-   a) Using the "cross.mk" file.  For an i386 build against i586, the
-      following settings should be active:
-
-CROSS_ROOT=            /u/i386
-MAKE_ENV+=             CROSS_ROOT=${CROSS_ROOT}
-GNU_CROSS_TARGET=      i486--netbsdelf
-MAKE_ENV+=             GNU_CROSS_TARGET=${GNU_CROSS_TARGET}
-TARGET=                i586-unknown-netbsd
-SCRIPTS=               ${WRKDIR}/scripts
-CONFIGURE_ARGS+=       --host=${TARGET}
-CONFIGURE_ARGS+=       --target=${TARGET}
-CONFIGURE_ARGS+=       --set=target.${TARGET}.cc=${SCRIPTS}/gcc-wrap
-CONFIGURE_ARGS+=       --set=target.${TARGET}.cxx=${SCRIPTS}/c++-wrap
-CONFIGURE_ARGS+=       --set=target.${TARGET}.linker=${SCRIPTS}/gcc-wrap
-CONFIGURE_ARGS+=       --set=target.${TARGET}.ar=${CROSS_ROOT}/tools/bin/${GNU_CROSS_TARGET}-ar
-
-      Then doing a "make" will cross-build rust, including the LLVM
-      embedded in the rust distribution, ref. the defaulting of that
-      option when TARGET is defined ref. options.mk.
-
-      Note that when TARGET is set, the default build target for
-      the rust makefile becomes "dist", so there's no need to set
-      rust.BUILD_TARGET for cross-builds.
-
-   b) Using the "do-cross.mk" Makefile.  This will attempt to
-      cross-build rust for all the targets listed in the SHORT_TARGETS
-      variable in that file.  Overriding the root directories for
-      the various targets can be done by making your own "local-roots.mk"
-      file, ref. "do-cross.mk".
-
-      This will create a "dist" subdirectory in the rust pkgsrc
-      directory, and the bootstrap kits for each architecture, plus
-      the library source kit will be placed in this directory.
-
-The bootstrap kits can then be placed in /usr/pkgsrc/distfiles, and
-be used by the "next" rust version, where you can use "make makesum"
-to compute the updated checksums for the bootstrap kits.
diff --git a/rust175/Makefile b/rust175/Makefile
deleted file mode 100644
index 67b5732b38..0000000000
--- a/rust175/Makefile
+++ /dev/null
@@ -1,707 +0,0 @@
-# $NetBSD: Makefile,v 1.284 2023/06/19 14:46:47 bsiegert Exp $
-
-DISTNAME=	rustc-1.75.0-src
-PKGNAME=	${DISTNAME:S/rustc/rust/:S/-src//}
-CATEGORIES=	lang
-MASTER_SITES=	https://static.rust-lang.org/dist/
-
-MAINTAINER=	pkgsrc-users%NetBSD.org@localhost
-HOMEPAGE=	https://www.rust-lang.org/
-COMMENT=	Safe, concurrent, practical language
-LICENSE=	mit OR apache-2.0
-
-CONFLICTS+=	rust-bin-[0-9]*
-
-# LLVM uses -std=c++17
-USE_CXX_FEATURES+=	c++17
-USE_GCC_RUNTIME=	yes
-USE_LANGUAGES=		c c++
-USE_LIBTOOL=		yes
-USE_TOOLS+=		bash grep gmake perl:build pkg-config
-
-# The NetBSD bootstraps are built for NetBSD 8 (because rust doesn't
-# build on 7).  Mark earlier versions as broken.
-BROKEN_ON_PLATFORM+=	NetBSD-[1-7].*-*
-# Bootstrap is built for NetBSD 9.x on these platforms:
-BROKEN_ON_PLATFORM+=	NetBSD-8.*-*arm*
-BROKEN_ON_PLATFORM+=	NetBSD-8.*-aarch64
-BROKEN_ON_PLATFORM+=	NetBSD-8.*-sparc64
-BROKEN_ON_PLATFORM+=	NetBSD-8.*-powerpc
-BROKEN_ON_PLATFORM+=	NetBSD-8.*-i386
-
-HAS_CONFIGURE=		yes
-PYTHON_FOR_BUILD_ONLY=	yes
-CONFIG_SHELL=		${PYTHONBIN}
-CONFIGURE_SCRIPT=	src/bootstrap/configure.py
-CONFIGURE_ARGS+=	--prefix=${PREFIX}
-CONFIGURE_ARGS+=	--mandir=${PREFIX}/${PKGMANDIR}
-CONFIGURE_ARGS+=	--sysconfdir=${PKG_SYSCONFDIR}
-CONFIGURE_ARGS+=	--python=${PYTHONBIN}
-CONFIGURE_ARGS+=	--release-channel=stable
-CONFIGURE_ARGS+=	--local-rust-root=${RUST_BOOTSTRAP_PATH}
-CONFIGURE_ARGS+=	--enable-extended	# Build and install cargo too.
-CONFIGURE_ARGS+=	--enable-rpath
-CONFIGURE_ARGS+=	--disable-codegen-tests
-CONFIGURE_ARGS+=	--disable-compiler-docs
-CONFIGURE_ARGS+=	--disable-llvm-static-stdcpp
-CONFIGURE_ARGS+=	--disable-ninja
-CONFIGURE_ARGS+=	--dist-compression-formats=xz
-
-# Include (optional) settings to cross-build rust
-.include "cross.mk"
-
-# optional from do-cross.mk
-CONFIGURE_ARGS+=	${ADD_CONFIGURE_ARGS}
-
-# Getting RPATH with $ORIGIN into bootstrap may be troublesome, so
-# uncommenting the LD_LIBRARY_PATH setting may be required to run
-# the bootstrap
-PKGSRC_MAKE_ENV+=	LD_LIBRARY_PATH=${RUST_BOOTSTRAP_PATH:Q}/lib
-
-# This should allow us to perform "offline" builds (so cargo doesn't fetch
-# dependencies during the build stage) but this isn't hooked up yet.
-CONFIGURE_ARGS+=	--enable-vendor
-
-# cargo defaults to using the number of available CPUs
-MAKE_ENV+=		CARGO_BUILD_JOBS=${_MAKE_JOBS_N}
-
-# Rust builds some bundled components with strict version requirements, ensure
-# that any conflicting packages pulled in via dependencies are not buildlinked.
-BUILDLINK_FILES_CMD.libssh2=	${TRUE}
-BUILDLINK_FILES_CMD.xz=		${TRUE}
-MAKE_ENV+=			LZMA_API_STATIC=1
-
-# MacOS X 10.7 is the oldest supported version. See
-# ${WRKSRC}/src/bootstrap/lib.rs
-MAKE_ENV.Darwin+=	MACOSX_DEPLOYMENT_TARGET="10.7"
-
-CFLAGS.SunOS+=		-D_POSIX_PTHREAD_SEMANTICS
-MAKE_ENV.SunOS+=	AR=gar
-
-# Debugging of crate resolution
-# Annoyingly, this makes the powerpc build succeed...
-#MAKE_ENV+=		RUSTC_LOG=rustc_metadata
-
-UNLIMIT_RESOURCES+=	cputime stacksize datasize virtualsize
-
-TEST_TARGET=	check
-
-# bin/* lib/*, but names vary
-CHECK_RELRO_SUPPORTED=	no
-CHECK_SSP_SUPPORTED=	no
-
-.include "../../mk/bsd.prefs.mk"
-
-# Allow overriding MAKE_JOBS_SAFE
-# some may chose to mostly build faster,
-# and deal with any failures due to deadlocks
-.if !empty(rust.MAKE_JOBS_SAFE)
-.  if ${rust.MAKE_JOBS_SAFE:tl} == "yes"
-MAKE_JOBS_SAFE=		yes
-.  endif
-.endif
-
-.if !empty(rust.BUILD_TARGET)
-BUILD_TARGET=	${rust.BUILD_TARGET}
-.endif
-
-.if !empty(TARGET)
-# Use "dist" build target for cross compile of bootstrap
-BUILD_TARGET?=		dist
-.else
-BUILD_TARGET?=		build
-.endif
-
-.if ${MACHINE_PLATFORM:MNetBSD-*-powerpc} || \
-    ${MACHINE_PLATFORM:MNetBSD-*-earmv[67]hf} || \
-    ${MACHINE_PLATFORM:MNetBSD-*-mipsel} || \
-    !empty(TARGET:Marmv[67]-unknown-netbsd-eabihf) || \
-    !empty(TARGET:Mmipsel-unknown-netbsd)
-# Bootstrapping on NetBSD/powerpc requires no debug-info from rustc
-# (both for amd64->powerpc built and powerpc->powerpc built bootstrap bits)
-# Also try to downsize the armv[67] build.
-CONFIGURE_ARGS+=	--disable-debug
-CONFIGURE_ARGS+=	--disable-debug-assertions
-CONFIGURE_ARGS+=	--disable-llvm-release-debuginfo
-CONFIGURE_ARGS+=	--debuginfo-level=0
-CONFIGURE_ARGS+=	--debuginfo-level-rustc=0
-CONFIGURE_ARGS+=	--debuginfo-level-std=0
-CONFIGURE_ARGS+=	--debuginfo-level-tools=0
-CONFIGURE_ARGS+=	--debuginfo-level-tests=0
-.endif
-
-# Only build the ARM target on/for this host, due to resource constraints
-.if ${MACHINE_PLATFORM:MNetBSD-*-earmv[67]hf}
-CONFIGURE_ARGS+=	--set llvm.targets="ARM"
-.endif
-# When cross-building for ARM on X86, X86 needs to go along due
-# to 2-stage build process
-.if !empty(TARGET:Marmv[67]-unknown-netbsd-eabihf)
-CONFIGURE_ARGS+=	--set llvm.targets="ARM;X86"
-.endif
-# Same for mips:
-.if ${MACHINE_PLATFORM:MNetBSD-*-mipsel}
-CONFIGURE_ARGS+=	--set llvm.targets="Mips"
-.endif
-.if !empty(TARGET:Mmipsel-unknown-netbsd)
-CONFIGURE_ARGS+=	--set llvm.targets="Mips;X86"
-.endif
-
-CHECK_INTERPRETER_SKIP+=	lib/rustlib/src/rust/library/backtrace/ci/android-sdk.sh
-CHECK_INTERPRETER_SKIP+=	lib/rustlib/src/rust/library/backtrace/ci/debuglink.sh
-CHECK_INTERPRETER_SKIP+=	lib/rustlib/src/rust/library/backtrace/ci/run.sh
-CHECK_INTERPRETER_SKIP+=	lib/rustlib/src/rust/library/backtrace/ci/run-docker.sh
-CHECK_INTERPRETER_SKIP+=	lib/rustlib/src/rust/library/core/src/unicode/printable.py
-CHECK_INTERPRETER_SKIP+=	lib/rustlib/src/rust/library/stdarch/ci/build-std-detect.sh
-CHECK_INTERPRETER_SKIP+=	lib/rustlib/src/rust/library/stdarch/ci/dox.sh
-CHECK_INTERPRETER_SKIP+=	lib/rustlib/src/rust/library/stdarch/ci/run-docker.sh
-CHECK_INTERPRETER_SKIP+=	lib/rustlib/src/rust/library/stdarch/ci/run.sh
-CHECK_INTERPRETER_SKIP+=	lib/rustlib/src/rust/library/stdarch/ci/style.sh
-
-CHECK_PORTABILITY_SKIP+=	tests/run-make/dump-ice-to-disk/check.sh
-
-.if ${OPSYS} == "NetBSD"
-# This block contains information about known trouble on NetBSD and workarounds.
-
-# Parallel builds failed on NetBSD due to dynamic linker locking bugs.
-# \todo Explain if the build is believed to be sound if not parallel,
-# or if a non-parallel build is merely more likely to work.
-#
-# See toolchain/54192 at
-#   http://gnats.netbsd.org/cgi-bin/query-pr-single.pl?number=54192
-# which was fixed in -current on 2020-04-19:
-#   http://mail-index.netbsd.org/source-changes/2020/04/16/msg116256.html
-#   http://mail-index.netbsd.org/source-changes/2020/04/19/msg116337.html
-# These  were pulled up to netbsd-9 on 2020-05-13:
-#   http://releng.netbsd.org/cgi-bin/req-9.cgi?show=907
-# This has not been pulled up to netbsd-8
-#   \todo Explain if it's not applicable, shouldn't be pulled up, should be
-#   but hasn't, is too hard, etc.
-#
-# On pkgbuild for 2020Q1 9.0_RELEASE amd64, rust did not build despite
-# MAKE_JOBS_SAFE=no, but setting MAKE_JOBS=1 resulted in success. (No
-# PR is open for this.)  \todo Understand and fix.
-#
-# If we aren't on 9-current, and are on 8.x or 9.x, avoid parallel.
-# Release 9.x and 9.1 or later is OK.
-.  if ${OPSYS} == "NetBSD" && 090999 < ${OPSYS_VERSION} && ${OPSYS_VERSION} < 090900
-MAKE_JOBS_SAFE?=	no
-.  endif
-
-# Open PRs
-#
-# Broken package with PREFIX not /usr/pkg:
-#   http://gnats.netbsd.org/cgi-bin/query-pr-single.pl?number=54453
-#
-
-.endif
-
-#
-# Under NetBSD, do not use DT_RUNPATH
-#
-BUILDLINK_TRANSFORM.NetBSD+=	rm:-Wl,--enable-new-dtags
-
-#
-# Somewhere in the LLVM build "-arch x86_64" is passed on macOS/arm64 which
-# breaks linking, see https://github.com/rust-lang/rust/issues/81790.  Until
-# this can be located (proving difficult!) we just force it.
-#
-.if ${MACHINE_PLATFORM:MDarwin-*-aarch64}
-BUILDLINK_TRANSFORM+=	opt:x86_64:arm64
-.endif
-
-#
-# Rust unfortunately requires itself to build.  On platforms which aren't
-# supported by upstream (where they offer binary bootstraps), or where we do
-# not trust random binaries from the Internet, we need to build and provide our
-# own bootstrap.  See the stage0-bootstrap below for more details.
-#
-DISTFILES:=		${DEFAULT_DISTFILES}
-
-.if ${MACHINE_PLATFORM:MDarwin-*-aarch64} || make(distinfo) || make (makesum) || make(mdi)
-RUST_STAGE0_VER=	1.74.1
-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 ${MACHINE_PLATFORM:MDarwin-*-x86_64} || make(distinfo) || make (makesum) || make(mdi)
-RUST_STAGE0_VER=	1.74.1
-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 ${MACHINE_PLATFORM:MLinux-*-aarch64} || make(distinfo) || make (makesum) || make(mdi)
-RUST_STAGE0_VER=	1.74.1
-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 ${MACHINE_PLATFORM:MLinux-*-earmv6hf} || make(distinfo) || make (makesum) || make(mdi)
-RUST_STAGE0_VER=	1.74.1
-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 ${MACHINE_PLATFORM:MLinux-*-earmv7hf} || make(distinfo) || make (makesum) || make(mdi)
-RUST_STAGE0_VER=	1.74.1
-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 ${MACHINE_PLATFORM:MLinux-*-i386} || make(distinfo) || make (makesum) || make(mdi)
-RUST_STAGE0_VER=	1.74.1
-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 ${MACHINE_PLATFORM:MLinux-*-x86_64} || make(distinfo) || make (makesum) || make(mdi)
-RUST_STAGE0_VER=	1.74.1
-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
-DISTFILES:=		${DISTFILES} ${RUST_STAGE0} ${RUST_STD_STAGE0}
-.endif
-#
-# The SunOS target defaults to illumos as that's what the current bootstraps
-# are built on.  If you wish to target Oracle Solaris you'll need to create an
-# x86_64-sun-solaris bootstrap and comment out the overrides.
-#
-.if ${MACHINE_PLATFORM:MSunOS-*-x86_64} || make(distinfo) || make (makesum) || make(mdi)
-RUST_STAGE0_VER=	1.74.1
-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/
-DISTFILES:=		${DISTFILES} ${RUST_STAGE0}
-RUST_BOOTSTRAP_PATH?=	${WRKDIR}/rust-${RUST_STAGE0_VER}-${RUST_ARCH}
-# Override default "x86_64-sun-solaris" selection
-CONFIGURE_ARGS+=	--set=target.${RUST_ARCH}.llvm-config=${LLVM_CONFIG_PATH}
-CONFIGURE_ARGS+=	--build=${RUST_ARCH}
-CONFIGURE_ARGS+=	--host=${RUST_ARCH}
-CONFIGURE_ARGS+=	--target=${RUST_ARCH}
-.endif
-.if ${MACHINE_PLATFORM:MFreeBSD-*-x86_64} || make(distinfo) || make (makesum) || make(mdi)
-RUST_STAGE0_VER=	1.74.1
-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 ${MACHINE_PLATFORM:MNetBSD-*-i386} || make(distinfo) || make (makesum) || make(mdi)
-RUST_STAGE0_VER=	1.74.1
-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
-SITES.${RUST_STAGE0}=	${MASTER_SITE_LOCAL:=rust/}
-SITES.${RUST_STD_STAGE0}=	${MASTER_SITE_LOCAL:=rust/}
-DISTFILES:=		${DISTFILES} ${RUST_STAGE0} ${RUST_STD_STAGE0}
-# Setting this changes it for every distfile, which doesn't match what is
-# currently in distinfo.
-#DIST_SUBDIR=		${PKGNAME}
-# For atomic ops
-CFLAGS+=		-march=i586
-CONFIGURE_ARGS+=	--build=${RUST_ARCH}
-pre-build: pre-build-fix-paxctl
-.PHONY: pre-build-fix-paxctl
-pre-build-fix-paxctl:
-	${TOOLS_PLATFORM.paxctl} +am ${WRKDIR}/rust-bootstrap/bin/cargo
-	${TOOLS_PLATFORM.paxctl} +am ${WRKDIR}/rust-bootstrap/bin/rustc
-.endif
-.if ${MACHINE_PLATFORM:MNetBSD-*-x86_64} || make(distinfo) || make (makesum) || make(mdi)
-RUST_STAGE0_VER=	1.74.1
-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 ${MACHINE_PLATFORM:MNetBSD-*-powerpc} || make(distinfo) || make (makesum) || make(mdi)
-RUST_STAGE0_VER=	1.74.1
-RUST_ARCH=		powerpc-unknown-netbsd
-
-# Cross-built against NetBSD 9.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}
-SITES.${RUST_STAGE0}=		${MASTER_SITE_LOCAL:=rust/}
-SITES.${RUST_STD_STAGE0}=	${MASTER_SITE_LOCAL:=rust/}
-
-.endif
-.if ${MACHINE_PLATFORM:MNetBSD-*-aarch64} || make(distinfo) || make (makesum) || make(mdi)
-RUST_STAGE0_VER=		1.74.1
-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
-DISTFILES:=			${DISTFILES} ${RUST_STAGE0} ${RUST_STD_STAGE0}
-SITES.${RUST_STAGE0}=		${MASTER_SITE_LOCAL:=rust/}
-SITES.${RUST_STD_STAGE0}=	${MASTER_SITE_LOCAL:=rust/}
-.endif
-.if ${MACHINE_PLATFORM:MNetBSD-*-aarch64eb} || make(distinfo) || make (makesum) || make(mdi)
-RUST_STAGE0_VER=		1.74.1
-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
-DISTFILES:=			${DISTFILES} ${RUST_STAGE0} ${RUST_STD_STAGE0}
-SITES.${RUST_STAGE0}=		${MASTER_SITE_LOCAL:=rust/}
-SITES.${RUST_STD_STAGE0}=	${MASTER_SITE_LOCAL:=rust/}
-.endif
-.if ${MACHINE_PLATFORM:MNetBSD-*-sparc64} || make(distinfo) || make (makesum) || make(mdi)
-RUST_STAGE0_VER=		1.74.1
-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
-DISTFILES:=			${DISTFILES} ${RUST_STAGE0} ${RUST_STD_STAGE0}
-SITES.${RUST_STAGE0}=		${MASTER_SITE_LOCAL:=rust/}
-SITES.${RUST_STD_STAGE0}=	${MASTER_SITE_LOCAL:=rust/}
-.endif
-.if ${MACHINE_PLATFORM:MNetBSD-*-earmv7hf} || make(distinfo) || make (makesum) || make(mdi)
-RUST_ARCH=			armv7-unknown-netbsd-eabihf
-RUST_STAGE0_VER=		1.74.1
-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}
-SITES.${RUST_STAGE0}=		${MASTER_SITE_LOCAL:=rust/}
-SITES.${RUST_STD_STAGE0}=	${MASTER_SITE_LOCAL:=rust/}
-.endif
-.if ${MACHINE_PLATFORM:MNetBSD-*-earmv6hf} || make(distinfo) || make (makesum) || make(mdi)
-RUST_ARCH=			armv6-unknown-netbsd-eabihf
-RUST_STAGE0_VER=		1.74.1
-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}
-SITES.${RUST_STAGE0}=		${MASTER_SITE_LOCAL:=rust/}
-SITES.${RUST_STD_STAGE0}=	${MASTER_SITE_LOCAL:=rust/}
-.endif
-.if ${MACHINE_PLATFORM:MNetBSD-*-mipsel} || make(distinfo) || make (makesum) || make(mdi)
-RUST_ARCH=			mipsel-unknown-netbsd
-RUST_STAGE0_VER=		1.74.1
-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}
-SITES.${RUST_STAGE0}=		${MASTER_SITE_LOCAL:=rust/}
-SITES.${RUST_STD_STAGE0}=	${MASTER_SITE_LOCAL:=rust/}
-.endif
-.if ${MACHINE_PLATFORM:MNetBSD-*-riscv64} || make(distinfo) || make (makesum) || make(mdi)
-RUST_ARCH=			riscv64gc-unknown-netbsd
-RUST_STAGE0_VER=		1.74.1
-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}
-SITES.${RUST_STAGE0}=		${MASTER_SITE_LOCAL:=rust/}
-SITES.${RUST_STD_STAGE0}=	${MASTER_SITE_LOCAL:=rust/}
-.endif
-
-# You may override RUST_BOOTSTRAP_PATH and RUST_ARCH in mk.conf
-# if you have a local bootstrap compiler.
-.if !defined(RUST_ARCH) && !defined(RUST_BOOTSTRAP_PATH)
-NOT_FOR_PLATFORM+=	${MACHINE_PLATFORM}
-.else
-RUST_BOOTSTRAP_PATH?=	${WRKDIR}/rust-bootstrap
-.endif
-
-.if ${OPSYS} == "SunOS"
-TOOL_DEPENDS+=		coreutils>=0:../../sysutils/coreutils
-TOOL_DEPENDS+=		gzip>=0:../../archivers/gzip
-TOOLS_CREATE+=		md5sum
-TOOLS_PATH.md5sum=	${PREFIX}/bin/gmd5sum
-TOOLS_PLATFORM.gzcat=	${PREFIX}/bin/gzip -cd
-.endif
-
-SUBST_CLASSES+=		prefix
-SUBST_STAGE.prefix=	pre-configure
-SUBST_FILES.prefix+=	compiler/rustc_codegen_ssa/src/back/linker.rs
-SUBST_FILES.prefix+=	compiler/rustc_target/src/spec/base/netbsd.rs
-SUBST_FILES.prefix+=	src/bootstrap/src/core/build_steps/compile.rs
-SUBST_FILES.prefix+=	src/bootstrap/src/core/builder.rs
-SUBST_FILES.prefix+=	src/bootstrap/bootstrap.py
-SUBST_VARS.prefix=	PREFIX
-
-#
-# Generate list of subst entries for various .cargo-checksum.json files.  These
-# are all handled together in one big substitution to simplify things rather
-# than one substitution entry per file, but are kept separate below to ease
-# updating and verification.
-#
-
-CKSUM_CRATES+=	vendor/libc
-
-CKSUM_CRATES+=	vendor/libc-0.2.146
-CKSUMS+=	55ce4624745e31ad226b47fde177a46176a89da3fa5030663673a115102471f9
-CKSUMS+=	09ab15cd50245f4ced230b7919657ab170e06443bb0ed4baf4449d3472f5f656
-CKSUMS+=	90dd33ef20dc3be8aef5bd152a6a06e7ab34f9527b3978487b593aaa16a907bd
-CKSUMS+=	ec1cb2b8522ce7d35c9fce2f5b17a1a7e28cae9836f1cf11e267f222b72dff60
-
-CKSUM_CRATES+=	vendor/libc-0.2.149
-CKSUMS+=	1f1beb74c33bd3ad6a5d7aae2afdacf0ccbad0f9dacda2894d2cfdc2414174ae
-CKSUMS+=	80f3168251556b3eb918056aa9563db07383f61e69a262f3af390b542fd757bb
-CKSUMS+=	b1660c631a599a3355116e7485b88ab2f8f2929c2e37851a763431387b902f14
-CKSUMS+=	990d1c6c01db31b9e5541128e4987b114f39c6808d94a5f8f048f492cfb96d78
-
-CKSUM_CRATES+=	vendor/cc-1.0.73
-CKSUMS+=	38970d678de0efb4b5e2978265daa8a613a1db35fc42e669621b03fc56d5b138
-CKSUMS+=	65de0d6593a4256e5fcaf898f9468d71bab672c70a2dfab3dcb8514e9b72819c
-
-CKSUM_CRATES+=	vendor/cc
-CKSUMS+=	17a4659710aa290c4ed9c23063c7b202c5bcf2a84de33aa1f01fc6fded69a1f8
-CKSUMS+=	a19bcb1a561d4ba5846f8f89fcfe6f05a3cb2e79baf8f21f53f0fba012db1b7f
-
-CKSUM_CRATES+=	vendor/lzma-sys
-CKSUMS+=	6fd5e9245db34c6f557b8bfcaf03db82fc88c3b06dbfbb5f03b2bcd138983ef9
-CKSUMS+=	5e252578b5d266f6a4c8dc9f71ca7a91536ccb8c5c7d7753b82f12ec886459ef
-
-CKSUM_CRATES+=	vendor/stacker
-CKSUMS+=	59ca847887cf19387119d18c57f08d5a8520d714876ca0142b8f1c001ecde06b
-CKSUMS+=	03be8ae293b713fe6e9703e4809dd68caaec992bae6777914ffddae8da2a9bc7
-
-CKSUM_CRATES+=	vendor/crossbeam-utils
-CKSUMS+=	5f75132808d9e8d6e266fe77f9e20bbc35855a1c37a5dbc0940b3e989bca1a94
-CKSUMS+=	3d7c747108434546837b1c5664111c9146fcbfb2e084c95f8ce0be970d652421
-
-CKSUM_CRATES+=	vendor/crossbeam-utils-0.8.14
-CKSUMS+=	3314524d2afa0360c947455a6e6566fb54ebf909c99479ca3b7435741fd3293e
-CKSUMS+=	eaef167dea04efa811cf0d53de98feac6063ec2196eccd315d345ef86c551aaa
-
-CKSUM_CRATES+=	vendor/crossbeam-epoch
-CKSUMS+=	5f75132808d9e8d6e266fe77f9e20bbc35855a1c37a5dbc0940b3e989bca1a94
-CKSUMS+=	3d7c747108434546837b1c5664111c9146fcbfb2e084c95f8ce0be970d652421
-
-CKSUM_CRATES+=	vendor/openssl-sys
-CKSUMS+=	b2cbaa5bfac5e7d5550aa0eb8e5c65a9f7e86a3692b759fb13330ef6e3b26b30
-CKSUMS+=	b303bf9ceae9fcffa4a0420ea858675d827fc2d75c358f8236e44274d58be1a0
-CKSUMS+=	33f814dba4ac9942266157cbe3dc8eadf5e477090370a92c36c53f916fa45d48
-CKSUMS+=	4f14cac64c027b3bea07908bae58184b31f6da6326f8ba5a6935d726ab2e1d20
-
-CKSUM_CRATES+=	vendor/openssl-src
-CKSUMS+=	683c9ed1a7953f7f9da43412010de95ba733860a18bc28a4fc3cbcc6ac93c4d7
-CKSUMS+=	d83220880699d6a4d9a4e265d19b7896ca4dc7235e3e2f546c5fa06222bdc258
-CKSUMS+=	090744f85cf99a9b8412c23fca1eabb61eb45d830f0f9f0e7309be2572c1e827
-CKSUMS+=	ead7bdeee121f1357b99741b175a564c8b7026f694cbc388aae2a86b3bae913f
-
-CKSUM_CRATES+=	vendor/nix
-CKSUMS+=	c3e13a2edea54d190a4b051f62efc97953c00b5051a9fda0e39e3bc732a31939
-CKSUMS+=	263bd7ace66a4cfee3de18532f61c187327fcbd564666b4f97c4b01ae6885d98
-
-SUBST_CLASSES+=		cksum
-SUBST_STAGE.cksum=	pre-configure
-.for crate in ${CKSUM_CRATES}
-SUBST_FILES.cksum+=	${crate}/.cargo-checksum.json
-.endfor
-.for from to in ${CKSUMS}
-SUBST_SED.cksum+=	-e 's,${from},${to},g'
-.endfor
-
-post-extract:
-	set -e;									\
-	if ${TEST} -e ${WRKDIR}/rust-${RUST_STAGE0_VER}-${RUST_ARCH}/install.sh	\
-	  -a ! -e ${RUST_BOOTSTRAP_PATH}/bin/rustc; then \
-		cd ${WRKDIR}/rust-${RUST_STAGE0_VER}-${RUST_ARCH};	\
-		env ${MAKE_ENV} ${TOOLS_BASH} \
-			./install.sh --prefix=${RUST_BOOTSTRAP_PATH};	\
-		cd ${WRKDIR}/rust-std-${RUST_STAGE0_VER}-${RUST_ARCH};	\
-		env ${MAKE_ENV} ${TOOLS_BASH} \
-			./install.sh --prefix=${RUST_BOOTSTRAP_PATH};	\
-	fi
-.if ${OPSYS} == "NetBSD"
-	SDIR=${WRKDIR}/scripts; \
-	${MKDIR} $${SDIR}; \
-	cd $${SDIR}; \
-	${RM} -f c++-wrap; \
-	${RM} -f clang++-wrap; \
-	${RM} -f clang-wrap; \
-	${RM} -f ar-wrap; \
-	${CP} ${.CURDIR}/files/gcc-wrap .; \
-	${CHMOD} +x gcc-wrap; \
-	${LN} -s gcc-wrap c++-wrap; \
-	${LN} -s gcc-wrap clang++-wrap; \
-	${LN} -s gcc-wrap clang-wrap; \
-	${LN} -s gcc-wrap ar-wrap
-.endif
-
-.if ${OPSYS} == "FreeBSD"
-MAKE_ENV+=		OPENSSL_DIR=${SSLBASE}
-.endif
-
-.if ${OPSYS} == "NetBSD" && !empty(PKGSRC_COMPILER:Mclang) && !exists(/lib/libgcc_s.so)
-BUILDLINK_TRANSFORM+=	rm:-lgcc_s
-MAKE_ENV+=		PKGSRC_HAVE_LIBCPP=yes
-
-pre-build: provide-libgcc-for-bootstrap
-.PHONY: provide-libgcc-for-bootstrap
-provide-libgcc-for-bootstrap:
-.  if exists(${FILESDIR}/libgcc_s.so.1)
-	cp ${FILESDIR}/libgcc_s.so.1 ${RUST_BOOTSTRAP_PATH}/lib/.
-.  endif
-.endif
-
-#
-# These are essentially copies of the "all", "test", and "install" Makefile
-# targets, but are duplicated here so that we can specify -j.
-#
-do-build:
-	${RUN}${_ULIMIT_CMD}						\
-	cd ${WRKSRC} &&							\
-	${SETENV} ${MAKE_ENV}						\
-	sh -c "if [ \"${BUILD_TARGET}\" = \"dist\" ]; then		\
-		unset DESTDIR;						\
-		${PYTHONBIN} ./x.py -v					\
-		    ${BUILD_TARGET} -j ${_MAKE_JOBS_N};			\
-	else								\
-		${PYTHONBIN} ./x.py -v					\
-		    ${BUILD_TARGET} --stage 2 -j ${_MAKE_JOBS_N} &&	\
-		${PYTHONBIN} ./x.py -v					\
-		    doc --stage 2 -j ${_MAKE_JOBS_N};			\
-	fi"
-
-do-test:
-	${RUN}${_ULIMIT_CMD}						\
-	cd ${WRKSRC} &&							\
-	${SETENV} ${MAKE_ENV}						\
-		${PYTHONBIN} ./x.py -v test -j ${_MAKE_JOBS_N}
-
-do-install:
-	${RUN}${_ULIMIT_CMD}						\
-	cd ${WRKSRC} &&							\
-	${SETENV} ${MAKE_ENV} ${INSTALL_ENV} 				\
-		${PYTHONBIN} ./x.py -v install -j ${_MAKE_JOBS_N}
-
-SUBST_CLASSES+=		destdir
-SUBST_STAGE.destdir=	post-install
-SUBST_FILES.destdir=	${DESTDIR}${PREFIX}/lib/rustlib/manifest-*
-SUBST_SED.destdir=	-e 's|file:${DESTDIR}${PREFIX}|file:${PREFIX}|'
-
-GENERATE_PLIST+=	${FIND} ${DESTDIR}${PREFIX} \( -type f -o -type l \) -print | \
-			${SED} -e 's,${DESTDIR}${PREFIX}/,,' | ${SORT} ;
-
-# Create a relocatable stage2 bootstrap from the bits we just built that can be
-# used to build the next version of rust.  Currently only tested on SmartOS.
-#
-# Use the alternate BOOTSTRAP_NAME when creating a nightly release.
-#
-#BOOTSTRAP_NAME=	${PKGNAME_NOREV:C/rust/rust-nightly/}-${RUST_ARCH}
-BOOTSTRAP_NAME=		${PKGNAME_NOREV}-${RUST_ARCH}
-BOOTSTRAP_TMPDIR=	${WRKDIR}/${BOOTSTRAP_NAME}
-USE_TOOLS+=		gtar
-
-# The NetBSD part is so far untested, because I could not convince
-# the rust build to use the gcc wrapper when building natively,
-# so that I could get a placeholder in the RPATH, because chrpath
-# cannot extend the length of the RPATH...
-ELFEDIT?=	/usr/bin/elfedit
-
-.PHONY: stage0-bootstrap
-stage0-bootstrap: install
-	${RM} -rf ${BOOTSTRAP_TMPDIR}
-	${MKDIR} ${BOOTSTRAP_TMPDIR}
-.if ${OPSYS} == "NetBSD"
-	(cd ${BOOTSTRAP_TMPDIR}; \
-	DISTDIR=${WRKSRC}/bild/dist; \
-	VER_ARCH=${PKGVERSION}-${RUST_ARCH}; \
-	RUSTC=rustc-$${VER_ARCH}; \
-	RUSTC_FILE=$${RUSTC}.tar.gz; \
-	RUST_STD=rust-std-$${VER_ARCH}; \
-	RUST_STD_FILE=$${RUST_STD}.tar.gz; \
-	${GTAR} -xzf $${DISTDIR}/$${RUSTC_FILE}; \
-		(cd ${RUSTC}; \
-	RPATH='/usr/pkg/lib:/lib:/usr/lib:$$ORIGIN/../lib'; \
-	for f in rls-preview/bin/rls rustc/bin/rustc rustc/bin/rustdoc; do \
-		chrpath -r $$RPATH $$f; \
-	done; \
-	RPATH='/usr/pkg/lib:/lib:/usr/lib:$$ORIGIN'; \
-	for f in rustc/lib/*.so*; do \
-		chrpath -r $$RPATH $$f; \
-	done; \
-	RPATH='/usr/pkg/lib:/lib:/usr/lib:$$ORIGIN:$$ORIGIN/../../..'; \
-	for f in rustc/lib/rustlib/*/*/*.so*; do \
-		chrpath -r $$RPATH $$f; \
-	done;); \
-	${GTAR} -czf $${RUSTC_FILE} $${RUSTC}; \
-	${CP} $${DISTDIR}/$${RUST_STD_FILE} .; \
-	${ECHO} "Fixed stage0 bootstrap in ${BOOTSTRAP_TMPDIR}:"; \
-	${ECHO} "$${RUSTC_FILE}"; \
-	${ECHO} "$${RUST_STD_FILE}"; \
-	)
-.endif
-.if ${OS_VARIANT} == "SmartOS"
-	${CP} -R ${DESTDIR}/${PREFIX}/bin ${BOOTSTRAP_TMPDIR}/
-	${CP} -R ${DESTDIR}/${PREFIX}/lib ${BOOTSTRAP_TMPDIR}/
-	${MKDIR} ${BOOTSTRAP_TMPDIR}/lib/pkgsrc
-	set -e; \
-	for lib in libgcc_s.so.1 libstdc++.so.6; do \
-		${CP} `${PKG_CC} -print-file-name=$${lib}` \
-		    ${BOOTSTRAP_TMPDIR}/lib/pkgsrc/; \
-	done; \
-	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.5; do \
-		${CP} ${PREFIX}/lib/$${lib} ${BOOTSTRAP_TMPDIR}/lib/pkgsrc/; \
-	done; \
-	for f in ${BOOTSTRAP_TMPDIR}/bin/*; do \
-		/bin/file -b "$$f" | grep ^ELF >/dev/null || continue; \
-		${ELFEDIT} -e 'dyn:runpath $$ORIGIN/../lib:$$ORIGIN/../lib/pkgsrc' $$f; \
-	done; \
-	for f in ${BOOTSTRAP_TMPDIR}/lib/pkgsrc/*.so*; do \
-		${ELFEDIT} -e 'dyn:runpath $$ORIGIN' $$f; \
-	done; \
-	for f in ${BOOTSTRAP_TMPDIR}/lib/*.so*; do \
-		${ELFEDIT} -e 'dyn:runpath $$ORIGIN:$$ORIGIN/pkgsrc' $$f; \
-	done; \
-	for f in ${BOOTSTRAP_TMPDIR}/lib/rustlib/*/*/*.so*; do \
-		${ELFEDIT} -e 'dyn:runpath $$ORIGIN:$$ORIGIN/../../..:$$ORIGIN/../../../pkgsrc' $$f; \
-	done; \
-	cd ${WRKDIR}; ${GTAR} -zcf ${BOOTSTRAP_NAME}.tar.gz ${BOOTSTRAP_NAME}
-	@${ECHO} ""
-	@${ECHO} "Verify correct library paths using the following:"
-	@${ECHO} ""
-	@${ECHO} "	cd ${BOOTSTRAP_TMPDIR}"
-	@${ECHO} "	find . -type f | xargs ldd 2>/dev/null | egrep 'not.found|${PREFIX}'"
-	@${ECHO} ""
-	@${ECHO} "If there is no output then this bootstrap kit is ready to go:"
-	@${ECHO} ""
-	@${ECHO} "	${WRKDIR}/${BOOTSTRAP_NAME}.tar.gz"
-	@${ECHO} ""
-.endif
-
-.include "options.mk"
-
-# These dependencies currently use the bundled sources as they require
-# development features not yet available in released versions.
-#
-#.include "../../devel/libgit2/buildlink3.mk"
-#.include "../../security/libssh2/buildlink3.mk"
-#.include "../../www/http-parser/buildlink3.mk"
-#.include "../../devel/jemalloc/buildlink3.mk"
-
-## Issues specific to: bootstrap AND NetBSD follow
-
-# rust i386 and sparc64 bootstraps are built for 8.0
-# and still depend on libstdc++.so.8.
-# Pull in compat80 on 9.x and newer.
-.if (${MACHINE_PLATFORM:MNetBSD-*-i386} || \
-     ${MACHINE_PLATFORM:MNetBSD-*-sparc64}) \
-    && empty(OS_VERSION:M8.*)
-TOOL_DEPENDS+=	compat80>=0:../../emulators/compat80
-.endif
-
-.include "../../mk/atomic64.mk"
-# This is for when we build natively:
-.if ${MACHINE_PLATFORM:MNetBSD-*-powerpc} || \
-    ${MACHINE_PLATFORM:MNetBSD-*-i386} || \
-    ${MACHINE_PLATFORM:MNetBSD-*-mipsel} || \
-    ${MACHINE_PLATFORM:MNetBSD-*-riscv64}
-# Make libatomic library available via a unique directory:
-DEPENDS+=	libatomic-links>=0:../../devel/libatomic-links
-.endif
-
-TOOL_DEPENDS+= cmake-[0-9]*:../../devel/cmake
-.include "../../devel/cmake/buildlink3.mk"
-.include "../../devel/zlib/buildlink3.mk"
-.include "../../lang/python/tool.mk"
-.include "../../mk/bsd.pkg.mk"
diff --git a/rust175/buildlink3.mk b/rust175/buildlink3.mk
deleted file mode 100644
index 1e4c6a9c9d..0000000000
--- a/rust175/buildlink3.mk
+++ /dev/null
@@ -1,17 +0,0 @@
-# $NetBSD: buildlink3.mk,v 1.6 2020/07/08 14:46:14 jperkin Exp $
-
-BUILDLINK_TREE+=	rust
-
-#
-# DO NOT include this directly! Use rust.mk instead.
-#
-
-.if !defined(RUST_BUILDLINK3_MK)
-RUST_BUILDLINK3_MK:=
-
-BUILDLINK_API_DEPENDS.rust+=	rust>=1.56.1
-BUILDLINK_PKGSRCDIR.rust?=	../../wip/rust
-BUILDLINK_PASSTHRU_DIRS+=	${PREFIX}/lib/rustlib
-.endif
-
-BUILDLINK_TREE+=	-rust
diff --git a/rust175/cargo.mk b/rust175/cargo.mk
deleted file mode 100644
index f48bdac474..0000000000
--- a/rust175/cargo.mk
+++ /dev/null
@@ -1,109 +0,0 @@
-# $NetBSD: cargo.mk,v 1.35 2023/05/16 06:10:52 wiz Exp $
-#
-# Common logic that can be used by packages that depend on cargo crates
-# from crates.io. This lets existing pkgsrc infrastructure fetch and verify
-# cargo crates instead of using the rust package manager in the build phase.
-# Inspired by cargo.mk from FreeBSD ports.
-#
-# Usage example:
-#
-# CARGO_CRATE_DEPENDS+=	sha1-0.20
-# .include "../../lang/rust/cargo.mk"
-#
-# If modifying the list of dependencies, re-run the build once without
-# --offline in CARGO_ARGS to generate a new valid Cargo.lock.
-# e.g: make CARGO_ARGS="build --release" build
-#
-# a list of CARGO_CRATE_DEPENDS can be generated via
-#      make print-cargo-depends > cargo-depends.mk
-#
-# See also www/geckodriver for a full example.
-
-MASTER_SITES?=	-${MASTER_SITE_CRATESIO}${PKGBASE}/${PKGVERSION_NOREV}/download
-
-CHECK_SSP_SUPPORTED=	no
-
-.include "../../lang/rust/rust.mk"
-
-USE_TOOLS+=		bsdtar
-CARGO_VENDOR_DIR=	${WRKDIR}/vendor
-CARGO_WRKSRC?=		${WRKSRC}
-
-# TODO: some Cargo.lock files include git+https sources which need to be fetched from the URL (not necessarily resolving to a crate.io url)
-DISTFILES?=			${DEFAULT_DISTFILES}
-.for crate in ${CARGO_CRATE_DEPENDS}
-DISTFILES+=			${crate}.crate
-SITES.${crate}.crate+=		-${MASTER_SITE_CRATESIO}${crate:C/-[0-9]+\.[0-9.]+.*$//}/${crate:C/^.*-([0-9]+\.[0-9.]+.*)$/\1/}/download
-EXTRACT_DIR.${crate}.crate?=	${CARGO_VENDOR_DIR}
-.endfor
-
-.include "../../mk/bsd.prefs.mk"
-# Triggers NetBSD ld.so bug (PR toolchain/54192)
-# See Makefile for further information.
-.if ${OPSYS} == "NetBSD" && ${OPSYS_VERSION} < 099957
-MAKE_JOBS_SAFE=	no
-.endif
-
-post-extract: cargo-vendor-crates
-.PHONY: cargo-vendor-crates
-cargo-vendor-crates:
-	@${STEP_MSG} "Extracting local cargo crates"
-	${RUN}${MKDIR} ${CARGO_WRKSRC}/.cargo
-	${RUN}${PRINTF} "[source.crates-io]\nreplace-with = \"vendored-sources\"\n[source.vendored-sources]\ndirectory = \"${CARGO_VENDOR_DIR}\"\n" > ${CARGO_WRKSRC}/.cargo/config
-	${RUN}${MKDIR} ${CARGO_VENDOR_DIR}
-.for crate in ${CARGO_CRATE_DEPENDS}
-	${RUN}${PRINTF} '{"package":"%s","files":{}}'	\
-	  `${DIGEST} sha256 < ${_DISTDIR}/${crate}.crate` \
-	  > ${CARGO_VENDOR_DIR}/${crate}/.cargo-checksum.json
-.endfor
-
-# Legacy name
-.PHONY: show-cargo-depends
-show-cargo-depends: print-cargo-depends
-
-.PHONY: print-cargo-depends
-print-cargo-depends:
-	${RUN}${AWK} 'BEGIN {print "# $$Net" "BSD$$"; print;}		\
-		/^name = / { split($$3, a, "\""); name=a[2]; }		\
-		/^version = / { split($$3, a, "\""); vers=a[2]; }	\
-		/^source = / {						\
-			print "CARGO_CRATE_DEPENDS+=\t" name "-" vers;	\
-			}' ${CARGO_WRKSRC}/Cargo.lock
-
-DEFAULT_CARGO_ARGS=	--offline -j${_MAKE_JOBS_N}	\
-			  ${CARGO_NO_DEFAULT_FEATURES:M[yY][eE][sS]:C/[yY][eE][sS]/--no-default-features/}	\
-			  ${CARGO_FEATURES:C/.*/--features/W}	\
-			  ${CARGO_FEATURES:S/ /,/Wg}
-CARGO_ARGS?=		build --release ${DEFAULT_CARGO_ARGS}
-CARGO_INSTALL_ARGS?=	install --path . --root ${DESTDIR}${PREFIX} ${DEFAULT_CARGO_ARGS}
-
-MAKE_ENV+=		RUSTFLAGS=${RUSTFLAGS:Q}
-
-.if !target(do-build)
-do-build: do-cargo-build
-.endif
-
-.PHONY: do-cargo-build
-do-cargo-build:
-	${RUN} cd ${CARGO_WRKSRC} && ${SETENV} ${MAKE_ENV} ${PREFIX}/bin/cargo ${CARGO_ARGS}
-
-.if !target(do-install) && ${GNU_CONFIGURE:Uno:tl} == no
-do-install: do-cargo-install
-.endif
-
-.PHONY: do-cargo-install
-do-cargo-install:
-	${RUN} cd ${CARGO_WRKSRC} && ${SETENV} ${MAKE_ENV} ${PREFIX}/bin/cargo ${CARGO_INSTALL_ARGS}
-	# remove files cargo uses for tracking installations
-	${RM} -f ${DESTDIR}${PREFIX}/.crates.toml
-	${RM} -f ${DESTDIR}${PREFIX}/.crates2.json
-
-.if ${OPSYS} == "Darwin"
-.PHONY: do-cargo-post-install-darwin-fix-rpath
-post-install: do-cargo-post-install-darwin-fix-rpath
-do-cargo-post-install-darwin-fix-rpath:
-	${RUN} cd ${DESTDIR};								\
-	for i in $$(${FIND} .${PREFIX}/lib -name '*.so' | ${SED} -e 's|^\./||'); do	\
-	  install_name_tool -id /$$i $$i;						\
-	done
-.endif
diff --git a/rust175/cross.mk b/rust175/cross.mk
deleted file mode 100644
index 2984a3d058..0000000000
--- a/rust175/cross.mk
+++ /dev/null
@@ -1,82 +0,0 @@
-# $NetBSD: cross.mk,v 1.3 2020/07/16 09:35:37 jperkin Exp $
-
-# These settings may be used to cross-build rust.
-#
-# They interact with the files/gcc-wrap script to pick the
-# right compiler for the different phases of the build, and
-# use the headers for the target when required.  Note that the
-# cross-root tree will need to have the required binary packages
-# installed (curl etc., see list of buildlink3.mk includes in main
-# Makefile).
-
-# The gcc-wrap / c++-wrap script takes CROSS_ROOT environment variable
-# to do a cross-build.  The wrapper script assumes dest/ and tools/
-# as a result of a cross-build of NetBSD as subdirectories of this root
-#CROSS_ROOT=		/u/evbarm-armv7hf
-#CROSS_ROOT=		/u/evbarm-armv6hf
-#CROSS_ROOT=		/u/sparc64
-#CROSS_ROOT=		/u/macppc
-#CROSS_ROOT=		/u/evbarm64
-#CROSS_ROOT=		/u/evbarm64eb
-#CROSS_ROOT=		/u/i386
-#CROSS_ROOT=		/u/mipsel
-#CROSS_ROOT=		/u/riscv64
-#CROSS_ROOT=		/
-#MAKE_ENV+=		CROSS_ROOT=${CROSS_ROOT}
-
-# The GNU cross target designation
-#GNU_CROSS_TARGET=	armv7--netbsdelf-eabihf
-#GNU_CROSS_TARGET=	armv6--netbsdelf-eabihf
-#GNU_CROSS_TARGET=	sparc64--netbsd
-#GNU_CROSS_TARGET=	powerpc--netbsd
-#GNU_CROSS_TARGET=	aarch64--netbsd
-#GNU_CROSS_TARGET=	aarch64_be--netbsd
-#GNU_CROSS_TARGET=	i486--netbsdelf
-#GNU_CROSS_TARGET=	mipsel--netbsd
-#GNU_CROSS_TARGET=	riscv64--netbsd
-#MAKE_ENV+=		GNU_CROSS_TARGET=${GNU_CROSS_TARGET}
-
-# To cross-build rust, you need to specify
-# 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=		riscv64gc-unknown-netbsd
-#
-#SCRIPTS=		${WRKDIR}/scripts
-#CONFIGURE_ARGS+=	--host=${TARGET}
-#CONFIGURE_ARGS+=	--target=${TARGET}
-#CONFIGURE_ARGS+=	--set=target.${TARGET}.cc=${SCRIPTS}/gcc-wrap
-#CONFIGURE_ARGS+=	--set=target.${TARGET}.cxx=${SCRIPTS}/c++-wrap
-#CONFIGURE_ARGS+=	--set=target.${TARGET}.linker=${SCRIPTS}/gcc-wrap
-# Pick one:
-#CONFIGURE_ARGS+=	--set=target.${TARGET}.ar=${CROSS_ROOT}/tools/bin/${GNU_CROSS_TARGET}-ar
-#CONFIGURE_ARGS+=	--set=target.${TARGET}.ar=${SCRIPTS}/ar-wrap
-
-# May be required when cross-building on NetBSD
-#MAKE_ENV+=		OPENSSL_DIR=/usr
-
-#
-# Cross-compile illumos target.  The host is identical, it's just the target
-# that is renamed from x86_64-sun-solaris to x86_64-unknown-illumos.
-#
-#TARGET=		x86_64-unknown-illumos
-#
-# Use these variables for "cross-compiling" from x86_64-sun-solaris.
-#
-#CONFIGURE_ARGS+=	--set=target.${TARGET}.llvm-config=${LLVM_CONFIG_PATH}
-#CONFIGURE_ARGS+=	--host=${TARGET}
-#CONFIGURE_ARGS+=	--target=${TARGET}
-#
-# Set this variable when using a native x86_64-unknown-illumos bootstrap, as
-# the build still defaults to x86_64-sun-solaris based on uname.
-#
-#CONFIGURE_ARGS+=	--build=${TARGET}
diff --git a/rust175/distinfo b/rust175/distinfo
deleted file mode 100644
index 863354ad42..0000000000
--- a/rust175/distinfo
+++ /dev/null
@@ -1,172 +0,0 @@
-$NetBSD: distinfo,v 1.159 2023/06/19 14:46:47 bsiegert Exp $
-
-BLAKE2s (rust-1.74.1-aarch64-apple-darwin.tar.gz) = 6cc3cfda101661332815ce9f27781eb73d5b10abead309c0fe3649d428abb2ae
-SHA512 (rust-1.74.1-aarch64-apple-darwin.tar.gz) = 26b5e2dfead0f48284dc89dde18978285c9d9d4afb310a859d2876aa2abdf1500fb69756b530312c0ceb7da4a309c0319dfa7ea539a800522edd67afd95f7ac2
-Size (rust-1.74.1-aarch64-apple-darwin.tar.gz) = 246818073 bytes
-BLAKE2s (rust-1.74.1-aarch64-unknown-linux-gnu.tar.gz) = 90e0e8120826882f13cfa28aacd9065704ae8c2bbf66244ed2ad5ddba1eee401
-SHA512 (rust-1.74.1-aarch64-unknown-linux-gnu.tar.gz) = f7c764dbeeb1942a1c30dcdead9a47f7d554459a8c68fb1b626848e92fcdd89909203dd3f313453ca0279dd852962b489574f8ca9f3e92af2fb1ce76519ca8a5
-Size (rust-1.74.1-aarch64-unknown-linux-gnu.tar.gz) = 469441364 bytes
-BLAKE2s (rust-1.74.1-aarch64-unknown-netbsd.tar.xz) = 8b96a419f9612fa96475d1bbca12b67d54a7d40de8c51f80dafd16f8773c0867
-SHA512 (rust-1.74.1-aarch64-unknown-netbsd.tar.xz) = 450147e2c82878b1c4c9447e88ee6c8492eb5523d8dda0bc4af188bd41d401dcaeae9019c38edaa6ddb94f6abd2d68f6fa131a238257ced099cb2c30db5c5a62
-Size (rust-1.74.1-aarch64-unknown-netbsd.tar.xz) = 162618788 bytes
-BLAKE2s (rust-1.74.1-aarch64_be-unknown-netbsd.tar.xz) = f4da7e9a2c2463bf9c2e3cf74b493f89739370a6112f74a809902983c1a4e27e
-SHA512 (rust-1.74.1-aarch64_be-unknown-netbsd.tar.xz) = c1ca322ee70b89033a2e3ecb9d13e7f20de58459ea75954840994521644281c48a12ebd8dc9f2c711da67ed6ca6685c5038adc85badca3c4b7f8ea6144d7dcc7
-Size (rust-1.74.1-aarch64_be-unknown-netbsd.tar.xz) = 162045860 bytes
-BLAKE2s (rust-1.74.1-arm-unknown-linux-gnueabihf.tar.gz) = 1a529c6a1f2e7bc6404d03154d0ea141f20be469a9de129ea65d7c5bf5a071f1
-SHA512 (rust-1.74.1-arm-unknown-linux-gnueabihf.tar.gz) = bd85fc70c9b799ca6791f650b3293086e1e69499aff7b9b51a014254792a63b4b71e3aad97249c37f745ccfddd32140ab82892a787c0ecb6e9e975abc1082c87
-Size (rust-1.74.1-arm-unknown-linux-gnueabihf.tar.gz) = 352818474 bytes
-BLAKE2s (rust-1.74.1-armv6-unknown-netbsd-eabihf.tar.xz) = 61968b36c2083884c36f661882b55dcfa57d8f67ba244af22d7e3e74349cc23b
-SHA512 (rust-1.74.1-armv6-unknown-netbsd-eabihf.tar.xz) = a38482087f7158c5f1f3aa3e860d6f22db7ec13d9977c6294921fdb9964321790f125628046330bdc7f015833a8def82664f54e9b27e599b776596730a480dea
-Size (rust-1.74.1-armv6-unknown-netbsd-eabihf.tar.xz) = 139169356 bytes
-BLAKE2s (rust-1.74.1-armv7-unknown-linux-gnueabihf.tar.gz) = 3c1536af41823b79c8aeb223e340e470f0747dd154f5bf2b6e245aec12a9ac44
-SHA512 (rust-1.74.1-armv7-unknown-linux-gnueabihf.tar.gz) = 66f05df7289a1d2c61ff34cb2eeff935ad2f9dfeaf6c0a1759eb97061a37d56feb748893cc9f258f0b2d2c35ddc0fa0ce09f0f8655d1e196f97b448ca727e862
-Size (rust-1.74.1-armv7-unknown-linux-gnueabihf.tar.gz) = 342373318 bytes
-BLAKE2s (rust-1.74.1-armv7-unknown-netbsd-eabihf.tar.xz) = 061584263a358ada66521be07540c645c711b46467ef3ac8d8bbbadb2df9a7e2
-SHA512 (rust-1.74.1-armv7-unknown-netbsd-eabihf.tar.xz) = f9b69fd7681e2e1f32f98b4b246fb3ba9a0adc6d74ef412a7b698ae8a29dbd2a14b3cace50957836bce60db579fcbe1f1b2de2d7a7f35fcba86585273ce38b28
-Size (rust-1.74.1-armv7-unknown-netbsd-eabihf.tar.xz) = 139984064 bytes
-BLAKE2s (rust-1.74.1-i586-unknown-netbsd.tar.xz) = 8731a4b71b45c5812b35e223138b705902ecdbe4486deb6edbd5acb32ef4ed7d
-SHA512 (rust-1.74.1-i586-unknown-netbsd.tar.xz) = 9f8b904db247507d5d8bd8ebf619507945d2b8c87e3319184d27f23efc0d236768fc74db03ba8fd313c873557f708824947c57664903c80d0b0520b27231113c
-Size (rust-1.74.1-i586-unknown-netbsd.tar.xz) = 175253756 bytes
-BLAKE2s (rust-1.74.1-i686-unknown-linux-gnu.tar.gz) = cb55301aae2114e496cd90b14b5e7b35316626ee400699e59d43a61ba73429d9
-SHA512 (rust-1.74.1-i686-unknown-linux-gnu.tar.gz) = 764564da8f891410dc02e71bc823d7d9313f9958576be3ef577d99335da5c279daf014e032b12b3a744b5f0a97a4f1db9effc48e21598f37741b74823d18f08c
-Size (rust-1.74.1-i686-unknown-linux-gnu.tar.gz) = 417507005 bytes
-BLAKE2s (rust-1.74.1-mipsel-unknown-netbsd.tar.xz) = ff9013022fafbc34bf635a469ee0776f3dd971ec472c0acb078dc7d3509fb396
-SHA512 (rust-1.74.1-mipsel-unknown-netbsd.tar.xz) = 97993d66a86d2bf1dc4a86c2ad007991751aad304aa9e52515f3e45ab803c27e0184e46d05cf17a93eabbb4b26b35240bfb7cd2531b2608ca9ff933f28a2361f
-Size (rust-1.74.1-mipsel-unknown-netbsd.tar.xz) = 140988872 bytes
-BLAKE2s (rust-1.74.1-powerpc-unknown-netbsd.tar.xz) = 2da644047ba09814c2d29d277d7f04d67077a36fa0d0589b855ad8c5907c2d15
-SHA512 (rust-1.74.1-powerpc-unknown-netbsd.tar.xz) = 5756817c85cae2d607c39ecc9ef9d741e4ebc0f806358e757e5930cfdbf22c997df7e8158ec1c4b6c796e9c09135fb8ac4fb5d95895f0104752ca73a83a061b5
-Size (rust-1.74.1-powerpc-unknown-netbsd.tar.xz) = 189266964 bytes
-BLAKE2s (rust-1.74.1-riscv64gc-unknown-netbsd.tar.xz) = 1c64b8e6acb250d5b0c29363f255c57606a796ac08bf35e119e51f39c27a264f
-SHA512 (rust-1.74.1-riscv64gc-unknown-netbsd.tar.xz) = 5f153777b293711a80d3ff521fd85cf39cb4b2bb3a0039261032b952792dc952414a3e7b64d340ab1b7a444e8e3e85ac12c800a720e9ccaa0fa2d87e1e77db07
-Size (rust-1.74.1-riscv64gc-unknown-netbsd.tar.xz) = 172793880 bytes
-BLAKE2s (rust-1.74.1-sparc64-unknown-netbsd.tar.xz) = f9e50a59e4cc6fd19668b91ba6771647cf64fcf49cde2c337298715abd3fdd75
-SHA512 (rust-1.74.1-sparc64-unknown-netbsd.tar.xz) = ea4d72df642ad050acf21aeb899a372d61167069e06635605694b16c236ecd264a1530e880c83e5e584ad46baee512da2c1f90e46597b32a26b2a22af97367d2
-Size (rust-1.74.1-sparc64-unknown-netbsd.tar.xz) = 156503992 bytes
-BLAKE2s (rust-1.74.1-x86_64-apple-darwin.tar.gz) = b74088e7577792b58312bfd96d372ce1a9024f12085f8fa38b03d3026328d0c8
-SHA512 (rust-1.74.1-x86_64-apple-darwin.tar.gz) = 700885f5f684d913291204754623ae7e95932da534593feab41418a86886a31825254f75f4728159953fe905a014b9688cd847a64a2b72ec28a02151f27780df
-Size (rust-1.74.1-x86_64-apple-darwin.tar.gz) = 331839585 bytes
-BLAKE2s (rust-1.74.1-x86_64-unknown-freebsd.tar.gz) = 0beaaea0e622942e638b581c607fc38e63415b68339f5b06c7578b3e0bed0a8e
-SHA512 (rust-1.74.1-x86_64-unknown-freebsd.tar.gz) = c8403c3ec0241735eda0bc5119b2ba5dad13446708841bb64db28599bf3406e2337990ba2a74339d130242ebfaf4cfcf59ee611395cb231e2909545c660a5875
-Size (rust-1.74.1-x86_64-unknown-freebsd.tar.gz) = 314334589 bytes
-BLAKE2s (rust-1.74.1-x86_64-unknown-illumos.tar.gz) = a85cd9e2f41848c0d533bfe77b205dd73fd095cf312eefd1d25fea7e016d01ba
-SHA512 (rust-1.74.1-x86_64-unknown-illumos.tar.gz) = 3bde6eb2ba638c0e5400fb8968de1e407d7aa3018044bc43168fe2acca47deaa89bf0dec43221096f9041e0355bce0b66a098c72d2f624842c0bd57c4bedface
-Size (rust-1.74.1-x86_64-unknown-illumos.tar.gz) = 231103389 bytes
-BLAKE2s (rust-1.74.1-x86_64-unknown-linux-gnu.tar.gz) = 3cf48f8beed816899addd2d15493083f48d1b289803e8c3c73f1a186e71c8e03
-SHA512 (rust-1.74.1-x86_64-unknown-linux-gnu.tar.gz) = 918dc9bd838cc115ff9f5cc7458ed6fa264607d3be37e033f0a8ec9f05b2403e0f013bc77bf7df9b3e1b7cf437ce148aef32c9aeb24de9e7a487b15f78b2630a
-Size (rust-1.74.1-x86_64-unknown-linux-gnu.tar.gz) = 325345126 bytes
-BLAKE2s (rust-1.74.1-x86_64-unknown-netbsd.tar.xz) = f9179a7fcf4449ba6aed225272cd6c8694c4bbc92c7d32c3bb0a268063580ca8
-SHA512 (rust-1.74.1-x86_64-unknown-netbsd.tar.xz) = 85864be16d48dce5dc8b3ad8ee0a226902435032141e5f725a69753c5c3fe980de3b9c22fd594acfcfa64ef1083ab6c3bd530c9b8ebbb8f301db1230e216ed88
-Size (rust-1.74.1-x86_64-unknown-netbsd.tar.xz) = 153085208 bytes
-BLAKE2s (rust-std-1.74.1-aarch64-apple-darwin.tar.gz) = 0408a38a765ff39c1b4d0c95eb82cf3c435ffed2786de401b94e335fc84e6533
-SHA512 (rust-std-1.74.1-aarch64-apple-darwin.tar.gz) = 43d969f21cfc9656ac5dd8ab082ea0190f61556d369b0b14e8492e3a81958fb2e29675080bec310da6340dfdfc7eac1df5f634a5978b36a998da2865ff9f57b3
-Size (rust-std-1.74.1-aarch64-apple-darwin.tar.gz) = 40110241 bytes
-BLAKE2s (rust-std-1.74.1-aarch64-unknown-linux-gnu.tar.gz) = 12ed5d1ffc56a73b5f726f82afad01d1d4c0255216d7709b22e83c08d1efa6a9
-SHA512 (rust-std-1.74.1-aarch64-unknown-linux-gnu.tar.gz) = 034198bfe4b3a94e801d0247d14ef902bdcabde4dd4a05e65b3bf5e9a8e8d23969537c93f10a1414798c8035420b7e92af6ccadf9cb05194576674a9214bd3e8
-Size (rust-std-1.74.1-aarch64-unknown-linux-gnu.tar.gz) = 65228338 bytes
-BLAKE2s (rust-std-1.74.1-aarch64-unknown-netbsd.tar.xz) = 594b9704f8b92db0bb63086c9a484bdd114408649dd49168b68dcfadf26b7742
-SHA512 (rust-std-1.74.1-aarch64-unknown-netbsd.tar.xz) = 763e55b91242e7eb2f47a21f74f00fdb25b8fbb10d2e3edf55cc112b381e7136af7dd75e3bbcd843fe179e5e7be89946e345ad6369bce85d7e2038f09f654414
-Size (rust-std-1.74.1-aarch64-unknown-netbsd.tar.xz) = 22520524 bytes
-BLAKE2s (rust-std-1.74.1-aarch64_be-unknown-netbsd.tar.xz) = 22f3cb908f43e8c13c6b6ad75680e874c87b584176ea75c5f5acc6c368f9b413
-SHA512 (rust-std-1.74.1-aarch64_be-unknown-netbsd.tar.xz) = ccbc1bcf0e6c26183c6fed6ef44895d034c83184bd317f93a2652b6630890227ae04b30ddbe63a112ee8cb91dbb7351b20114d7b5eec5da3528f24c949f4e405
-Size (rust-std-1.74.1-aarch64_be-unknown-netbsd.tar.xz) = 22293420 bytes
-BLAKE2s (rust-std-1.74.1-arm-unknown-linux-gnueabihf.tar.gz) = 469df3e49daa45e499540d3ff173fe814a5e3ab8f62aa2633d6173812e6a0e96
-SHA512 (rust-std-1.74.1-arm-unknown-linux-gnueabihf.tar.gz) = f7c73b1f7a83e8923abe5d19d4e90957ba6265c3539df1ad264f5fa17a9e82a60e86edaa04205f4b038433175bf251b559acc2146a165cd56e6ac875c3fec205
-Size (rust-std-1.74.1-arm-unknown-linux-gnueabihf.tar.gz) = 37219196 bytes
-BLAKE2s (rust-std-1.74.1-armv6-unknown-netbsd-eabihf.tar.xz) = d7ecba983a67b9f7c404e0ccbfd42060311b1401276d1e8b9bbd404d479c8a85
-SHA512 (rust-std-1.74.1-armv6-unknown-netbsd-eabihf.tar.xz) = 5e6cef629350a25742bc654297f3c74c83ff6e56353614482ec8ab1c7fc9c4b6829f4d119aa8dd03476e367bb42ee8cfaff90a3707011fec310fc883e0945271
-Size (rust-std-1.74.1-armv6-unknown-netbsd-eabihf.tar.xz) = 20860904 bytes
-BLAKE2s (rust-std-1.74.1-armv7-unknown-linux-gnueabihf.tar.gz) = 11cfac1a88877169682bc00b9180accd288b567446d2044710a172ecb75606d2
-SHA512 (rust-std-1.74.1-armv7-unknown-linux-gnueabihf.tar.gz) = 314ab24829c79b9bae9cbca65d72be16a25336a3ac80dc0c4cf48aa4d8f9df1c5fff0bd9645ba191f57bcede839a3c00e250e6e2a3fe40f0c287937e6e9a0fd8
-Size (rust-std-1.74.1-armv7-unknown-linux-gnueabihf.tar.gz) = 38681944 bytes
-BLAKE2s (rust-std-1.74.1-armv7-unknown-netbsd-eabihf.tar.xz) = 35978f0e26721b21be001c83af09e9809c1cecc3773b723beb7bbfeecb3cd7eb
-SHA512 (rust-std-1.74.1-armv7-unknown-netbsd-eabihf.tar.xz) = eb70d2613e3dd9f17f9e602dbc3b26028c54310faa9691cfe985e774f7cad73ce3fab8b3aca17a07ec495e94d00944f4d1a0ec79ad1b819ed3538ca86cc73111
-Size (rust-std-1.74.1-armv7-unknown-netbsd-eabihf.tar.xz) = 21705004 bytes
-BLAKE2s (rust-std-1.74.1-i586-unknown-netbsd.tar.xz) = 57ac61b9a7824b78b05b4aef234026702e3761d2c1212422db309ec2fc528d49
-SHA512 (rust-std-1.74.1-i586-unknown-netbsd.tar.xz) = 067f3e5ed332dc94c70d8cff2f45de9d3cd10f99a4f8e6bc5a523411460862b30c7b6b1a4c3d12bb47aff3ab96427aa7ab6c95c7c6991e216e62d7adb1967999
-Size (rust-std-1.74.1-i586-unknown-netbsd.tar.xz) = 22757180 bytes
-BLAKE2s (rust-std-1.74.1-i686-unknown-linux-gnu.tar.gz) = e34d40def404e5c0405456bd0aaddf828c1f1e5dd9275393d587dfcb84b3e6ff
-SHA512 (rust-std-1.74.1-i686-unknown-linux-gnu.tar.gz) = faa689d3ab2d901540b64d95a6f579def099f1fdfe6aa93a211c5956077bca68df4fd51be8cfa1e5019e0cc86308e0f22eecdf72fbf94d4d1a76c0a5f76dba82
-Size (rust-std-1.74.1-i686-unknown-linux-gnu.tar.gz) = 40606893 bytes
-BLAKE2s (rust-std-1.74.1-mipsel-unknown-netbsd.tar.xz) = bdd08b0f465164ad0555e9bee1c307e162677516d265aa4ac761959817cf3fb9
-SHA512 (rust-std-1.74.1-mipsel-unknown-netbsd.tar.xz) = 6c6ba2c1481ed12346445a77791a33d38b112ca67d2c15bb8ac0fdc730c05da704bb38740a7ce7e8be44bc099b6943720269c001ddd158f2917e51211ab1c5ed
-Size (rust-std-1.74.1-mipsel-unknown-netbsd.tar.xz) = 20728188 bytes
-BLAKE2s (rust-std-1.74.1-powerpc-unknown-netbsd.tar.xz) = 0d4c7548021b3fd10877f53b73dff997e8bc95728caa5575357886d7a8286fad
-SHA512 (rust-std-1.74.1-powerpc-unknown-netbsd.tar.xz) = 9fae71050ca57f39cf13d01a4bd7362daf61781f5577ef834f19c5edf566f4fd073b8f21491198cbc29ea955a52ab9564253293f7b39beebc917dc6138ede729
-Size (rust-std-1.74.1-powerpc-unknown-netbsd.tar.xz) = 20856308 bytes
-BLAKE2s (rust-std-1.74.1-riscv64gc-unknown-netbsd.tar.xz) = 0ef3e33b32a83769e767f9e93aa3c91e6e3469e94aa7e90528a76c6a8dc339d3
-SHA512 (rust-std-1.74.1-riscv64gc-unknown-netbsd.tar.xz) = 8482c9c5ca18981622065f1990f50200e77dfddbdeeff14dc1822b7a67a8d8853315695993ca1d67ea37b834373482bf5e867a1510b18866eca102a63336428c
-Size (rust-std-1.74.1-riscv64gc-unknown-netbsd.tar.xz) = 20957204 bytes
-BLAKE2s (rust-std-1.74.1-sparc64-unknown-netbsd.tar.xz) = 619f5e6316e0beb88e4f1aa4d8c5828a8f3771bf3bcc4492c1377848aec73939
-SHA512 (rust-std-1.74.1-sparc64-unknown-netbsd.tar.xz) = b8b821dca3d30263361cdccf27313c4c4f36de345244665ac8c0d7d0cb90cc5d29f4ac4e9fd28c48d55852bd1d983d5d04647b1d60a353c29fbc4ebd7cc9ac04
-Size (rust-std-1.74.1-sparc64-unknown-netbsd.tar.xz) = 20588488 bytes
-BLAKE2s (rust-std-1.74.1-x86_64-apple-darwin.tar.gz) = 3b8e0c3b99ce19acad5a86e02d08213d601fb86d2195f3ffdabf417cd60d6620
-SHA512 (rust-std-1.74.1-x86_64-apple-darwin.tar.gz) = ded7a67b9fc3ebc9dbbe61873070a1de300fdf224e0961fb95b10fd982cec2be337bb6c6f97faa381cc62a60e297933fd2c699d778b1578b7fcd8d20426120bf
-Size (rust-std-1.74.1-x86_64-apple-darwin.tar.gz) = 41966632 bytes
-BLAKE2s (rust-std-1.74.1-x86_64-unknown-freebsd.tar.gz) = 1b6031eccc673db19748f3efaf0e3cdccb2519f8eacca7bedee0e425511466cb
-SHA512 (rust-std-1.74.1-x86_64-unknown-freebsd.tar.gz) = cf67fa879dcad6f86677559e76eba6c4f824e879268fc50cd778d40b33bcdfc447755981782b95ec91d054752c3f4821c468c1e3eea98257867d0b7bebba3993
-Size (rust-std-1.74.1-x86_64-unknown-freebsd.tar.gz) = 43726025 bytes
-BLAKE2s (rust-std-1.74.1-x86_64-unknown-linux-gnu.tar.gz) = 693cbd61d9cb455a61b1e35dda8752d763272421c12e3f7806cfdc557bb03a76
-SHA512 (rust-std-1.74.1-x86_64-unknown-linux-gnu.tar.gz) = bfed8575c0c010f19536c08179d9ecdbbef77af93dde72c1b8d5f6acd9a7b45f247e3aa3e83c8a0b0ee8ee5817ff15c2775e23a0d6247d8f79a7ede76b3e2d20
-Size (rust-std-1.74.1-x86_64-unknown-linux-gnu.tar.gz) = 45514745 bytes
-BLAKE2s (rust-std-1.74.1-x86_64-unknown-netbsd.tar.xz) = f3452e9f0ddacc651106d82b82f29a57461e47e2dc9295f015f5fc8dff7c5167
-SHA512 (rust-std-1.74.1-x86_64-unknown-netbsd.tar.xz) = b55e98fa873f57f3063f72bb51dd0b8ade30d30974de7593a5b22e04e16e473b2c9c67993cd880c2fd9cc890193c840fe16798dd225f29c26a6ca84e8155b49d
-Size (rust-std-1.74.1-x86_64-unknown-netbsd.tar.xz) = 22812280 bytes
-BLAKE2s (rustc-1.75.0-src.tar.gz) = ce73634181497293f543514b5e22b059b9f7b4d102766db8beaa76fd9baf7db4
-SHA512 (rustc-1.75.0-src.tar.gz) = c0fbc7349082bdda5693664f86e2814e3a15272dd1b5028859e9d0d864b4375fae94b7039e14567d25bc9c3c4d8187734a163a2522b75cb1f267f7b9e57c3385
-Size (rustc-1.75.0-src.tar.gz) = 285857065 bytes
-SHA1 (patch-compiler_rustc__codegen__ssa_src_back_linker.rs) = 62819cf6db7d2e3e77d433fe883046c28fc20d91
-SHA1 (patch-compiler_rustc__llvm_build.rs) = a4a66d449fc9eb99d648d02a041778a68f4f7ce8
-SHA1 (patch-compiler_rustc__target_src_spec_base_netbsd.rs) = 7fb6ec6d45a9bf4525c675390117e9e61b8023cd
-SHA1 (patch-compiler_rustc__target_src_spec_mod.rs) = a22b5d28997ed9a5565deec9c34322165d563d00
-SHA1 (patch-compiler_rustc__target_src_spec_targets_mips64el__unknown__netbsd.rs) = d38c3b43656917e60312a842e6a0c37776bbd5d0
-SHA1 (patch-library_backtrace_src_symbolize_gimli.rs) = 1ab343595e65ff6348f83cffc30e53d764485ff8
-SHA1 (patch-library_backtrace_src_symbolize_gimli_elf.rs) = 3b84a462c6bc8245d579452e4c37e3ce13314952
-SHA1 (patch-library_std_src_sys_unix_mod.rs) = f8669d680f169137ac2891af2977909619366a97
-SHA1 (patch-library_std_src_sys_unix_thread.rs) = 3f79b21fa033782122e09ffc44de55a0e5ecaecb
-SHA1 (patch-library_std_src_sys_unix_thread__parking_netbsd.rs) = c29eb1cf074766d34bd2b8c348ce29c6ae2ba163
-SHA1 (patch-src_bootstrap_bootstrap.py) = 5cd73003292c935ce0e405edd132180233a04857
-SHA1 (patch-src_bootstrap_src_core_build__steps_compile.rs) = 4696304623232acd419ad15597f539a10a014271
-SHA1 (patch-src_bootstrap_src_core_build__steps_llvm.rs) = aba4c50ffd0a037096ea34a5e9660f8b435d997f
-SHA1 (patch-src_bootstrap_src_core_builder.rs) = 557721367140fe1078ce9948296f1a747fab56f0
-SHA1 (patch-src_bootstrap_src_lib.rs) = d29bc3c0b335d5e788eecbb02fc08966beef0fb1
-SHA1 (patch-src_llvm-project_llvm_CMakeLists.txt) = 7abfabb6ec70df229a69355f8c76825610165c37
-SHA1 (patch-src_llvm-project_llvm_cmake_modules_AddLLVM.cmake) = e1b2eb2f0b3cf1cf87b443656ae306b3242f6b12
-SHA1 (patch-src_llvm-project_llvm_include_llvm-c_DataTypes.h) = cb011fc19957883c01725797f7c85ed1b20f96f1
-SHA1 (patch-src_llvm-project_llvm_include_llvm_Analysis_ConstantFolding.h) = 39d76e6659143d154ae690ac70781b698a2023d8
-SHA1 (patch-src_llvm-project_llvm_lib_Support_BLAKE3_blake3__impl.h) = 67e93f198258a5b59580be20ff47ce58b146c5d5
-SHA1 (patch-src_llvm-project_llvm_utils_FileCheck_FileCheck.cpp) = 2587c2f4d11ad8f75bf8a16de625135b26bacc15
-SHA1 (patch-src_tools_cargo_src_cargo_core_profiles.rs) = e1af7fde97416e0a269ee34efd37f4f47fcf7a95
-SHA1 (patch-src_tools_cargo_tests_testsuite_build.rs) = 60713699c968f3e389f486e796009d31a5048906
-SHA1 (patch-src_tools_rust-installer_install-template.sh) = 6984546c34a2e4d55a6dbe59baa0d4958184e0b7
-SHA1 (patch-vendor_backtrace_src_symbolize_gimli.rs) = b93148ff72a60a17c6a444f2616386c40d872153
-SHA1 (patch-vendor_backtrace_src_symbolize_gimli_elf.rs) = 308538090d9ce11d206d6eef0e675581a1fc6e80
-SHA1 (patch-vendor_cc-1.0.73_src_lib.rs) = 98acea9fb98898f63bbb0f6555df5e4b15da2b85
-SHA1 (patch-vendor_cc_src_lib.rs) = c64f7922684b75a559c3b6244114524eb3ab8385
-SHA1 (patch-vendor_crossbeam-epoch_no__atomic.rs) = a493d0b57a22b9a83c843a1076c91b6d36d2e007
-SHA1 (patch-vendor_crossbeam-utils-0.8.14-no__atomic.rs) = 2053e2cffcb2981435c94df04d0e3f333fa77c07
-SHA1 (patch-vendor_crossbeam-utils_no__atomic.rs) = 26f797159530bc2c5e1be83a225a13e5458879b2
-SHA1 (patch-vendor_libc-0.2.141_src_unix_bsd_netbsdlike_netbsd_mips.rs) = b99ebc7233690df5dd3fa7674d86ec08831eec59
-SHA1 (patch-vendor_libc-0.2.141_src_unix_bsd_netbsdlike_netbsd_riscv64.rs) = 511e5d97083638352d77a463582aca8812602b45
-SHA1 (patch-vendor_libc-0.2.146_src_unix_bsd_netbsdlike_netbsd_mips.rs) = 4b9ff57adb8d67f467eb36c023548afef8b1ed74
-SHA1 (patch-vendor_libc-0.2.146_src_unix_bsd_netbsdlike_netbsd_mod.rs) = 3434376111d3f4759eab5eb278eb64ac5e170ffb
-SHA1 (patch-vendor_libc-0.2.146_src_unix_bsd_netbsdlike_netbsd_riscv64.rs) = 66b4cd0853154e6a8fcd009a06ebbae5a1c98f82
-SHA1 (patch-vendor_libc-0.2.146_src_unix_solarish_mod.rs) = 17884a63798eee6d68771faa8d9592525aa2a3bb
-SHA1 (patch-vendor_libc-0.2.148_src_unix_bsd_netbsdlike+netbsd_mips.rs) = 0895df54084281263b9dae67e57f68168fb66bd4
-SHA1 (patch-vendor_libc-0.2.148_src_unix_bsd_netbsdlike_netbsd_mod.rs) = 93ba3bc49a37448dcf446b59a3ad74be7ea74215
-SHA1 (patch-vendor_libc-0.2.148_src_unix_bsd_netbsdlike_netbsd_riscv64.rs) = 8699853de4225d4e5953d6bf17b59bc463fa7b5d
-SHA1 (patch-vendor_libc-0.2.148_src_unix_solarish_mod.rs) = bb50e900188a9221df96c4b9638425763ea82b04
-SHA1 (patch-vendor_libc-0.2.149_src_unix_bsd_netbsdlike_netbsd_mips.rs) = 6f4bf5f110a88c3641c2f995d7701f86bd68abf4
-SHA1 (patch-vendor_libc-0.2.149_src_unix_bsd_netbsdlike_netbsd_mod.rs) = b5007b86bcd3047fc41226ee70c36f9672975d04
-SHA1 (patch-vendor_libc-0.2.149_src_unix_bsd_netbsdlike_netbsd_riscv64.rs) = c2e1c29998e4e7676d9e6008ba73c3cea6d43166
-SHA1 (patch-vendor_libc-0.2.149_src_unix_solarish_mod.rs) = 5572b2e821ba850dcc3a08f1f2be6eb67acaae4a
-SHA1 (patch-vendor_libc_src_unix_solarish_mod.rs) = 4d16d9545b4bee3155664c4e7ce12082a7f4400e
-SHA1 (patch-vendor_lzma-sys_config.h) = b654c7e129fa02697734bc87173f89b3056a5437
-SHA1 (patch-vendor_nix_src_sys_signal.rs) = bf4fcdc5b71d8d73b3d7e8acfccd0554d822c131
-SHA1 (patch-vendor_openssl-src_openssl_Configurations_10-main.conf) = 9813c98a0551dba197ff47e9ac0f766c50351569
-SHA1 (patch-vendor_openssl-src_src_lib.rs) = fc38171e21ab88540a774917f419d41d67f509ca
-SHA1 (patch-vendor_openssl-sys_build_find__normal.rs) = 98927415bd3517a7492b87da99c8933c19c7299e
-SHA1 (patch-vendor_openssl-sys_build_main.rs) = 20618b13b56cc93bb5c051f96046604dd4977345
-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) = 65ffbc524705bddd5233b3766b3f271dfea5d625
-SHA1 (patch-vendor_valuable_no__atomic.rs) = 3a40cb846bf1fae864c55a0ddba8fdeb5efcba72
diff --git a/rust175/do-cross.mk b/rust175/do-cross.mk
deleted file mode 100644
index 36d5cd1a7f..0000000000
--- a/rust175/do-cross.mk
+++ /dev/null
@@ -1,107 +0,0 @@
-# $NetBSD$
-# Do all the NetBSD cross builds
-# Collect the bootstrap kits in dist/
-
-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+=		arm64
-SHORT_TARGETS+=		arm64_be
-SHORT_TARGETS+=		i386
-SHORT_TARGETS+=		riscv64
-SHORT_TARGETS+=		mipsel	# produces mips32 (not mips1) executables
-
-# Conditional local overrides of ROOT.* variables:
-.sinclude "local-roots.mk"
-
-# Root of target directories.
-# Must have dest/ (build.sh's DESTDIR) and tools/ subdirectories
-ROOT.armv7?=		/u/evbarm-armv7hf
-ROOT.armv6?=		/u/evbarm-armv6hf
-ROOT.sparc64?=		/u/sparc64
-ROOT.powerpc?=		/u/macppc
-ROOT.arm64?=		/u/evbarm64
-ROOT.arm64_be?=		/u/evbarm64eb
-ROOT.i386?=		/u/i386
-ROOT.mipsel?=		/u/mipsel
-ROOT.riscv64?=		/u/riscv64
-
-# Mapping to GNU triple
-G_TGT.armv7=		armv7--netbsdelf-eabihf
-G_TGT.armv6=		armv6--netbsdelf-eabihf
-G_TGT.sparc64=		sparc64--netbsd
-G_TGT.powerpc=		powerpc--netbsd
-G_TGT.arm64=		aarch64--netbsd
-G_TGT.arm64_be=		aarch64_be--netbsd
-G_TGT.i386=		i486--netbsdelf
-G_TGT.mipsel=		mipsel--netbsd
-G_TGT.riscv64=		riscv64--netbsd
-
-# Mapping to rust's TARGET specification
-TGT.armv7=		armv7-unknown-netbsd-eabihf
-TGT.armv6=		armv6-unknown-netbsd-eabihf
-TGT.sparc64=		sparc64-unknown-netbsd
-TGT.powerpc=		powerpc-unknown-netbsd
-TGT.arm64=		aarch64-unknown-netbsd
-TGT.arm64_be=		aarch64_be-unknown-netbsd
-TGT.i386=		i586-unknown-netbsd
-TGT.mipsel=		mipsel-unknown-netbsd
-TGT.riscv64=		riscv64gc-unknown-netbsd
-
-# Optional target tweak for bootstrap files
-#TT.powerpc=		powerpc-unknown-netbsd90
-
-WRKDIR=		${.CURDIR}/work
-SCRIPTS=	${WRKDIR}/scripts
-
-#DEBUG=		echo
-
-# Make list of make targets
-.for st in ${SHORT_TARGETS}
-MTGTS+=	do-${st}
-.endfor
-
-all: ${MTGTS}
-
-# Define the individual build targets, used above
-.for st in ${SHORT_TARGETS}
-CA.${st}=--host=${TGT.${st}}
-CA.${st}+=--target=${TGT.${st}}
-CA.${st}+=--set=target.${TGT.${st}}.cc=${SCRIPTS}/gcc-wrap
-CA.${st}+=--set=target.${TGT.${st}}.cxx=${SCRIPTS}/c++-wrap
-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}"
-	${DEBUG} make -f Makefile clean
-	${DEBUG} env \
-		CROSS_ROOT=${ROOT.${st}} \
-		GNU_CROSS_TARGET=${G_TGT.${st}} \
-		make -f Makefile \
-			ADD_CONFIGURE_ARGS="${CA.${st}}" \
-			TARGET=${TGT.${st}}
-	if [ "${TT.${st}}" != "" ]; then \
-		TT=${TT.${st}}; \
-	else \
-		TT=${TGT.${st}}; \
-	fi; \
-	distdir=${WRKDIR}/rustc-${V_NOREV}-src/build/dist; \
-	for comp in rust rust-std; do \
-		src=$${distdir}/$${comp}-${V_NOREV}-${TGT.${st}}.tar.xz; \
-		tgt=dist/$${comp}-${VERSION}-$${TT}.tar.xz; \
-		if [ ! -f "$${tgt}" ]; then \
-			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; \
-		${DEBUG} ln $${distdir}/$${src_comp} dist; \
-	fi
-.endfor
diff --git a/rust175/files/gcc-wrap b/rust175/files/gcc-wrap
deleted file mode 100644
index 957ebfa032..0000000000
--- a/rust175/files/gcc-wrap
+++ /dev/null
@@ -1,199 +0,0 @@
-#! /bin/sh
-
-# Root of targets tools + dest directories
-# or unset to default to a native build.
-
-# This script assumes target tools in $root/tools 
-# and target's destdir in $root/dest, the result of a NetBSD build.sh.
-# ...or the native root, when we don't cross-compile
-root=${CROSS_ROOT:-/}
-
-incadd=""
-native=false
-if [ $root = "/" ]; then
-	native=true
-else
-	# What's the tools/bin prefix (if we're cross-building)?
-	gnuarch=${GNU_CROSS_TARGET:?}
-
-	# A special hack for netbsd-8 targets.
-	# netbsd-8 has gcc 5.5, but llvm and rust needs >= 7
-	# so we build tools from -9, and try to use that, but
-	# then the include path becomes wrong, and <stdatomic.h>
-	# is no longer picked up automatically by the compiler
-	# from the target destination directory
-	case $gnuarch in
-		sparc64*)	incadd="-I=/usr/include/gcc-5"
-				;;
-
-				# immintrin & from gcc-5 not
-				# compatible with gcc7, apparently
-		i[3456]86*)	incadd="-I=/usr/include/gcc-7"
-				;;
-
-				# mips64 does soft-float
-		mips64*)	madd="-msoft-float"
-				;;
-	esac
-	# We build both for -8 and -9 due to ABI differences,
-	# so can't just test $gnuarch...  Yes, a vile hack.
-	if [ "$root" = "/u/macppc" ]; then
-		incadd="-I=/usr/include/gcc-5"
-	fi
-fi
-
-# Who are we a wrapper for? (Typically either gcc or c++)
-who=$(basename $0 | sed -e 's/-wrap$//')
-
-args=""
-if [ ! -z "$madd" ]; then
-	args="$args $madd"
-fi
-
-# May need to add $linkadd before first -l or fist -L
-linkadd="-Wl,--sysroot=${root}/dest"
-# (perhaps this is overly cautious, other adjustments we do
-# below may be sufficient...)
-# Lib directories to ensure we search and have in run-path
-libs="/lib /usr/lib /usr/pkg/lib"
-
-for d in $libs; do
-	if ! $native; then
-		linkadd="$linkadd -L=$d"
-		linkadd="$linkadd -Wl,-rpath-link=${root}/dest/$d"
-	fi
-	# Run-path is for when we execute on the target,
-	# so no $root prefix
-	linkadd="$linkadd -Wl,-rpath,$d"
-done
-
-# ...and add a placeholder so we can tweak RPATH with chrpath,
-# since chrpath can't extend the length of the run path
-# (This may also not be needed, we use LD_LIBRARY_PATH instead)
-placeholder="placeholder-$(date | openssl dgst -sha1 | \
-	awk '{ print $2 }')"
-linkadd="$linkadd -Wl,-rpath,/$placeholder"
-# the / is a sneaky attempt to let it past cwrapper...
-
-# More debugging
-linkadd="$linkadd -Wl,--verbose"
-
-linktweaked=false
-
-# Step through args, tweak where required
-set -- "$@"
-while [ $# -gt 0 ]; do
-	case "$1" in
-# Insert = at the front of -isystem args.
-# This is to get --sysroot prepended, so that
-# we pick up the correct set of header files.
-# (I thought this wasn't reqired, but apparently it is...)
-		-isystem)
-			shift
-			args="$args -isystem =$1"
-			;;
-# Also doctor -I directives of known paths and
-# redirect them to the --sysroot.
-		-I/usr/include)
-			args="$args -I=/usr/include"
-			;;
-		-I/usr/include/krb5)
-			args="$args -I=/usr/include/krb5"
-			;;
-		-I/usr/pkg/include)
-# Try to drop this...
-			if ! $native; then
-				args="$args -I=/usr/pkg/include"
-			fi
-			;;
-		-I)
-			if [ $2 = "/usr/include" ]; then
-				args="$args -I=/usr/include"
-				shift
-			elif [ $2 = "/usr/include/krb5" ]; then
-				args="$args -I=/usr/include/krb5"
-				shift
-			elif [ $2 = "/usr/pkg/include" ]; then
-# Try to drop this too...
-				if ! $native; then
-					args="$args -I=/usr/pkg/include"
-				fi
-				shift
-			else
-				args="$args -I"
-			fi
-			;;
-		-l*)
-			if ! $linktweaked; then
-				args="$args $linkadd"
-				linktweaked=true
-			fi
-			args="$args $1"
-			;;
-		-L)
-			if ! $linktweaked; then
-				args="$args $linkadd"
-				linktweaked=true
-			fi
-			shift
-			tweaked=false
-			# redirect these to -Wl,--sysroot
-			for d in /lib /usr/lib /usr/pkg/lib; do
-				if [ $1 = $d ]; then
-					args="$args -L =$d"
-					tweaked=true
-				fi
-			done
-			# Not redirected?  If so we need to add
-			if ! $tweaked; then
-				args="$args -L $1"
-			fi
-			;;
-			
-		-L/lib)
-			if ! $linktweaked; then
-				args="$args $linkadd"
-				linktweaked=true
-			fi
-			args="$args -L=/lib"
-			;;
-		-L/usr/lib)
-			if ! $linktweaked; then
-				args="$args $linkadd"
-				linktweaked=true
-			fi
-			args="$args -L=/usr/lib"
-			;;
-		-L/usr/pkg/lib)
-			if ! $linktweaked; then
-				args="$args $linkadd"
-				linktweaked=true
-			fi
-			args="$args -L=/usr/pkg/lib"
-			;;
-		-Wl,--enable-new-dtags)
-			# ignore
-			;;
-		*)
-			args="$args $1"
-			;;
-	esac
-	shift
-done
-
-if $native; then
-	# Try to avoid cwrappers, which does "undocumented magic"
-	# by invoking the compiler "directly".
-	#cmd="/usr/bin/${who} $args"
-	# (however, this wrapper isn't used when buliding natively...)
-	cmd="${who} $args"
-else
-	cmd="${root}/tools/bin/${gnuarch}-${who} \
-		--sysroot=${root}/dest \
-		$incadd \
-		$args"
-fi
-
-# Cannot echo to stdout, messes up e.g. "gcc -print-prog-name=ld" output...
-#echo $cmd >> /tmp/gcc-wrap.log
-exec $cmd
diff --git a/rust175/options.mk b/rust175/options.mk
deleted file mode 100644
index 26419c6beb..0000000000
--- a/rust175/options.mk
+++ /dev/null
@@ -1,76 +0,0 @@
-# $NetBSD: options.mk,v 1.26 2022/07/11 20:13:50 jperkin Exp $
-
-PKG_OPTIONS_VAR=	PKG_OPTIONS.rust
-PKG_SUPPORTED_OPTIONS+=	rust-cargo-static rust-docs
-
-.include "../../mk/bsd.fast.prefs.mk"
-
-# The bundled LLVM current has issues building on SunOS.
-.if ${OPSYS} != "SunOS"
-PKG_SUPPORTED_OPTIONS+=		rust-internal-llvm
-# There may be compatibility issues with the base LLVM on e.g. NetBSD.
-.  if !empty(HAVE_LLVM) || ${MACHINE_PLATFORM:MDarwin-*-aarch64}
-PKG_SUGGESTED_OPTIONS+=		rust-internal-llvm
-.  endif
-.endif
-
-# If cross-building, always use the internal LLVM
-.if !empty(TARGET)
-PKG_SUGGESTED_OPTIONS+=		rust-internal-llvm
-.endif
-
-# Bundle OpenSSL and curl into the cargo binary when producing
-# bootstraps on NetBSD.
-.if ${OPSYS} == "NetBSD" && ${BUILD_TARGET} == "dist"
-PKG_SUGGESTED_OPTIONS+=	rust-cargo-static
-.endif
-
-PKG_OPTIONS_LEGACY_OPTS+=	rust-llvm:rust-internal-llvm
-
-.include "../../mk/bsd.options.mk"
-
-#
-# Use the internal copy of LLVM or the external one?
-#
-.if empty(PKG_OPTIONS:Mrust-internal-llvm)
-# External LLVM must be >= 15, ref. RELEASES.md
-BUILDLINK_API_DEPENDS.llvm+=	llvm>=15
-.include "../../lang/libunwind/buildlink3.mk"
-.include "../../lang/llvm/buildlink3.mk"
-CONFIGURE_ARGS+=	--enable-llvm-link-shared
-CONFIGURE_ARGS+=	--llvm-libunwind=system
-CONFIGURE_ARGS+=	--llvm-root=${BUILDLINK_PREFIX.llvm}
-.endif
-
-# NetBSD/sparc64 when using the internal LLVM needs
-# to not use gcc 10.4 or 10.5 (as found in 10.0_BETA or 10.0), ref.
-# https://github.com/rust-lang/rust/issues/117231
-# (however, gcc from 9.x produces a working LLVM).
-.if ${MACHINE_PLATFORM:MNetBSD-10.*-sparc64}
-.  if !empty(PKG_OPTIONS:Mrust-internal-llvm)
-# Require GCC 12 (from pkgsrc) to correctly build the embedded LLVM (17.x).
-GCC_REQD=	12
-.  endif
-.endif
-
-#
-# Link cargo statically against "native" libraries.
-# (openssl and curl specifically).
-#
-.if !empty(PKG_OPTIONS:Mrust-cargo-static)
-CONFIGURE_ARGS+=	--enable-cargo-native-static
-.else
-BUILDLINK_API_DEPENDS.nghttp2+= nghttp2>=1.41.0
-BUILDLINK_API_DEPENDS.curl+= 	curl>=7.67.0
-.include "../../www/curl/buildlink3.mk"
-.include "../../security/openssl/buildlink3.mk"
-.endif
-
-#
-# Install documentation.
-#
-.if !empty(PKG_OPTIONS:Mrust-docs)
-CONFIGURE_ARGS+=	--enable-docs
-.else
-CONFIGURE_ARGS+=	--disable-docs
-.endif
diff --git a/rust175/patches/patch-compiler_rustc__codegen__ssa_src_back_linker.rs b/rust175/patches/patch-compiler_rustc__codegen__ssa_src_back_linker.rs
deleted file mode 100644
index d603fa804b..0000000000
--- a/rust175/patches/patch-compiler_rustc__codegen__ssa_src_back_linker.rs
+++ /dev/null
@@ -1,15 +0,0 @@
-$NetBSD$
-
-Do not use @rpath on Darwin.
-
---- 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
-@@ -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 {
--                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/rust175/patches/patch-compiler_rustc__llvm_build.rs b/rust175/patches/patch-compiler_rustc__llvm_build.rs
deleted file mode 100644
index b000456d6d..0000000000
--- a/rust175/patches/patch-compiler_rustc__llvm_build.rs
+++ /dev/null
@@ -1,50 +0,0 @@
-$NetBSD$
-
-Fix build on NetBSD HEAD-llvm. XXX there is probably a better way to do this.
-
-Pick up -latomic tweak from
-https://github.com/rust-lang/rust/issues/104220
-and
-https://github.com/rust-lang/rust/pull/104572
-
---- compiler/rustc_llvm/build.rs.orig	2023-10-03 02:52:17.000000000 +0000
-+++ compiler/rustc_llvm/build.rs
-@@ -249,6 +249,10 @@ fn main() {
-     {
-         // 32-bit targets need to link libatomic.
-         println!("cargo:rustc-link-lib=atomic");
-+        if target.contains("netbsd")
-+        {
-+            println!("cargo:rustc-link-lib=z");
-+        }
-     } else if target.contains("windows-gnu") {
-         println!("cargo:rustc-link-lib=shell32");
-         println!("cargo:rustc-link-lib=uuid");
-@@ -261,7 +265,11 @@ fn main() {
-         // On NetBSD/i386, gcc and g++ is built for i486 (to maximize backward compat)
-         // However, LLVM insists on using 64-bit atomics.
-         // This gives rise to a need to link rust itself with -latomic for these targets
--        if target.starts_with("i586") || target.starts_with("i686") {
-+        if target.starts_with("i386") 
-+           || target.starts_with("i486") 
-+           || target.starts_with("i586") 
-+           || target.starts_with("i686")
-+        {
-             println!("cargo:rustc-link-lib=atomic");
-         }
-         println!("cargo:rustc-link-lib=z");
-@@ -352,7 +360,13 @@ fn main() {
-         "c++"
-     } else if target.contains("netbsd") && llvm_static_stdcpp.is_some() {
-         // NetBSD uses a separate library when relocation is required
--        "stdc++_p"
-+	if env::var_os("PKGSRC_HAVE_LIBCPP").is_some() {
-+            "c++_pic"
-+	} else {
-+            "stdc++_pic"
-+	}
-+    } else if env::var_os("PKGSRC_HAVE_LIBCPP").is_some() {
-+	"c++"
-     } else if llvm_use_libcxx.is_some() {
-         "c++"
-     } else {
diff --git a/rust175/patches/patch-compiler_rustc__target_src_spec_base_netbsd.rs b/rust175/patches/patch-compiler_rustc__target_src_spec_base_netbsd.rs
deleted file mode 100644
index a57da2a270..0000000000
--- a/rust175/patches/patch-compiler_rustc__target_src_spec_base_netbsd.rs
+++ /dev/null
@@ -1,32 +0,0 @@
-$NetBSD$
-
-For the benefit of powerpc, when libatomic-links is installed,
-search the directory containing the symlinks to -latomic.
-
---- compiler/rustc_target/src/spec/base/netbsd.rs.orig	2024-01-06 19:57:14.887897867 +0000
-+++ compiler/rustc_target/src/spec/base/netbsd.rs
-@@ -1,12 +1,23 @@
--use crate::spec::{cvs, RelroLevel, TargetOptions};
-+use crate::spec::{cvs, Cc, Lld, RelroLevel, LinkerFlavor, TargetOptions};
- 
- pub fn opts() -> TargetOptions {
-+    let add_linker_paths =
-+        &[
-+            // For the benefit of powerpc, when libatomic-links is installed,
-+            "-Wl,-R@PREFIX@/lib/libatomic",
-+            "-Wl,-L@PREFIX@/lib/libatomic",
-+        ];
-+    let pre_link_args = TargetOptions::link_args(
-+        LinkerFlavor::Gnu(Cc::Yes, Lld::No),
-+        add_linker_paths
-+    );
-     TargetOptions {
-         os: "netbsd".into(),
-         dynamic_linking: true,
-         families: cvs!["unix"],
-         no_default_libraries: false,
-         has_rpath: true,
-+        pre_link_args,
-         position_independent_executables: true,
-         relro_level: RelroLevel::Full,
-         use_ctors_section: true,
diff --git a/rust175/patches/patch-compiler_rustc__target_src_spec_mod.rs b/rust175/patches/patch-compiler_rustc__target_src_spec_mod.rs
deleted file mode 100644
index 324f6c804d..0000000000
--- a/rust175/patches/patch-compiler_rustc__target_src_spec_mod.rs
+++ /dev/null
@@ -1,14 +0,0 @@
-$NetBSD$
-
-Add entry for NetBSD/mips64el.
-
---- compiler/rustc_target/src/spec/mod.rs.orig	2024-01-13 14:20:59.236278792 +0000
-+++ compiler/rustc_target/src/spec/mod.rs
-@@ -1532,6 +1532,7 @@ supported_targets! {
-     ("armv7-unknown-netbsd-eabihf", armv7_unknown_netbsd_eabihf),
-     ("i586-unknown-netbsd", i586_unknown_netbsd),
-     ("i686-unknown-netbsd", i686_unknown_netbsd),
-+    ("mips64el-unknown-netbsd", mips64el_unknown_netbsd),
-     ("mipsel-unknown-netbsd", mipsel_unknown_netbsd),
-     ("powerpc-unknown-netbsd", powerpc_unknown_netbsd),
-     ("riscv64gc-unknown-netbsd", riscv64gc_unknown_netbsd),
diff --git a/rust175/patches/patch-compiler_rustc__target_src_spec_targets_mips64el__unknown__netbsd.rs b/rust175/patches/patch-compiler_rustc__target_src_spec_targets_mips64el__unknown__netbsd.rs
deleted file mode 100644
index 710cf5ffdd..0000000000
--- a/rust175/patches/patch-compiler_rustc__target_src_spec_targets_mips64el__unknown__netbsd.rs
+++ /dev/null
@@ -1,29 +0,0 @@
-$NetBSD$
-
-Provide a mips64el target with N32, suitable for NetBSD/mips64el.
-
---- compiler/rustc_target/src/spec/targets/mips64el_unknown_netbsd.rs.orig	2024-01-13 14:16:30.122042614 +0000
-+++ compiler/rustc_target/src/spec/targets/mips64el_unknown_netbsd.rs
-@@ -0,0 +1,22 @@
-+use crate::abi::Endian;
-+use crate::spec::{base, Target, TargetOptions};
-+
-+pub fn target() -> Target {
-+    let mut base = base::netbsd::opts();
-+    base.max_atomic_width = Some(32);
-+    base.cpu = "mips32".into();
-+
-+    Target {
-+        llvm_target: "mipsel-unknown-netbsd".into(),
-+        pointer_width: 32,
-+        data_layout: "e-m:m-p:32:32-i8:8:32-i16:16:32-i64:64-n32-S64".into(),
-+        arch: "mips".into(),
-+        options: TargetOptions {
-+            abi: "n32".into(),
-+            features: "+soft-float,+abi=n32".into(),
-+            endian: Endian::Little,
-+            mcount: "__mcount".into(),
-+            ..base
-+        },
-+    }
-+}
diff --git a/rust175/patches/patch-library_backtrace_src_symbolize_gimli.rs b/rust175/patches/patch-library_backtrace_src_symbolize_gimli.rs
deleted file mode 100644
index 0ed9af7822..0000000000
--- a/rust175/patches/patch-library_backtrace_src_symbolize_gimli.rs
+++ /dev/null
@@ -1,14 +0,0 @@
-$NetBSD$
-
-Add NetBSD to the family who is in the unix class.
-
---- library/backtrace/src/symbolize/gimli.rs.orig	2022-04-04 09:41:26.000000000 +0000
-+++ library/backtrace/src/symbolize/gimli.rs
-@@ -38,6 +38,7 @@ cfg_if::cfg_if! {
-         target_os = "ios",
-         target_os = "linux",
-         target_os = "macos",
-+        target_os = "netbsd",
-         target_os = "openbsd",
-         target_os = "solaris",
-         target_os = "illumos",
diff --git a/rust175/patches/patch-library_backtrace_src_symbolize_gimli_elf.rs b/rust175/patches/patch-library_backtrace_src_symbolize_gimli_elf.rs
deleted file mode 100644
index c8ee922920..0000000000
--- a/rust175/patches/patch-library_backtrace_src_symbolize_gimli_elf.rs
+++ /dev/null
@@ -1,25 +0,0 @@
-$NetBSD$
-
-Make NetBSD also find its debug libraries, if present.
-
---- library/backtrace/src/symbolize/gimli/elf.rs.orig	2022-04-04 09:41:26.000000000 +0000
-+++ library/backtrace/src/symbolize/gimli/elf.rs
-@@ -304,11 +304,17 @@ fn decompress_zlib(input: &[u8], output:
-     }
- }
- 
-+#[cfg(target_os = "netbsd")]
-+const DEBUG_PATH: &[u8] = b"/usr/libdata/debug";
-+#[cfg(not(target_os = "netbsd"))]
- const DEBUG_PATH: &[u8] = b"/usr/lib/debug";
- 
- fn debug_path_exists() -> bool {
-     cfg_if::cfg_if! {
--        if #[cfg(any(target_os = "freebsd", target_os = "hurd", target_os = "linux"))] {
-+        if #[cfg(any(target_os = "freebsd",
-+                     target_os = "netbsd",
-+                     target_os = "hurd",
-+                     target_os = "linux"))] {
-             use core::sync::atomic::{AtomicU8, Ordering};
-             static DEBUG_PATH_EXISTS: AtomicU8 = AtomicU8::new(0);
- 
diff --git a/rust175/patches/patch-library_std_src_sys_unix_mod.rs b/rust175/patches/patch-library_std_src_sys_unix_mod.rs
deleted file mode 100644
index 025b74b7b4..0000000000
--- a/rust175/patches/patch-library_std_src_sys_unix_mod.rs
+++ /dev/null
@@ -1,14 +0,0 @@
-$NetBSD$
-
-Add libexecinfo for backtrace() on NetBSD.
-
---- library/std/src/sys/unix/mod.rs.orig	2021-02-10 17:36:44.000000000 +0000
-+++ library/std/src/sys/unix/mod.rs
-@@ -269,6 +269,7 @@ cfg_if::cfg_if! {
-         #[link(name = "pthread")]
-         extern "C" {}
-     } else if #[cfg(target_os = "netbsd")] {
-+        #[link(name = "execinfo")]
-         #[link(name = "pthread")]
-         #[link(name = "rt")]
-         extern "C" {}
diff --git a/rust175/patches/patch-library_std_src_sys_unix_thread.rs b/rust175/patches/patch-library_std_src_sys_unix_thread.rs
deleted file mode 100644
index f01348ffb6..0000000000
--- a/rust175/patches/patch-library_std_src_sys_unix_thread.rs
+++ /dev/null
@@ -1,56 +0,0 @@
-$NetBSD$
-
-Fix stack-clash on SunOS.
-
-Undo new(ish) code (from 1.72.0) which attempts to count threads/CPUs
-on NetBSD; somehow it is causing crashes in bootstrap() on certain
-CPU architectures (i386, powerpc, armv7, but not riscv64, aarch64
-or amd64); _cpuset_isset() crashes with SEGV.  And according to
-what I hear, the code is bogus; by default threads do not have
-affinity to any specific set of CPUs in NetBSD, and trying to
-replicate this with a simple C program always results in 0.
-So rip the newish code out with prejudice, and instead fallback to
-the sysctl() method of getting "number of CPUs" which was used
-before (and is still present, following the ripped-out code).
-
---- library/std/src/sys/unix/thread.rs.orig	2020-10-07 07:53:22.000000000 +0000
-+++ library/std/src/sys/unix/thread.rs
-@@ -352,29 +352,6 @@ pub fn available_parallelism() -> io::Re
-                 }
-             }
- 
--            #[cfg(target_os = "netbsd")]
--            {
--                unsafe {
--                    let set = libc::_cpuset_create();
--                    if !set.is_null() {
--                        let mut count: usize = 0;
--                        if libc::pthread_getaffinity_np(libc::pthread_self(), libc::_cpuset_size(set), set) == 0 {
--                            for i in 0..u64::MAX {
--                                match libc::_cpuset_isset(i, set) {
--                                    -1 => break,
--                                    0 => continue,
--                                    _ => count = count + 1,
--                                }
--                            }
--                        }
--                        libc::_cpuset_destroy(set);
--                        if let Some(count) = NonZeroUsize::new(count) {
--                            return Ok(count);
--                        }
--                    }
--                }
--            }
--
-             let mut cpus: libc::c_uint = 0;
-             let mut cpus_size = crate::mem::size_of_val(&cpus);
- 
-@@ -812,7 +789,7 @@ pub mod guard {
-         let page_size = os::page_size();
-         PAGE_SIZE.store(page_size, Ordering::Relaxed);
- 
--        if cfg!(all(target_os = "linux", not(target_env = "musl"))) {
-+        if cfg!(any(target_os = "solaris", all(target_os = "linux", not(target_env = "musl")))) {
-             // Linux doesn't allocate the whole stack right away, and
-             // the kernel has its own stack-guard mechanism to fault
-             // when growing too close to an existing mapping. If we map
diff --git a/rust175/patches/patch-library_std_src_sys_unix_thread__parking_netbsd.rs b/rust175/patches/patch-library_std_src_sys_unix_thread__parking_netbsd.rs
deleted file mode 100644
index 57dcc19ec1..0000000000
--- a/rust175/patches/patch-library_std_src_sys_unix_thread__parking_netbsd.rs
+++ /dev/null
@@ -1,34 +0,0 @@
-$NetBSD$
-
-Try to cast to make this build, to avoid
-
-error[E0277]: the trait bound `i32: core::convert::From<u32>` is not satisfied
-  --> library/std/src/sys/unix/thread_parking/netbsd.rs:37:37
-   |
-37 |         tv_nsec: dur.subsec_nanos().into(),
-   |                                     ^^^^ the trait `core::convert::From<u32>` is not implemented for `i32`
-   |
-   = help: the following other types implement trait `core::convert::From<T>`:
-             <i32 as core::convert::From<NonZeroI32>>
-             <i32 as core::convert::From<bool>>
-             <i32 as core::convert::From<i16>>
-             <i32 as core::convert::From<i8>>
-             <i32 as core::convert::From<u16>>
-             <i32 as core::convert::From<u8>>
-   = note: required for `u32` to implement `core::convert::Into<i32>`
-
-For more information about this error, try `rustc --explain E0277`.
-
-This to un-break the 32-bit ports ... again.
-
---- library/std/src/sys/unix/thread_parking/netbsd.rs.orig	2023-03-06 15:58:58.000000000 +0000
-+++ library/std/src/sys/unix/thread_parking/netbsd.rs
-@@ -34,7 +34,7 @@ pub fn park_timeout(dur: Duration, hint:
-         // Saturate so that the operation will definitely time out
-         // (even if it is after the heat death of the universe).
-         tv_sec: dur.as_secs().try_into().ok().unwrap_or(time_t::MAX),
--        tv_nsec: dur.subsec_nanos().into(),
-+        tv_nsec: (dur.subsec_nanos() as libc::c_long).into(),
-     };
- 
-     // Timeout needs to be mutable since it is modified on NetBSD 9.0 and
diff --git a/rust175/patches/patch-src_bootstrap_bootstrap.py b/rust175/patches/patch-src_bootstrap_bootstrap.py
deleted file mode 100644
index 20489b8ae1..0000000000
--- a/rust175/patches/patch-src_bootstrap_bootstrap.py
+++ /dev/null
@@ -1,47 +0,0 @@
-$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.
-Handle earmv[67]hf for NetBSD.
-Also use @PREFIX@ and not $ORIGIN in rpath.
-
---- src/bootstrap/bootstrap.py.orig	2023-07-12 03:32:40.000000000 +0000
-+++ src/bootstrap/bootstrap.py
-@@ -271,6 +271,11 @@ def default_build_triple(verbose):
-         'GNU': 'unknown-hurd',
-     }
- 
-+    # For NetBSD, use `uname -p`, as there it is reliable & sensible
-+    if kernel == 'NetBSD':
-+        cputype = subprocess.check_output(
-+            ['uname', '-p']).strip().decode(default_encoding)
-+
-     # Consider the direct transformation first and then the special cases
-     if kernel in kerneltype_mapper:
-         kernel = kerneltype_mapper[kernel]
-@@ -374,10 +379,16 @@ def default_build_triple(verbose):
-             kernel = 'linux-androideabi'
-         else:
-             kernel += 'eabihf'
--    elif cputype in {'armv7l', 'armv8l'}:
-+    elif cputype in {'armv6hf', 'earmv6hf'}:
-+        cputype = 'armv6'
-+        if kernel == 'unknown-netbsd':
-+            kernel += '-eabihf'
-+    elif cputype in {'armv7l', 'earmv7hf', 'armv8l'}:
-         cputype = 'armv7'
-         if kernel == 'linux-android':
-             kernel = 'linux-androideabi'
-+        elif kernel == 'unknown-netbsd':
-+            kernel += '-eabihf'
-         else:
-             kernel += 'eabihf'
-     elif cputype == 'mips':
-@@ -735,7 +746,7 @@ class RustBuild(object):
-         rpath_entries = [
-             # Relative default, all binary and dynamic libraries we ship
-             # appear to have this (even when `../lib` is redundant).
--            "$ORIGIN/../lib",
-+            "@PREFIX@/lib",
-             os.path.join(os.path.realpath(nix_deps_dir), "lib")
-         ]
-         patchelf_args = ["--set-rpath", ":".join(rpath_entries)]
diff --git a/rust175/patches/patch-src_bootstrap_src_core_build__steps_compile.rs b/rust175/patches/patch-src_bootstrap_src_core_build__steps_compile.rs
deleted file mode 100644
index a14e2a2bd8..0000000000
--- a/rust175/patches/patch-src_bootstrap_src_core_build__steps_compile.rs
+++ /dev/null
@@ -1,15 +0,0 @@
-$NetBSD$
-
-On Darwin, do not use @rpath for internal libraries.
-
---- src/bootstrap/src/core/build_steps/compile.rs.orig	2024-01-06 20:42:20.028206400 +0000
-+++ src/bootstrap/src/core/build_steps/compile.rs
-@@ -626,7 +626,7 @@ fn copy_sanitizers(
-             || target == "x86_64-apple-ios"
-         {
-             // 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,
-             // so we will sign it again.
-             apple_darwin_sign_file(&dst);
diff --git a/rust175/patches/patch-src_bootstrap_src_core_build__steps_llvm.rs b/rust175/patches/patch-src_bootstrap_src_core_build__steps_llvm.rs
deleted file mode 100644
index 094035d46f..0000000000
--- a/rust175/patches/patch-src_bootstrap_src_core_build__steps_llvm.rs
+++ /dev/null
@@ -1,20 +0,0 @@
-$NetBSD$
-
-Force use of -latomic on mips* on NetBSD.
-
---- src/bootstrap/src/core/build_steps/llvm.rs.orig	2024-01-06 20:59:17.436053488 +0000
-+++ src/bootstrap/src/core/build_steps/llvm.rs
-@@ -402,6 +402,13 @@ impl Step for Llvm {
-             ldflags.shared.push(" -latomic");
-         }
- 
-+        if target.starts_with("mips") && target.contains("netbsd")
-+        {
-+            // try to force this here, should possibly go elsewhere...
-+            ldflags.exe.push(" -latomic");
-+            ldflags.shared.push(" -latomic");
-+        }
-+
-         if target.contains("msvc") {
-             cfg.define("LLVM_USE_CRT_DEBUG", "MT");
-             cfg.define("LLVM_USE_CRT_RELEASE", "MT");
diff --git a/rust175/patches/patch-src_bootstrap_src_core_builder.rs b/rust175/patches/patch-src_bootstrap_src_core_builder.rs
deleted file mode 100644
index a62092418f..0000000000
--- a/rust175/patches/patch-src_bootstrap_src_core_builder.rs
+++ /dev/null
@@ -1,15 +0,0 @@
-$NetBSD$
-
-Use @PREFIX@, not $ORIGIN in rpath.
-
---- src/bootstrap/src/core/builder.rs.orig	2024-01-13 20:06:50.748741545 +0000
-+++ src/bootstrap/src/core/builder.rs
-@@ -1678,7 +1678,7 @@ impl<'a> Builder<'a> {
-                 && !target.contains("xous")
-             {
-                 rustflags.arg("-Clink-args=-Wl,-z,origin");
--                Some(format!("-Wl,-rpath,$ORIGIN/../{libdir}"))
-+                Some(format!("-Wl,-rpath,@PREFIX@/{libdir}"))
-             } else {
-                 None
-             };
diff --git a/rust175/patches/patch-src_bootstrap_src_lib.rs b/rust175/patches/patch-src_bootstrap_src_lib.rs
deleted file mode 100644
index 6eae1d06df..0000000000
--- a/rust175/patches/patch-src_bootstrap_src_lib.rs
+++ /dev/null
@@ -1,23 +0,0 @@
-$NetBSD$
-
-Don't filter out optimization flags.
-FreeBSD has a particular C++ runtime library name
-
---- src/bootstrap/src/lib.rs.orig	2024-01-06 20:52:50.892941220 +0000
-+++ src/bootstrap/src/lib.rs
-@@ -1195,13 +1195,13 @@ impl Build {
-             .args()
-             .iter()
-             .map(|s| s.to_string_lossy().into_owned())
--            .filter(|s| !s.starts_with("-O") && !s.starts_with("/O"))
-             .collect::<Vec<String>>();
- 
-         // If we're compiling C++ on macOS then we add a flag indicating that
-         // we want libc++ (more filled out than libstdc++), ensuring that
-         // LLVM/etc are all properly compiled.
--        if matches!(c, CLang::Cxx) && target.contains("apple-darwin") {
-+        if matches!(c, CLang::Cxx) && 
-+            (target.contains("apple-darwin") || target.contains("freebsd")) {
-             base.push("-stdlib=libc++".into());
-         }
- 
diff --git a/rust175/patches/patch-src_llvm-project_llvm_CMakeLists.txt b/rust175/patches/patch-src_llvm-project_llvm_CMakeLists.txt
deleted file mode 100644
index 2477a555c8..0000000000
--- a/rust175/patches/patch-src_llvm-project_llvm_CMakeLists.txt
+++ /dev/null
@@ -1,18 +0,0 @@
-$NetBSD: patch-src_llvm-project_llvm_CMakeLists.txt,v 1.1 2019/04/14 12:42:03 he Exp $
-
-Don't implement sys/regset.h workaround, fix source instead.
-
---- src/llvm-project/llvm/CMakeLists.txt.orig	2018-03-10 02:51:13.000000000 +0000
-+++ src/llvm-project/llvm/CMakeLists.txt
-@@ -939,11 +939,6 @@ if(LLVM_TARGET_IS_CROSSCOMPILE_HOST)
- # (this is a variable that CrossCompile sets on recursive invocations)
- endif()
- 
--if( ${CMAKE_SYSTEM_NAME} MATCHES SunOS )
--   # special hack for Solaris to handle crazy system sys/regset.h
--   include_directories("${LLVM_MAIN_INCLUDE_DIR}/llvm/Support/Solaris")
--endif( ${CMAKE_SYSTEM_NAME} MATCHES SunOS )
--
- # Make sure we don't get -rdynamic in every binary. For those that need it,
- # use export_executable_symbols(target).
- set(CMAKE_SHARED_LIBRARY_LINK_CXX_FLAGS "")
diff --git a/rust175/patches/patch-src_llvm-project_llvm_cmake_modules_AddLLVM.cmake b/rust175/patches/patch-src_llvm-project_llvm_cmake_modules_AddLLVM.cmake
deleted file mode 100644
index b213c40364..0000000000
--- a/rust175/patches/patch-src_llvm-project_llvm_cmake_modules_AddLLVM.cmake
+++ /dev/null
@@ -1,49 +0,0 @@
-$NetBSD: patch-src_llvm-project_llvm_cmake_modules_AddLLVM.cmake,v 1.3 2020/08/06 11:42:56 jperkin Exp $
-
-On Darwin, use correct install-name for shared libraries.
-
-Undo some of the RPATH magic so that cross-building
-works inside pkgsrc again (indirectly eliminates $ORIGIN rpath
-handling / editing, $ORIGIN handling is partially undone by cwrappers
-in pkgsrc).
-
---- src/llvm-project/llvm/cmake/modules/AddLLVM.cmake.orig	2023-07-12 03:33:01.000000000 +0000
-+++ src/llvm-project/llvm/cmake/modules/AddLLVM.cmake
-@@ -2311,7 +2311,7 @@ function(llvm_setup_rpath name)
-   endif()
- 
-   if (APPLE)
--    set(_install_name_dir INSTALL_NAME_DIR "@rpath")
-+    set(_install_name_dir INSTALL_NAME_DIR "${CMAKE_INSTALL_PREFIX}/lib")
-     set(_install_rpath "@loader_path/../lib${LLVM_LIBDIR_SUFFIX}" ${extra_libdir})
-   elseif(${CMAKE_SYSTEM_NAME} MATCHES "AIX" AND BUILD_SHARED_LIBS)
-     # $ORIGIN is not interpreted at link time by aix ld.
-@@ -2320,8 +2320,7 @@ function(llvm_setup_rpath name)
-     # FIXME: update this when there is better solution.
-     set(_install_rpath "${LLVM_LIBRARY_OUTPUT_INTDIR}" "${CMAKE_INSTALL_PREFIX}/lib${LLVM_LIBDIR_SUFFIX}" ${extra_libdir})
-   elseif(UNIX)
--    set(_build_rpath "\$ORIGIN/../lib${LLVM_LIBDIR_SUFFIX}" ${extra_libdir})
--    set(_install_rpath "\$ORIGIN/../lib${LLVM_LIBDIR_SUFFIX}")
-+    set(_install_rpath "\$ORIGIN/../lib${LLVM_LIBDIR_SUFFIX}" ${extra_libdir})
-     if(${CMAKE_SYSTEM_NAME} MATCHES "(FreeBSD|DragonFly)")
-       set_property(TARGET ${name} APPEND_STRING PROPERTY
-                    LINK_FLAGS " -Wl,-z,origin ")
-@@ -2335,16 +2334,9 @@ function(llvm_setup_rpath name)
-     return()
-   endif()
- 
--  # Enable BUILD_WITH_INSTALL_RPATH unless CMAKE_BUILD_RPATH is set and not
--  # building for macOS or AIX, as those platforms seemingly require it.
--  # On AIX, the tool chain doesn't support modifying rpaths/libpaths for XCOFF
--  # on install at the moment, so BUILD_WITH_INSTALL_RPATH is required.
-+  # Enable BUILD_WITH_INSTALL_RPATH unless CMAKE_BUILD_RPATH is set.
-   if("${CMAKE_BUILD_RPATH}" STREQUAL "")
--    if(${CMAKE_SYSTEM_NAME} MATCHES "Darwin|AIX")
--      set_property(TARGET ${name} PROPERTY BUILD_WITH_INSTALL_RPATH ON)
--    else()
--      set_property(TARGET ${name} APPEND PROPERTY BUILD_RPATH "${_build_rpath}")
--    endif()
-+    set_property(TARGET ${name} PROPERTY BUILD_WITH_INSTALL_RPATH ON)
-   endif()
- 
-   set_target_properties(${name} PROPERTIES
diff --git a/rust175/patches/patch-src_llvm-project_llvm_include_llvm-c_DataTypes.h b/rust175/patches/patch-src_llvm-project_llvm_include_llvm-c_DataTypes.h
deleted file mode 100644
index 7250a1f149..0000000000
--- a/rust175/patches/patch-src_llvm-project_llvm_include_llvm-c_DataTypes.h
+++ /dev/null
@@ -1,34 +0,0 @@
-$NetBSD: patch-src_llvm-project_llvm_include_llvm-c_DataTypes.h,v 1.1 2019/04/14 12:42:03 he Exp $
-
-Don't implement sys/regset.h workaround, fix source instead.
-
---- src/llvm-project/llvm/include/llvm-c/DataTypes.h.orig	2021-04-17 01:50:37.000000000 +0000
-+++ src/llvm-project/llvm/include/llvm-c/DataTypes.h
-@@ -77,4 +77,27 @@ typedef signed int ssize_t;
- # define UINT64_MAX 0xffffffffffffffffULL
- #endif
- 
-+#if defined(__sun)
-+#include <sys/regset.h>
-+#undef CS
-+#undef DS
-+#undef ES
-+#undef FS
-+#undef GS
-+#undef SS
-+#undef EAX
-+#undef ECX
-+#undef EDX
-+#undef EBX
-+#undef ESP
-+#undef EBP
-+#undef ESI
-+#undef EDI
-+#undef EIP
-+#undef UESP
-+#undef EFL
-+#undef ERR
-+#undef TRAPNO
-+#endif
-+
- #endif /* LLVM_C_DATATYPES_H */
diff --git a/rust175/patches/patch-src_llvm-project_llvm_include_llvm_Analysis_ConstantFolding.h b/rust175/patches/patch-src_llvm-project_llvm_include_llvm_Analysis_ConstantFolding.h
deleted file mode 100644
index 37d491478d..0000000000
--- a/rust175/patches/patch-src_llvm-project_llvm_include_llvm_Analysis_ConstantFolding.h
+++ /dev/null
@@ -1,17 +0,0 @@
-$NetBSD: patch-src_llvm-project_llvm_include_llvm_Analysis_ConstantFolding.h,v 1.1 2019/04/14 12:42:03 he Exp $
-
-Fix SunOS CS conflict not handled by include/llvm-c/DataTypes.h
-
---- src/llvm-project/llvm/include/llvm/Analysis/ConstantFolding.h.orig	2018-08-01 16:32:37.000000000 +0000
-+++ src/llvm-project/llvm/include/llvm/Analysis/ConstantFolding.h
-@@ -19,6 +19,10 @@
- #ifndef LLVM_ANALYSIS_CONSTANTFOLDING_H
- #define LLVM_ANALYSIS_CONSTANTFOLDING_H
- 
-+#ifdef __sun
-+#undef CS
-+#endif
-+
- #include <stdint.h>
- 
- namespace llvm {
diff --git a/rust175/patches/patch-src_llvm-project_llvm_lib_Support_BLAKE3_blake3__impl.h b/rust175/patches/patch-src_llvm-project_llvm_lib_Support_BLAKE3_blake3__impl.h
deleted file mode 100644
index dbd66f923d..0000000000
--- a/rust175/patches/patch-src_llvm-project_llvm_lib_Support_BLAKE3_blake3__impl.h
+++ /dev/null
@@ -1,20 +0,0 @@
-$NetBSD$
-
-Do not try to use neon on big-endian aarch64, as we have
-an #error waiting there.
-
---- src/llvm-project/llvm/lib/Support/BLAKE3/blake3_impl.h.orig	2022-09-02 08:17:54.000000000 +0000
-+++ src/llvm-project/llvm/lib/Support/BLAKE3/blake3_impl.h
-@@ -64,7 +64,11 @@ enum blake3_flags {
- #if !defined(BLAKE3_USE_NEON) 
-   // If BLAKE3_USE_NEON not manually set, autodetect based on AArch64ness
-   #if defined(IS_AARCH64)
--    #define BLAKE3_USE_NEON 1
-+    #if defined(__ARM_BIG_ENDIAN)
-+      #define BLAKE3_USE_NEON 0
-+    #else
-+      #define BLAKE3_USE_NEON 1
-+    #endif
-   #else
-     #define BLAKE3_USE_NEON 0
-   #endif
diff --git a/rust175/patches/patch-src_llvm-project_llvm_utils_FileCheck_FileCheck.cpp b/rust175/patches/patch-src_llvm-project_llvm_utils_FileCheck_FileCheck.cpp
deleted file mode 100644
index 02c93ff2ec..0000000000
--- a/rust175/patches/patch-src_llvm-project_llvm_utils_FileCheck_FileCheck.cpp
+++ /dev/null
@@ -1,15 +0,0 @@
-$NetBSD: patch-src_llvm-project_llvm_utils_FileCheck_FileCheck.cpp,v 1.2 2019/10/02 12:51:43 he Exp $
-
-Avoid ambiguous function call.
-
---- src/llvm-project/llvm/utils/FileCheck/FileCheck.cpp.orig	2019-02-12 15:22:48.000000000 +0000
-+++ src/llvm-project/llvm/utils/FileCheck/FileCheck.cpp
-@@ -592,7 +592,7 @@ static void DumpAnnotatedInput(raw_ostre
-   unsigned LineCount = InputFileText.count('\n');
-   if (InputFileEnd[-1] != '\n')
-     ++LineCount;
--  unsigned LineNoWidth = std::log10(LineCount) + 1;
-+  unsigned LineNoWidth = std::log10((float)LineCount) + 1;
-   // +3 below adds spaces (1) to the left of the (right-aligned) line numbers
-   // on input lines and (2) to the right of the (left-aligned) labels on
-   // annotation lines so that input lines and annotation lines are more
diff --git a/rust175/patches/patch-src_tools_cargo_src_cargo_core_profiles.rs b/rust175/patches/patch-src_tools_cargo_src_cargo_core_profiles.rs
deleted file mode 100644
index ac9ad7239c..0000000000
--- a/rust175/patches/patch-src_tools_cargo_src_cargo_core_profiles.rs
+++ /dev/null
@@ -1,17 +0,0 @@
-$NetBSD: patch-src_tools_cargo_src_cargo_core_profiles.rs,v 1.3 2019/03/07 20:19:11 jperkin Exp $
-
-Turn off incremental builds for sparc64, ref.
-https://sources.debian.org/patches/cargo/0.29.0-1/2007_sparc64_disable_incremental_build.patch/
-
---- src/tools/cargo/src/cargo/core/profiles.rs.orig	2023-07-12 03:33:05.000000000 +0000
-+++ src/tools/cargo/src/cargo/core/profiles.rs
-@@ -681,6 +681,9 @@ impl Profile {
-             debuginfo: DebugInfo::Resolved(TomlDebugInfo::Full),
-             debug_assertions: true,
-             overflow_checks: true,
-+            #[cfg(target_arch = "sparc64")]
-+            incremental: false,
-+            #[cfg(not(target_arch = "sparc64"))]
-             incremental: true,
-             ..Profile::default()
-         }
diff --git a/rust175/patches/patch-src_tools_cargo_tests_testsuite_build.rs b/rust175/patches/patch-src_tools_cargo_tests_testsuite_build.rs
deleted file mode 100644
index 7ffba0f965..0000000000
--- a/rust175/patches/patch-src_tools_cargo_tests_testsuite_build.rs
+++ /dev/null
@@ -1,31 +0,0 @@
-$NetBSD: patch-src_tools_cargo_tests_testsuite_build.rs,v 1.5 2019/08/29 14:09:57 he Exp $
-
-Don't attempt incremental operations on sparc64, ref.
-https://sources.debian.org/patches/cargo/0.29.0-1/2007_sparc64_disable_incremental_build.patch/
-
---- src/tools/cargo/tests/testsuite/build.rs.orig	2019-08-13 06:27:40.000000000 +0000
-+++ src/tools/cargo/tests/testsuite/build.rs
-@@ -47,6 +47,7 @@ fn cargo_fail_with_no_stderr() {
- 
- /// Checks that the `CARGO_INCREMENTAL` environment variable results in
- /// `rustc` getting `-C incremental` passed to it.
-+#[cfg(not(target_arch = "sparc64"))]
- #[cargo_test]
- fn cargo_compile_incremental() {
-     let p = project()
-@@ -69,6 +70,7 @@ fn cargo_compile_incremental() {
-         .run();
- }
- 
-+#[cfg(not(target_arch = "sparc64"))]
- #[cargo_test]
- fn incremental_profile() {
-     let p = project()
-@@ -111,6 +113,7 @@ fn incremental_profile() {
-         .run();
- }
- 
-+#[cfg(not(target_arch = "sparc64"))]
- #[cargo_test]
- fn incremental_config() {
-     let p = project()
diff --git a/rust175/patches/patch-src_tools_rust-installer_install-template.sh b/rust175/patches/patch-src_tools_rust-installer_install-template.sh
deleted file mode 100644
index d4036445de..0000000000
--- a/rust175/patches/patch-src_tools_rust-installer_install-template.sh
+++ /dev/null
@@ -1,179 +0,0 @@
-$NetBSD: patch-src_tools_rust-installer_install-template.sh,v 1.5 2021/06/09 13:42:30 adam Exp $
-
-No logging to 'install.log'.
-Do not create 'uninstall.sh'.
-Do not make file backups (filename.old), so these will not end up in the final package.
-
-Rewrite to not use a whole lot of subprocesses just for doing
-pattern matching and substitution in the install phase using "grep"
-and "sed" when shell builtin "case" and "omit shortest match" ops
-should do just fine.
-
---- src/tools/rust-installer/install-template.sh.orig	2023-12-21 16:55:28.000000000 +0000
-+++ src/tools/rust-installer/install-template.sh
-@@ -6,20 +6,12 @@ set -u
- init_logging() {
-     local _abs_libdir="$1"
-     local _logfile="$_abs_libdir/$TEMPLATE_REL_MANIFEST_DIR/install.log"
--    rm -f "$_logfile"
--    need_ok "failed to remove old installation log"
--    touch "$_logfile"
--    need_ok "failed to create installation log"
-     LOGFILE="$_logfile"
- }
- 
- log_line() {
-     local _line="$1"
- 
--    if [ -n "${LOGFILE-}" -a -e "${LOGFILE-}" ]; then
--    echo "$_line" >> "$LOGFILE"
--    # Ignore errors, which may happen e.g. after the manifest dir is deleted
--    fi
- }
- 
- msg() {
-@@ -433,8 +425,8 @@ uninstall_components() {
-             local _directive
-             while read _directive; do
- 
--            local _command=`echo $_directive | cut -f1 -d:`
--            local _file=`echo $_directive | cut -f2 -d:`
-+            local _command=${_directive%%:*}
-+            local _file=${_directive#*:}
- 
-             # Sanity checks
-             if [ ! -n "$_command" ]; then critical_err "malformed installation directive"; fi
-@@ -541,8 +533,8 @@ install_components() {
-     local _directive
-     while read _directive; do
- 
--        local _command=`echo $_directive | cut -f1 -d:`
--        local _file=`echo $_directive | cut -f2 -d:`
-+        local _command=${_directive%%:*}
-+        local _file=${_directive#*:}
- 
-         # Sanity checks
-         if [ ! -n "$_command" ]; then critical_err "malformed installation directive"; fi
-@@ -551,36 +543,24 @@ install_components() {
-         # Decide the destination of the file
-         local _file_install_path="$_dest_prefix/$_file"
- 
--        if echo "$_file" | grep "^etc/" > /dev/null
--        then
--        local _f="$(echo "$_file" | sed 's/^etc\///')"
--        _file_install_path="$CFG_SYSCONFDIR/$_f"
--        fi
--
--        if echo "$_file" | grep "^bin/" > /dev/null
--        then
--        local _f="$(echo "$_file" | sed 's/^bin\///')"
--        _file_install_path="$CFG_BINDIR/$_f"
--        fi
--
--        if echo "$_file" | grep "^lib/" > /dev/null
--        then
--        local _f="$(echo "$_file" | sed 's/^lib\///')"
--        _file_install_path="$CFG_LIBDIR/$_f"
--        fi
--
--        if echo "$_file" | grep "^share" > /dev/null
--        then
--        local _f="$(echo "$_file" | sed 's/^share\///')"
--        _file_install_path="$CFG_DATADIR/$_f"
--        fi
--
--        if echo "$_file" | grep "^share/man/" > /dev/null
--        then
--        local _f="$(echo "$_file" | sed 's/^share\/man\///')"
--        _file_install_path="$CFG_MANDIR/$_f"
--        fi
--
-+        case "$_file" in
-+            etc/*)
-+                local _f=${_file#"etc/"}
-+                _file_install_path="$CFG_DESTDIR_PREFIX/share/doc/cargo/$_f"
-+                ;;
-+            bin/*)
-+                local _f=${_file#"bin/"}
-+                _file_install_path="$CFG_BINDIR/$_f"
-+                ;;
-+            lib/*)
-+                local _f=${_file#"lib/"}
-+                _file_install_path="$CFG_LIBDIR/$_f"
-+                ;;
-+            share/man/*)
-+                local _f=${_file#"share/man/"}
-+                _file_install_path="$CFG_MANDIR/$_f"
-+                ;;
-+            share/doc/*)
-             # HACK: Try to support overriding --docdir.  Paths with the form
-             # "share/doc/$product/" can be redirected to a single --docdir
-             # path. If the following detects that --docdir has been specified
-@@ -591,14 +571,17 @@ install_components() {
-             # contents of those directories are _not_ disjoint. Since this feature
-             # is almost entirely to support 'make install' anyway I don't expect
-             # this problem to be a big deal in practice.
--            if [ "$CFG_DOCDIR" != "<default>" ]
--            then
--            if echo "$_file" | grep "^share/doc/" > /dev/null
--            then
--            local _f="$(echo "$_file" | sed 's/^share\/doc\/[^/]*\///')"
--            _file_install_path="$CFG_DOCDIR/$_f"
--            fi
--            fi
-+                if [ "$CFG_DOCDIR" != "<default>" ]; then
-+                    local _f=${_file#"share/doc/"*/}
-+                    _file_install_path="$CFG_DOCDIR/$_f"
-+                fi
-+                ;;
-+            share/*)
-+                local _f=${_file#"share/"}
-+                _file_install_path="$CFG_DATADIR/$_f"
-+                ;;
-+        esac
-+
- 
-         # Make sure there's a directory for it
-         make_dir_recursive "$(dirname "$_file_install_path")"
-@@ -615,16 +598,16 @@ install_components() {
- 
-             verbose_msg "copying file $_file_install_path"
- 
--            maybe_backup_path "$_file_install_path"
--
--            if echo "$_file" | grep "^bin/" > /dev/null || test -x "$_src_dir/$_component/$_file"
--            then
--            run cp "$_src_dir/$_component/$_file" "$_file_install_path"
--            run chmod 755 "$_file_install_path"
--            else
-+            local mode=644
-+            if test -x "$_src_dir/$_component/$_file"; then
-+                mode=755
-+            fi
-+            case "$_file" in
-+                bin/*) mode=755
-+                       ;;
-+            esac
-             run cp "$_src_dir/$_component/$_file" "$_file_install_path"
--            run chmod 644 "$_file_install_path"
--            fi
-+            run chmod $mode "$_file_install_path"
-             critical_need_ok "file creation failed"
- 
-             # Update the manifest
-@@ -637,7 +620,6 @@ install_components() {
- 
-             verbose_msg "copying directory $_file_install_path"
- 
--            maybe_backup_path "$_file_install_path"
- 
-             run cp -R "$_src_dir/$_component/$_file" "$_file_install_path"
-             critical_need_ok "failed to copy directory"
-@@ -986,7 +968,6 @@ write_to_file "$TEMPLATE_RUST_INSTALLER_
- critical_need_ok "failed to write installer version"
- 
- # Install the uninstaller
--install_uninstaller "$src_dir" "$src_basename" "$abs_libdir"
- 
- # Install each component
- install_components "$src_dir" "$abs_libdir" "$dest_prefix" "$components"
diff --git a/rust175/patches/patch-vendor_backtrace_src_symbolize_gimli.rs b/rust175/patches/patch-vendor_backtrace_src_symbolize_gimli.rs
deleted file mode 100644
index 367e90786a..0000000000
--- a/rust175/patches/patch-vendor_backtrace_src_symbolize_gimli.rs
+++ /dev/null
@@ -1,14 +0,0 @@
-$NetBSD$
-
-Do mmap on NetBSD as well.
-
---- ./vendor/backtrace/src/symbolize/gimli.rs.orig	2022-04-04 11:10:55.000000000 +0000
-+++ ./vendor/backtrace/src/symbolize/gimli.rs
-@@ -38,6 +38,7 @@ cfg_if::cfg_if! {
-         target_os = "ios",
-         target_os = "linux",
-         target_os = "macos",
-+        target_os = "netbsd",
-         target_os = "openbsd",
-         target_os = "solaris",
-         target_os = "illumos",
diff --git a/rust175/patches/patch-vendor_backtrace_src_symbolize_gimli_elf.rs b/rust175/patches/patch-vendor_backtrace_src_symbolize_gimli_elf.rs
deleted file mode 100644
index ad3afcd8d1..0000000000
--- a/rust175/patches/patch-vendor_backtrace_src_symbolize_gimli_elf.rs
+++ /dev/null
@@ -1,24 +0,0 @@
-$NetBSD$
-
-Make NetBSD also find its debug libraries, if present.
-
---- vendor/backtrace/src/symbolize/gimli/elf.rs.orig	2022-04-04 11:10:55.000000000 +0000
-+++ vendor/backtrace/src/symbolize/gimli/elf.rs
-@@ -276,11 +276,16 @@ fn decompress_zlib(input: &[u8], output:
-     }
- }
- 
-+#[cfg(target_os = "netbsd")]
-+const DEBUG_PATH: &[u8] = b"/usr/libdata/debug";
-+#[cfg(target_os != "netbsd")]
- const DEBUG_PATH: &[u8] = b"/usr/lib/debug";
- 
- fn debug_path_exists() -> bool {
-     cfg_if::cfg_if! {
--        if #[cfg(any(target_os = "freebsd", target_os = "linux"))] {
-+        if #[cfg(any(target_os = "freebsd", 
-+                     target_os = "netbsd",
-+                     target_os = "linux"))] {
-             use core::sync::atomic::{AtomicU8, Ordering};
-             static DEBUG_PATH_EXISTS: AtomicU8 = AtomicU8::new(0);
- 
diff --git a/rust175/patches/patch-vendor_cc-1.0.73_src_lib.rs b/rust175/patches/patch-vendor_cc-1.0.73_src_lib.rs
deleted file mode 100644
index 864beacf10..0000000000
--- a/rust175/patches/patch-vendor_cc-1.0.73_src_lib.rs
+++ /dev/null
@@ -1,16 +0,0 @@
-$NetBSD$
-
-Use correct ABI on NetBSD/riscv64.
-
---- vendor/cc-1.0.73/src/lib.rs.orig	2023-05-31 21:44:47.000000000 +0000
-+++ vendor/cc-1.0.73/src/lib.rs
-@@ -1830,6 +1830,9 @@ impl Build {
-                         } else if target.contains("freebsd") && arch.starts_with("64") {
-                             cmd.args.push(("-march=rv64gc").into());
-                             cmd.args.push("-mabi=lp64d".into());
-+                        } else if target.contains("netbsd") && arch.starts_with("64") {
-+                            cmd.args.push(("-march=rv64gc").into());
-+                            cmd.args.push("-mabi=lp64d".into());
-                         } else if target.contains("openbsd") && arch.starts_with("64") {
-                             cmd.args.push(("-march=rv64gc").into());
-                             cmd.args.push("-mabi=lp64d".into());
diff --git a/rust175/patches/patch-vendor_cc_src_lib.rs b/rust175/patches/patch-vendor_cc_src_lib.rs
deleted file mode 100644
index a4baec163b..0000000000
--- a/rust175/patches/patch-vendor_cc_src_lib.rs
+++ /dev/null
@@ -1,40 +0,0 @@
-$NetBSD$
-
-Add aarch64_eb, mipsel and riscv64 for NetBSD.
-
---- vendor/cc/src/lib.rs.orig	2023-10-03 04:12:09.000000000 +0000
-+++ vendor/cc/src/lib.rs
-@@ -1946,6 +1946,9 @@ impl Build {
-                         } else if target.contains("freebsd") && arch.starts_with("64") {
-                             cmd.args.push(("-march=rv64gc").into());
-                             cmd.args.push("-mabi=lp64d".into());
-+                        } else if target.contains("netbsd") && arch.starts_with("64") {
-+                            cmd.args.push(("-march=rv64gc").into());
-+                            cmd.args.push("-mabi=lp64d".into());
-                         } else if target.contains("openbsd") && arch.starts_with("64") {
-                             cmd.args.push(("-march=rv64gc").into());
-                             cmd.args.push("-mabi=lp64d".into());
-@@ -2887,6 +2890,7 @@ impl Build {
-             "aarch64-unknown-linux-gnu" => Some("aarch64-linux-gnu"),
-             "aarch64-unknown-linux-musl" => Some("aarch64-linux-musl"),
-             "aarch64-unknown-netbsd" => Some("aarch64--netbsd"),
-+            "aarch64_be-unknown-netbsd" => Some("aarch64_be--netbsd"),
-             "arm-unknown-linux-gnueabi" => Some("arm-linux-gnueabi"),
-             "armv4t-unknown-linux-gnueabi" => Some("arm-linux-gnueabi"),
-             "armv5te-unknown-linux-gnueabi" => Some("arm-linux-gnueabi"),
-@@ -2921,6 +2925,7 @@ impl Build {
-             "mips-unknown-linux-musl" => Some("mips-linux-musl"),
-             "mipsel-unknown-linux-gnu" => Some("mipsel-linux-gnu"),
-             "mipsel-unknown-linux-musl" => Some("mipsel-linux-musl"),
-+            "mipsel-unknown-netbsd" => Some("mipsel--netbsd"),
-             "mips64-unknown-linux-gnuabi64" => Some("mips64-linux-gnuabi64"),
-             "mips64el-unknown-linux-gnuabi64" => Some("mips64el-linux-gnuabi64"),
-             "mipsisa32r6-unknown-linux-gnu" => Some("mipsisa32r6-linux-gnu"),
-@@ -2963,6 +2968,7 @@ impl Build {
-                 "riscv32-unknown-elf",
-                 "riscv-none-embed",
-             ]),
-+            "riscv64gc-unknown-netbsd" => Some("riscv64--netbsd"),
-             "riscv64gc-unknown-linux-gnu" => Some("riscv64-linux-gnu"),
-             "riscv32gc-unknown-linux-gnu" => Some("riscv32-linux-gnu"),
-             "riscv64gc-unknown-linux-musl" => Some("riscv64-linux-musl"),
diff --git a/rust175/patches/patch-vendor_crossbeam-epoch_no__atomic.rs b/rust175/patches/patch-vendor_crossbeam-epoch_no__atomic.rs
deleted file mode 100644
index a05b394053..0000000000
--- a/rust175/patches/patch-vendor_crossbeam-epoch_no__atomic.rs
+++ /dev/null
@@ -1,20 +0,0 @@
-$NetBSD$
-
-Add "mipsel-unknown-netbsd" to the list who don't have 
-native 64-bit atomic ops.
-Unify with crossbeam-epoch to get same after-checksum...
-
---- vendor/crossbeam-epoch/no_atomic.rs.orig	2023-07-12 05:06:31.000000000 +0000
-+++ vendor/crossbeam-epoch/no_atomic.rs
-@@ -38,10 +38,10 @@ const NO_ATOMIC_64: &[&str] = &[
-     "mips-unknown-linux-musl",
-     "mips-unknown-linux-uclibc",
-     "mipsel-sony-psp",
--    "mipsel-sony-psx",
-     "mipsel-unknown-linux-gnu",
-     "mipsel-unknown-linux-musl",
-     "mipsel-unknown-linux-uclibc",
-+    "mipsel-unknown-netbsd",
-     "mipsel-unknown-none",
-     "mipsisa32r6-unknown-linux-gnu",
-     "mipsisa32r6el-unknown-linux-gnu",
diff --git a/rust175/patches/patch-vendor_crossbeam-utils-0.8.14-no__atomic.rs b/rust175/patches/patch-vendor_crossbeam-utils-0.8.14-no__atomic.rs
deleted file mode 100644
index a0f384c943..0000000000
--- a/rust175/patches/patch-vendor_crossbeam-utils-0.8.14-no__atomic.rs
+++ /dev/null
@@ -1,14 +0,0 @@
-$NetBSD$
-
-No 64-bit atomics on NetBSD/mipsel.
-
---- vendor/crossbeam-utils-0.8.14/no_atomic.rs.orig	2023-07-12 05:06:31.000000000 +0000
-+++ vendor/crossbeam-utils-0.8.14/no_atomic.rs
-@@ -41,6 +41,7 @@ const NO_ATOMIC_64: &[&str] = &[
-     "mipsel-unknown-linux-gnu",
-     "mipsel-unknown-linux-musl",
-     "mipsel-unknown-linux-uclibc",
-+    "mipsel-unknown-netbsd",
-     "mipsel-unknown-none",
-     "mipsisa32r6-unknown-linux-gnu",
-     "mipsisa32r6el-unknown-linux-gnu",
diff --git a/rust175/patches/patch-vendor_crossbeam-utils_no__atomic.rs b/rust175/patches/patch-vendor_crossbeam-utils_no__atomic.rs
deleted file mode 100644
index 39278590c8..0000000000
--- a/rust175/patches/patch-vendor_crossbeam-utils_no__atomic.rs
+++ /dev/null
@@ -1,19 +0,0 @@
-$NetBSD$
-
-Add mipsel-unknown-netbsd target as not having 64-bit atomics.
-Unify with crossbeam-utils-0.8.12 by removing mipsel-sony-psx.
-
---- vendor/crossbeam-utils/no_atomic.rs.orig	2023-07-12 05:06:31.000000000 +0000
-+++ vendor/crossbeam-utils/no_atomic.rs
-@@ -38,10 +38,10 @@ const NO_ATOMIC_64: &[&str] = &[
-     "mips-unknown-linux-musl",
-     "mips-unknown-linux-uclibc",
-     "mipsel-sony-psp",
--    "mipsel-sony-psx",
-     "mipsel-unknown-linux-gnu",
-     "mipsel-unknown-linux-musl",
-     "mipsel-unknown-linux-uclibc",
-+    "mipsel-unknown-netbsd",
-     "mipsel-unknown-none",
-     "mipsisa32r6-unknown-linux-gnu",
-     "mipsisa32r6el-unknown-linux-gnu",
diff --git a/rust175/patches/patch-vendor_libc-0.2.141_src_unix_bsd_netbsdlike_netbsd_mips.rs b/rust175/patches/patch-vendor_libc-0.2.141_src_unix_bsd_netbsdlike_netbsd_mips.rs
deleted file mode 100644
index 714f43f385..0000000000
--- a/rust175/patches/patch-vendor_libc-0.2.141_src_unix_bsd_netbsdlike_netbsd_mips.rs
+++ /dev/null
@@ -1,29 +0,0 @@
-$NetBSD$
-
-Add file for NetBSD/mips in mips32 variant.
-
---- vendor/libc-0.2.141/src/unix/bsd/netbsdlike/netbsd/mips.rs.orig	2023-04-23 16:08:32.294600810 +0000
-+++ vendor/libc-0.2.141/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/rust175/patches/patch-vendor_libc-0.2.141_src_unix_bsd_netbsdlike_netbsd_riscv64.rs b/rust175/patches/patch-vendor_libc-0.2.141_src_unix_bsd_netbsdlike_netbsd_riscv64.rs
deleted file mode 100644
index 90705866f9..0000000000
--- a/rust175/patches/patch-vendor_libc-0.2.141_src_unix_bsd_netbsdlike_netbsd_riscv64.rs
+++ /dev/null
@@ -1,31 +0,0 @@
-$NetBSD$
-
-Spec for riscv64.
-
---- vendor/libc-0.2.141/src/unix/bsd/netbsdlike/netbsd/riscv64.rs.orig	2023-07-02 18:40:59.815126792 +0000
-+++ vendor/libc-0.2.141/src/unix/bsd/netbsdlike/netbsd/riscv64.rs	2023-07-02 18:38:40.729445691 +0000
-@@ -0,0 +1,24 @@
-+use PT_FIRSTMACH;
-+
-+pub type c_long = i64;
-+pub type c_ulong = u64;
-+pub type c_char = u8;
-+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_long>() - 1;
-+    } else {
-+        #[doc(hidden)]
-+        pub const _ALIGNBYTES: usize = 8 - 1;
-+    }
-+}
-+
-+// pub const _MAX_PAGE_SHIFT: u32 = 12;
-+
-+pub const PT_GETREGS: ::c_int = PT_FIRSTMACH + 0;
-+pub const PT_SETREGS: ::c_int = PT_FIRSTMACH + 1;
-+pub const PT_GETFPREGS: ::c_int = PT_FIRSTMACH + 2;
-+pub const PT_SETFPREGS: ::c_int = PT_FIRSTMACH + 3;
diff --git a/rust175/patches/patch-vendor_libc-0.2.146_src_unix_bsd_netbsdlike_netbsd_mips.rs b/rust175/patches/patch-vendor_libc-0.2.146_src_unix_bsd_netbsdlike_netbsd_mips.rs
deleted file mode 100644
index 1c653365cd..0000000000
--- a/rust175/patches/patch-vendor_libc-0.2.146_src_unix_bsd_netbsdlike_netbsd_mips.rs
+++ /dev/null
@@ -1,29 +0,0 @@
-$NetBSD$
-
-Add support for NetBSD/mipsel (needs mips32).
-
---- vendor/libc-0.2.146/src/unix/bsd/netbsdlike/netbsd/mips.rs.orig	2023-07-14 09:16:55.357761685 +0000
-+++ vendor/libc-0.2.146/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/rust175/patches/patch-vendor_libc-0.2.146_src_unix_bsd_netbsdlike_netbsd_mod.rs b/rust175/patches/patch-vendor_libc-0.2.146_src_unix_bsd_netbsdlike_netbsd_mod.rs
deleted file mode 100644
index d91f3aefa1..0000000000
--- a/rust175/patches/patch-vendor_libc-0.2.146_src_unix_bsd_netbsdlike_netbsd_mod.rs
+++ /dev/null
@@ -1,59 +0,0 @@
-$NetBSD$
-
-Add support for NetBSD/mipsel and NetBSD/riscv64.
-Also try to enable backtrace support.
-
-Add fix to cpuid_t definition by applying
-  https://github.com/rust-lang/libc/pull/3386
-
---- vendor/libc-0.2.146/src/unix/bsd/netbsdlike/netbsd/mod.rs.orig	2023-07-12 05:06:31.000000000 +0000
-+++ vendor/libc-0.2.146/src/unix/bsd/netbsdlike/netbsd/mod.rs
-@@ -10,7 +10,7 @@ type __pthread_spin_t = __cpu_simple_loc
- pub type vm_size_t = ::uintptr_t; // FIXME: deprecated since long time
- pub type lwpid_t = ::c_uint;
- pub type shmatt_t = ::c_uint;
--pub type cpuid_t = u64;
-+pub type cpuid_t = ::c_ulong;
- pub type cpuset_t = _cpuset;
- pub type pthread_spin_t = ::c_uchar;
- pub type timer_t = ::c_int;
-@@ -3153,6 +3153,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;
-@@ -3172,7 +3188,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 = "riscv64")] {
-+        mod riscv64;
-+        pub use self::riscv64::*;
-     } else {
--        // Unknown target_arch
-+        // Unknown target_arch, this should error out
-+        mod unknown;
-+        pub use self::unknown::*;
-     }
- }
diff --git a/rust175/patches/patch-vendor_libc-0.2.146_src_unix_bsd_netbsdlike_netbsd_riscv64.rs b/rust175/patches/patch-vendor_libc-0.2.146_src_unix_bsd_netbsdlike_netbsd_riscv64.rs
deleted file mode 100644
index 9b552a0f2b..0000000000
--- a/rust175/patches/patch-vendor_libc-0.2.146_src_unix_bsd_netbsdlike_netbsd_riscv64.rs
+++ /dev/null
@@ -1,29 +0,0 @@
-$NetBSD$
-
-Add support for NetBSD/riscv64.
-
---- vendor/libc-0.2.146/src/unix/bsd/netbsdlike/netbsd/riscv64.rs.orig	2023-07-14 09:17:03.907579820 +0000
-+++ vendor/libc-0.2.146/src/unix/bsd/netbsdlike/netbsd/riscv64.rs
-@@ -0,0 +1,22 @@
-+use PT_FIRSTMACH;
-+
-+pub type c_long = i64;
-+pub type c_ulong = u64;
-+pub type c_char = u8;
-+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_long>() - 1;
-+    } else {
-+        #[doc(hidden)]
-+        pub const _ALIGNBYTES: usize = 8 - 1;
-+    }
-+}
-+
-+pub const PT_GETREGS: ::c_int = PT_FIRSTMACH + 0;
-+pub const PT_SETREGS: ::c_int = PT_FIRSTMACH + 1;
-+pub const PT_GETFPREGS: ::c_int = PT_FIRSTMACH + 2;
-+pub const PT_SETFPREGS: ::c_int = PT_FIRSTMACH + 3;
diff --git a/rust175/patches/patch-vendor_libc-0.2.146_src_unix_solarish_mod.rs b/rust175/patches/patch-vendor_libc-0.2.146_src_unix_solarish_mod.rs
deleted file mode 100644
index 1cffe4aacf..0000000000
--- a/rust175/patches/patch-vendor_libc-0.2.146_src_unix_solarish_mod.rs
+++ /dev/null
@@ -1,15 +0,0 @@
-$NetBSD$
-
-Fix xattr build.
-
---- vendor/libc-0.2.146/src/unix/solarish/mod.rs.orig	2023-08-23 22:08:20.000000000 +0000
-+++ vendor/libc-0.2.146/src/unix/solarish/mod.rs
-@@ -1523,6 +1523,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/rust175/patches/patch-vendor_libc-0.2.148_src_unix_bsd_netbsdlike+netbsd_mips.rs b/rust175/patches/patch-vendor_libc-0.2.148_src_unix_bsd_netbsdlike+netbsd_mips.rs
deleted file mode 100644
index 18aa4d7328..0000000000
--- a/rust175/patches/patch-vendor_libc-0.2.148_src_unix_bsd_netbsdlike+netbsd_mips.rs
+++ /dev/null
@@ -1,29 +0,0 @@
-$NetBSD$
-
-Add entry for NetBSD/mips.
-
---- vendor/libc-0.2.148/src/unix/bsd/netbsdlike/netbsd/mips.rs.orig	2024-01-06 21:03:21.781003759 +0000
-+++ vendor/libc-0.2.148/src/unix/bsd/netbsdlike/netbsd/mips.rs	2024-01-06 22:27:31.830676317 +0000
-@@ -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/rust175/patches/patch-vendor_libc-0.2.148_src_unix_bsd_netbsdlike_netbsd_mod.rs b/rust175/patches/patch-vendor_libc-0.2.148_src_unix_bsd_netbsdlike_netbsd_mod.rs
deleted file mode 100644
index aff7296f94..0000000000
--- a/rust175/patches/patch-vendor_libc-0.2.148_src_unix_bsd_netbsdlike_netbsd_mod.rs
+++ /dev/null
@@ -1,52 +0,0 @@
-$NetBSD$
-
-Add entries for execinfo, and support
-for NetBSD/mips and NetBSD/riscv64.
-
---- vendor/libc-0.2.148/src/unix/bsd/netbsdlike/netbsd/mod.rs.orig	2024-01-06 22:33:33.911876204 +0000
-+++ vendor/libc-0.2.148/src/unix/bsd/netbsdlike/netbsd/mod.rs
-@@ -10,7 +10,7 @@ type __pthread_spin_t = __cpu_simple_loc
- pub type vm_size_t = ::uintptr_t; // FIXME: deprecated since long time
- pub type lwpid_t = ::c_uint;
- pub type shmatt_t = ::c_uint;
--pub type cpuid_t = u64;
-+pub type cpuid_t = ::c_ulong;
- pub type cpuset_t = _cpuset;
- pub type pthread_spin_t = ::c_uchar;
- pub type timer_t = ::c_int;
-@@ -3153,6 +3153,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;
-@@ -3172,6 +3188,12 @@ 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 = "riscv64")] {
-+        mod riscv64;
-+        pub use self::riscv64::*;
-     } else {
-         // Unknown target_arch
-     }
diff --git a/rust175/patches/patch-vendor_libc-0.2.148_src_unix_bsd_netbsdlike_netbsd_riscv64.rs b/rust175/patches/patch-vendor_libc-0.2.148_src_unix_bsd_netbsdlike_netbsd_riscv64.rs
deleted file mode 100644
index 17b7d39991..0000000000
--- a/rust175/patches/patch-vendor_libc-0.2.148_src_unix_bsd_netbsdlike_netbsd_riscv64.rs
+++ /dev/null
@@ -1,29 +0,0 @@
-$NetBSD$
-
-Add support for NetBSD/riscv64.
-
---- vendor/libc-0.2.148/src/unix/bsd/netbsdlike/netbsd/riscv64.rs.orig	2024-01-06 21:03:21.781003759 +0000
-+++ vendor/libc-0.2.148/src/unix/bsd/netbsdlike/netbsd/riscv64.rs	2024-01-06 22:31:25.289387359 +0000
-@@ -0,0 +1,22 @@
-+use PT_FIRSTMACH;
-+
-+pub type c_long = i64;
-+pub type c_ulong = u64;
-+pub type c_char = u8;
-+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_long>() - 1;
-+    } else {
-+        #[doc(hidden)]
-+        pub const _ALIGNBYTES: usize = 8 - 1;
-+    }
-+}
-+
-+pub const PT_GETREGS: ::c_int = PT_FIRSTMACH + 0;
-+pub const PT_SETREGS: ::c_int = PT_FIRSTMACH + 1;
-+pub const PT_GETFPREGS: ::c_int = PT_FIRSTMACH + 2;
-+pub const PT_SETFPREGS: ::c_int = PT_FIRSTMACH + 3;
diff --git a/rust175/patches/patch-vendor_libc-0.2.148_src_unix_solarish_mod.rs b/rust175/patches/patch-vendor_libc-0.2.148_src_unix_solarish_mod.rs
deleted file mode 100644
index 903029e11e..0000000000
--- a/rust175/patches/patch-vendor_libc-0.2.148_src_unix_solarish_mod.rs
+++ /dev/null
@@ -1,15 +0,0 @@
-$NetBSD$
-
-Fix xattr build.
-
---- vendor/libc-0.2.148/src/unix/solarish/mod.rs.orig	2024-01-06 22:41:58.182128108 +0000
-+++ vendor/libc-0.2.148/src/unix/solarish/mod.rs
-@@ -1523,6 +1523,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/rust175/patches/patch-vendor_libc-0.2.149_src_unix_bsd_netbsdlike_netbsd_mips.rs b/rust175/patches/patch-vendor_libc-0.2.149_src_unix_bsd_netbsdlike_netbsd_mips.rs
deleted file mode 100644
index c6be3fc7f1..0000000000
--- a/rust175/patches/patch-vendor_libc-0.2.149_src_unix_bsd_netbsdlike_netbsd_mips.rs
+++ /dev/null
@@ -1,29 +0,0 @@
-$NetBSD$
-
-Add support for NetBSD/mipsel.
-
---- vendor/libc-0.2.149/src/unix/bsd/netbsdlike/netbsd/mips.rs.orig	2024-01-08 07:29:24.841727520 +0000
-+++ vendor/libc-0.2.149/src/unix/bsd/netbsdlike/netbsd/mips.rs	2024-01-08 07:30:35.869045004 +0000
-@@ -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/rust175/patches/patch-vendor_libc-0.2.149_src_unix_bsd_netbsdlike_netbsd_mod.rs b/rust175/patches/patch-vendor_libc-0.2.149_src_unix_bsd_netbsdlike_netbsd_mod.rs
deleted file mode 100644
index c595e94fea..0000000000
--- a/rust175/patches/patch-vendor_libc-0.2.149_src_unix_bsd_netbsdlike_netbsd_mod.rs
+++ /dev/null
@@ -1,31 +0,0 @@
-$NetBSD$
-
-Add support for NetBSD/riscv64 and MetBSD/mipsel.
-
-Add fix to cpuid_t definition by applying
-  https://github.com/rust-lang/libc/pull/3386
-
---- vendor/libc-0.2.149/src/unix/bsd/netbsdlike/netbsd/mod.rs.orig	2024-01-08 07:25:50.125422539 +0000
-+++ vendor/libc-0.2.149/src/unix/bsd/netbsdlike/netbsd/mod.rs
-@@ -10,7 +10,7 @@ type __pthread_spin_t = __cpu_simple_loc
- pub type vm_size_t = ::uintptr_t; // FIXME: deprecated since long time
- pub type lwpid_t = ::c_uint;
- pub type shmatt_t = ::c_uint;
--pub type cpuid_t = u64;
-+pub type cpuid_t = ::c_ulong;
- pub type cpuset_t = _cpuset;
- pub type pthread_spin_t = ::c_uchar;
- pub type timer_t = ::c_int;
-@@ -3208,6 +3208,12 @@ 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 = "riscv64")] {
-+        mod riscv64;
-+        pub use self::riscv64::*;
-     } else {
-         // Unknown target_arch
-     }
diff --git a/rust175/patches/patch-vendor_libc-0.2.149_src_unix_bsd_netbsdlike_netbsd_riscv64.rs b/rust175/patches/patch-vendor_libc-0.2.149_src_unix_bsd_netbsdlike_netbsd_riscv64.rs
deleted file mode 100644
index 211730aef9..0000000000
--- a/rust175/patches/patch-vendor_libc-0.2.149_src_unix_bsd_netbsdlike_netbsd_riscv64.rs
+++ /dev/null
@@ -1,29 +0,0 @@
-$NetBSD$
-
-Add support for NetBSD/riscv64.
-
---- vendor/libc-0.2.149/src/unix/bsd/netbsdlike/netbsd/riscv64.rs.orig	2024-01-08 07:29:24.841727520 +0000
-+++ vendor/libc-0.2.149/src/unix/bsd/netbsdlike/netbsd/riscv64.rs	2024-01-08 07:33:10.924970251 +0000
-@@ -0,0 +1,22 @@
-+use PT_FIRSTMACH;
-+
-+pub type c_long = i64;
-+pub type c_ulong = u64;
-+pub type c_char = u8;
-+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_long>() - 1;
-+    } else {
-+        #[doc(hidden)]
-+        pub const _ALIGNBYTES: usize = 8 - 1;
-+    }
-+}
-+
-+pub const PT_GETREGS: ::c_int = PT_FIRSTMACH + 0;
-+pub const PT_SETREGS: ::c_int = PT_FIRSTMACH + 1;
-+pub const PT_GETFPREGS: ::c_int = PT_FIRSTMACH + 2;
-+pub const PT_SETFPREGS: ::c_int = PT_FIRSTMACH + 3;
diff --git a/rust175/patches/patch-vendor_libc-0.2.149_src_unix_solarish_mod.rs b/rust175/patches/patch-vendor_libc-0.2.149_src_unix_solarish_mod.rs
deleted file mode 100644
index 38aa5cfdd3..0000000000
--- a/rust175/patches/patch-vendor_libc-0.2.149_src_unix_solarish_mod.rs
+++ /dev/null
@@ -1,15 +0,0 @@
-$NetBSD$
-
-Fix xattr build.
-
---- vendor/libc-0.2.149/src/unix/solarish/mod.rs.orig	2024-01-08 13:00:15.626503385 +0000
-+++ vendor/libc-0.2.149/src/unix/solarish/mod.rs
-@@ -1523,6 +1523,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/rust175/patches/patch-vendor_libc_src_unix_solarish_mod.rs b/rust175/patches/patch-vendor_libc_src_unix_solarish_mod.rs
deleted file mode 100644
index af3ce88fd8..0000000000
--- a/rust175/patches/patch-vendor_libc_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/src/unix/solarish/mod.rs.orig	2019-05-20 13:47:24.000000000 +0000
-+++ vendor/libc/src/unix/solarish/mod.rs
-@@ -1523,6 +1523,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/rust175/patches/patch-vendor_lzma-sys_config.h b/rust175/patches/patch-vendor_lzma-sys_config.h
deleted file mode 100644
index 67963cec47..0000000000
--- a/rust175/patches/patch-vendor_lzma-sys_config.h
+++ /dev/null
@@ -1,18 +0,0 @@
-$NetBSD: patch-vendor_lzma-sys_config.h,v 1.1 2019/10/28 00:42:21 jperkin Exp $
-
-Fix SunOS builds with newer compilers.
-
---- vendor/lzma-sys/config.h.orig	2020-10-07 09:33:31.000000000 +0000
-+++ vendor/lzma-sys/config.h
-@@ -35,7 +35,11 @@
-     // change to `MYTHREAD_WIN95` if targeting Windows XP or earlier
-     #define MYTHREAD_VISTA 1
- #else
-+#if !defined(__sun) || (__STDC_VERSION__-0 < 199901L)
-     #define _POSIX_C_SOURCE 199506L
-+#else
-+    #define _POSIX_C_SOURCE 200112L
-+#endif
-     #define MYTHREAD_POSIX 1
- #endif
- 
diff --git a/rust175/patches/patch-vendor_nix_src_sys_signal.rs b/rust175/patches/patch-vendor_nix_src_sys_signal.rs
deleted file mode 100644
index 7bac2daf6c..0000000000
--- a/rust175/patches/patch-vendor_nix_src_sys_signal.rs
+++ /dev/null
@@ -1,15 +0,0 @@
-$NetBSD$
-
-Narrow the conditional on mips to only apply to Linux.
-
---- vendor/nix/src/sys/signal.rs.orig	2023-01-25 01:49:16.000000000 +0000
-+++ vendor/nix/src/sys/signal.rs
-@@ -1069,7 +1069,7 @@ mod sigevent {
-                 SigevNotify::SigevThreadId{..} => libc::SIGEV_THREAD_ID,
-                 #[cfg(all(target_os = "linux", target_env = "uclibc"))]
-                 SigevNotify::SigevThreadId{..} => libc::SIGEV_THREAD_ID,
--                #[cfg(any(all(target_os = "linux", target_env = "musl"), target_arch = "mips"))]
-+                #[cfg(all(target_os = "linux", target_env = "musl", target_arch = "mips"))]
-                 SigevNotify::SigevThreadId{..} => 4  // No SIGEV_THREAD_ID defined
-             };
-             sev.sigev_signo = match sigev_notify {
diff --git a/rust175/patches/patch-vendor_openssl-src_openssl_Configurations_10-main.conf b/rust175/patches/patch-vendor_openssl-src_openssl_Configurations_10-main.conf
deleted file mode 100644
index 17def504e5..0000000000
--- a/rust175/patches/patch-vendor_openssl-src_openssl_Configurations_10-main.conf
+++ /dev/null
@@ -1,18 +0,0 @@
-$NetBSD$
-
-Replicate part of
-https://github.com/openssl/openssl/pull/15086
-
---- vendor/openssl-src/openssl/Configurations/10-main.conf.orig	2023-08-03 13:47:25.000000000 +0000
-+++ vendor/openssl-src/openssl/Configurations/10-main.conf
-@@ -950,6 +950,10 @@ my %targets = (
-         shared_cflag     => "-fPIC",
-         shared_extension => ".so.\$(SHLIB_VERSION_NUMBER)",
-     },
-+    "NetBSD-generic32" => {
-+        inherit_from     => [ "BSD-generic32" ],
-+        ex_libs          => add("-latomic"),
-+    },
-     "BSD-generic64" => {
-         inherit_from     => [ "BSD-generic32" ],
-         bn_ops           => "SIXTY_FOUR_BIT_LONG",
diff --git a/rust175/patches/patch-vendor_openssl-src_src_lib.rs b/rust175/patches/patch-vendor_openssl-src_src_lib.rs
deleted file mode 100644
index 7c72ce5edf..0000000000
--- a/rust175/patches/patch-vendor_openssl-src_src_lib.rs
+++ /dev/null
@@ -1,64 +0,0 @@
-$NetBSD: patch-vendor_openssl-src_src_lib.rs,v 1.1 2021/01/01 20:44:48 he Exp $
-
-Provide defaults for the various NetBSD targets.
-
---- vendor/openssl-src/src/lib.rs.orig	2023-07-12 05:06:32.000000000 +0000
-+++ vendor/openssl-src/src/lib.rs
-@@ -239,6 +239,8 @@ impl Build {
-             "aarch64-unknown-freebsd" => "BSD-generic64",
-             "aarch64-unknown-linux-gnu" => "linux-aarch64",
-             "aarch64-unknown-linux-musl" => "linux-aarch64",
-+            "aarch64-unknown-netbsd" => "BSD-generic64",
-+            "aarch64_be-unknown-netbsd" => "BSD-generic64",
-             "aarch64-pc-windows-msvc" => "VC-WIN64-ARM",
-             "arm-linux-androideabi" => "linux-armv4",
-             "armv7-linux-androideabi" => "linux-armv4",
-@@ -249,14 +251,17 @@ impl Build {
-             "armv5te-unknown-linux-gnueabi" => "linux-armv4",
-             "armv5te-unknown-linux-musleabi" => "linux-armv4",
-             "armv6-unknown-freebsd" => "BSD-generic32",
-+            "armv6-unknown-netbsd-eabihf" => "BSD-generic32",
-             "armv7-unknown-freebsd" => "BSD-generic32",
-             "armv7-unknown-linux-gnueabi" => "linux-armv4",
-             "armv7-unknown-linux-musleabi" => "linux-armv4",
-             "armv7-unknown-linux-gnueabihf" => "linux-armv4",
-             "armv7-unknown-linux-musleabihf" => "linux-armv4",
-+            "armv7-unknown-netbsd-eabihf" => "BSD-generic32",
-             "asmjs-unknown-emscripten" => "gcc",
-             "i586-unknown-linux-gnu" => "linux-elf",
-             "i586-unknown-linux-musl" => "linux-elf",
-+            "i586-unknown-netbsd" => "BSD-x86-elf",
-             "i686-apple-darwin" => "darwin-i386-cc",
-             "i686-linux-android" => "linux-elf",
-             "i686-pc-windows-gnu" => "mingw",
-@@ -264,6 +269,7 @@ impl Build {
-             "i686-unknown-freebsd" => "BSD-x86-elf",
-             "i686-unknown-linux-gnu" => "linux-elf",
-             "i686-unknown-linux-musl" => "linux-elf",
-+            "i686-unknown-netbsd" => "BSD-x86-elf",
-             "loongarch64-unknown-linux-gnu" => "linux64-loongarch64",
-             "mips-unknown-linux-gnu" => "linux-mips32",
-             "mips-unknown-linux-musl" => "linux-mips32",
-@@ -273,9 +279,11 @@ impl Build {
-             "mips64el-unknown-linux-muslabi64" => "linux64-mips64",
-             "mipsel-unknown-linux-gnu" => "linux-mips32",
-             "mipsel-unknown-linux-musl" => "linux-mips32",
-+            "mipsel-unknown-netbsd" => "NetBSD-generic32",
-             "powerpc-unknown-freebsd" => "BSD-generic32",
-             "powerpc-unknown-linux-gnu" => "linux-ppc",
-             "powerpc-unknown-linux-gnuspe" => "linux-ppc",
-+            "powerpc-unknown-netbsd" => "BSD-generic32",
-             "powerpc64-unknown-freebsd" => "BSD-generic64",
-             "powerpc64-unknown-linux-gnu" => "linux-ppc64",
-             "powerpc64-unknown-linux-musl" => "linux-ppc64",
-@@ -283,8 +291,10 @@ impl Build {
-             "powerpc64le-unknown-linux-gnu" => "linux-ppc64le",
-             "powerpc64le-unknown-linux-musl" => "linux-ppc64le",
-             "riscv64gc-unknown-linux-gnu" => "linux-generic64",
-+            "riscv64gc-unknown-netbsd" => "BSD-generic64",
-             "s390x-unknown-linux-gnu" => "linux64-s390x",
-             "s390x-unknown-linux-musl" => "linux64-s390x",
-+            "sparc64-unknown-netbsd" => "BSD-generic64",
-             "x86_64-apple-darwin" => "darwin64-x86_64-cc",
-             "x86_64-linux-android" => "linux-x86_64",
-             "x86_64-pc-windows-gnu" => "mingw64",
diff --git a/rust175/patches/patch-vendor_openssl-sys_build_find__normal.rs b/rust175/patches/patch-vendor_openssl-sys_build_find__normal.rs
deleted file mode 100644
index 05d96b1783..0000000000
--- a/rust175/patches/patch-vendor_openssl-sys_build_find__normal.rs
+++ /dev/null
@@ -1,30 +0,0 @@
-$NetBSD: patch-vendor_openssl-sys_build_find__normal.rs,v 1.1 2023/06/19 14:46:47 bsiegert Exp $
-
-Add hack for Darwin when homebrew is installed.
-
---- vendor/openssl-sys/build/find_normal.rs.orig	2023-05-31 21:44:49.000000000 +0000
-+++ vendor/openssl-sys/build/find_normal.rs
-@@ -72,23 +72,6 @@ fn resolve_with_wellknown_location(dir:
- fn find_openssl_dir(target: &str) -> OsString {
-     let host = env::var("HOST").unwrap();
- 
--    if host == target && target.ends_with("-apple-darwin") {
--        let homebrew_dir = match target {
--            "aarch64-apple-darwin" => "/opt/homebrew",
--            _ => "/usr/local",
--        };
--
--        if let Some(dir) = resolve_with_wellknown_homebrew_location(homebrew_dir) {
--            return dir.into();
--        } else if let Some(dir) = resolve_with_wellknown_location("/opt/pkg") {
--            // pkgsrc
--            return dir.into();
--        } else if let Some(dir) = resolve_with_wellknown_location("/opt/local") {
--            // MacPorts
--            return dir.into();
--        }
--    }
--
-     try_pkg_config();
-     try_vcpkg();
- 
diff --git a/rust175/patches/patch-vendor_openssl-sys_build_main.rs b/rust175/patches/patch-vendor_openssl-sys_build_main.rs
deleted file mode 100644
index 7433a659c2..0000000000
--- a/rust175/patches/patch-vendor_openssl-sys_build_main.rs
+++ /dev/null
@@ -1,24 +0,0 @@
-$NetBSD$
-
-Patterned after Linux and Android, on 32-bit NetBSD ports
-include -latomic.  Parts of this inspired by
-https://github.com/sfackler/rust-openssl/commit/a0a1d1d29263abb7c47fc2e58cef8dab13762a45
-
---- vendor/openssl-sys/build/main.rs.orig	2022-11-02 16:21:42.000000000 +0000
-+++ vendor/openssl-sys/build/main.rs
-@@ -122,6 +122,15 @@ fn main() {
-         println!("cargo:rustc-link-lib={}={}", kind, lib);
-     }
- 
-+    // Patterned of the above, make sure we include -latomic
-+    // on ilp32 ports (yes, this only tests the "p32" part).
-+    if kind == "static"
-+	&& env::var("CARGO_CFG_TARGET_OS").unwrap() == "netbsd"
-+	&& env::var("CARGO_CFG_TARGET_POINTER_WIDTH").unwrap() == "32"
-+    {
-+	println!("cargo:rustc-link-lib=dylib=atomic");
-+    }
-+
-     if kind == "static" && target.contains("windows") {
-         println!("cargo:rustc-link-lib=dylib=gdi32");
-         println!("cargo:rustc-link-lib=dylib=user32");
diff --git a/rust175/patches/patch-vendor_rustc-ap-rustc__target_src_spec_aarch64__be__unknown__netbsd.rs b/rust175/patches/patch-vendor_rustc-ap-rustc__target_src_spec_aarch64__be__unknown__netbsd.rs
deleted file mode 100644
index 98a1d9cb7b..0000000000
--- a/rust175/patches/patch-vendor_rustc-ap-rustc__target_src_spec_aarch64__be__unknown__netbsd.rs
+++ /dev/null
@@ -1,27 +0,0 @@
-$NetBSD$
-
-Add aarch64_be NetBSD target.
-
---- /dev/null	2021-04-26 00:02:43.147970692 +0200
-+++ vendor/rustc-ap-rustc_target/src/spec/aarch64_be_unknown_netbsd.rs	2021-04-26 00:07:44.657579025 +0200
-@@ -0,0 +1,20 @@
-+use crate::abi::Endian;
-+use crate::spec::{Target, TargetOptions};
-+
-+pub fn target() -> Target {
-+    let mut base = super::netbsd_base::opts();
-+    base.max_atomic_width = Some(128);
-+    base.unsupported_abis = super::arm_base::unsupported_abis();
-+
-+    Target {
-+        llvm_target: "aarch64_be-unknown-netbsd".to_string(),
-+        pointer_width: 64,
-+        data_layout: "E-m:e-i8:8:32-i16:16:32-i64:64-i128:128-n32:64-S128".to_string(),
-+        arch: "aarch64".to_string(),
-+        options: TargetOptions {
-+            mcount: "__mcount".to_string(),
-+            endian: Endian::Big,
-+            ..base
-+        },
-+    }
-+}
diff --git a/rust175/patches/patch-vendor_stacker_src_lib.rs b/rust175/patches/patch-vendor_stacker_src_lib.rs
deleted file mode 100644
index dfd1589f54..0000000000
--- a/rust175/patches/patch-vendor_stacker_src_lib.rs
+++ /dev/null
@@ -1,15 +0,0 @@
-$NetBSD: patch-vendor_stacker_src_lib.rs,v 1.1 2020/08/06 11:42:56 jperkin Exp $
-
-Avoid missing pthread_* on older SunOS.
-
---- vendor/stacker/src/lib.rs.orig	2020-07-13 18:18:17.000000000 +0000
-+++ vendor/stacker/src/lib.rs
-@@ -407,7 +407,7 @@ cfg_if! {
-             );
-             Some(mi.assume_init().AllocationBase as usize + get_thread_stack_guarantee() + 0x1000)
-         }
--    } else if #[cfg(any(target_os = "linux", target_os="solaris", target_os = "netbsd"))] {
-+    } else if #[cfg(any(target_os = "linux", target_os = "netbsd"))] {
-         unsafe fn guess_os_stack_limit() -> Option<usize> {
-             let mut attr = std::mem::MaybeUninit::<libc::pthread_attr_t>::uninit();
-             assert_eq!(libc::pthread_attr_init(attr.as_mut_ptr()), 0);
diff --git a/rust175/patches/patch-vendor_target-lexicon_src_targets.rs b/rust175/patches/patch-vendor_target-lexicon_src_targets.rs
deleted file mode 100644
index 5e646970c4..0000000000
--- a/rust175/patches/patch-vendor_target-lexicon_src_targets.rs
+++ /dev/null
@@ -1,22 +0,0 @@
-$NetBSD$
-
-Add aarch64_eb and mipsel for NetBSD.
-
---- vendor/target-lexicon/src/targets.rs.orig	2021-05-03 21:35:46.000000000 +0000
-+++ vendor/target-lexicon/src/targets.rs
-@@ -1526,6 +1526,7 @@ mod tests {
-             "aarch64-unknown-linux-gnu_ilp32",
-             "aarch64-unknown-linux-musl",
-             "aarch64-unknown-netbsd",
-+            "aarch64_be-unknown-netbsd",
-             "aarch64-unknown-none",
-             "aarch64-unknown-none-softfloat",
-             "aarch64-unknown-openbsd",
-@@ -1611,6 +1612,7 @@ mod tests {
-             "mipsel-unknown-linux-gnu",
-             "mipsel-unknown-linux-musl",
-             "mipsel-unknown-linux-uclibc",
-+            "mipsel-unknown-netbsd",
-             "mipsel-unknown-none",
-             "mipsisa32r6el-unknown-linux-gnu",
-             "mipsisa32r6-unknown-linux-gnu",
diff --git a/rust175/patches/patch-vendor_valuable_no__atomic.rs b/rust175/patches/patch-vendor_valuable_no__atomic.rs
deleted file mode 100644
index f485c63d9d..0000000000
--- a/rust175/patches/patch-vendor_valuable_no__atomic.rs
+++ /dev/null
@@ -1,14 +0,0 @@
-$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] = &[
-     "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/rust175/platform.mk b/rust175/platform.mk
deleted file mode 100644
index cc75fd55ab..0000000000
--- a/rust175/platform.mk
+++ /dev/null
@@ -1,26 +0,0 @@
-# $NetBSD: platform.mk,v 1.6 2020/12/26 10:04:51 nia Exp $
-
-# This file encodes whether a given platform has support for rust.
-
-# Platforms where rust ought to work but does not require a link to an
-# open PR.
-
-.if !defined(PLATFORM_SUPPORTS_RUST)
-
-# Rust needs NetBSD>7
-.for rust_arch in aarch64 earmv7hf i386 powerpc riscv64 sparc64 x86_64
-.  for rust_os in Darwin FreeBSD Linux NetBSD SunOS
-.    if ${OPSYS} != "NetBSD" || empty(OS_VERSION:M[0-7].*)
-RUST_PLATFORMS+=	${rust_os}-*-${rust_arch}
-.    endif
-.  endfor
-.endfor
-
-.for rust_platform in ${RUST_PLATFORMS}
-.  if !empty(MACHINE_PLATFORM:M${rust_platform})
-PLATFORM_SUPPORTS_RUST=		yes
-.  endif
-.endfor
-PLATFORM_SUPPORTS_RUST?=	no
-
-.endif # !defined(PLATFORM_SUPPORTS_RUST)
diff --git a/rust175/rust.mk b/rust175/rust.mk
deleted file mode 100644
index d930124865..0000000000
--- a/rust175/rust.mk
+++ /dev/null
@@ -1,55 +0,0 @@
-# $NetBSD: rust.mk,v 1.7 2020/10/14 08:23:49 triaxx Exp $
-#
-# This file determines the type of rust package to use.
-#
-# It should be included by rust-dependent packages that don't use
-# cargo.mk.
-#
-# === User-settable variables ===
-#
-# RUST_TYPE
-#	The preferred type of Rust release to use -
-#	either bootstrap-from-source or an official binary.
-#
-#	Official Rust binaries are only published for certain platforms,
-#	including Darwin, FreeBSD, Linux, and NetBSD x86_64.
-#
-#	Possible values: src bin
-#	Default: src
-#
-# === Package-settable variables ===
-#
-# RUST_REQ
-#	The minimum version of Rust required by the package.
-#
-#	Default: 1.56.1
-#
-# RUST_RUNTIME
-#	Whether rust is a runtime dependency.
-#	Usually it is only needed to build.
-#
-#	Possible values: yes no
-#	Default: no
-
-.include "../../mk/bsd.fast.prefs.mk"
-
-RUST_REQ?=	1.56.1
-RUST_RUNTIME?=	no
-
-RUST_TYPE?=	src
-
-.if ${RUST_TYPE} == "bin"
-.  if ${RUST_RUNTIME} == "no"
-BUILDLINK_DEPMETHOD.rust-bin?=		build
-.  endif
-BUILDLINK_API_DEPENDS.rust-bin+=	rust-bin>=${RUST_REQ}
-.  include "../../lang/rust-bin/buildlink3.mk"
-.endif
-
-.if ${RUST_TYPE} == "src"
-.  if ${RUST_RUNTIME} == "no"
-BUILDLINK_DEPMETHOD.rust?=		build
-.  endif
-BUILDLINK_API_DEPENDS.rust+=		rust>=${RUST_REQ}
-.  include "../../lang/rust/buildlink3.mk"
-.endif
diff --git a/rust176-bin/DESCR b/rust176-bin/DESCR
deleted file mode 100644
index 5c709044ce..0000000000
--- a/rust176-bin/DESCR
+++ /dev/null
@@ -1,17 +0,0 @@
-Rust is a systems programming language focused on three goals: safety,
-speed, and concurrency.  It maintains these goals without having a
-garbage collector, making it a useful language for a number of use cases
-other languages aren't good at: embedding in other languages, programs
-with specific space and time requirements, and writing low-level code,
-like device drivers and operating systems.
-
-It improves on current languages targeting this space by having a number
-of compile-time safety checks that produce no runtime overhead, while
-eliminating all data races.  Rust also aims to achieve "zero-cost
-abstractions" even though some of these abstractions feel like those of
-a high-level language.  Even then, Rust still allows precise control
-like a low-level language would.
-
-This package installs a released binary, on architectures supported by
-upstream, or a TNF-built binary, on NetBSD versions not supported by
-upstream.
diff --git a/rust176-bin/Makefile b/rust176-bin/Makefile
deleted file mode 100644
index f5644b6162..0000000000
--- a/rust176-bin/Makefile
+++ /dev/null
@@ -1,296 +0,0 @@
-# $NetBSD: Makefile,v 1.55 2023/09/28 12:24:32 he Exp $
-
-DISTNAME=	rust-1.76.0
-PKGNAME=	${DISTNAME:S/rust/rust-bin/1}
-CATEGORIES=	lang
-MASTER_SITES=	https://static.rust-lang.org/dist/
-DIST_SUBDIR=	${PKGNAME}
-
-MAINTAINER=	pkgsrc-users%NetBSD.org@localhost
-HOMEPAGE=	https://rust-lang.org/
-COMMENT=	Safe, concurrent, practical language (pre-built distribution)
-LICENSE=	mit OR apache-2.0
-
-CONFLICTS+=	rust-[0-9]*
-
-# Rust upstream provided binaries
-ONLY_FOR_PLATFORM+=	Darwin-*-aarch64
-ONLY_FOR_PLATFORM+=	Darwin-*-x86_64
-ONLY_FOR_PLATFORM+=	FreeBSD-*-x86_64
-ONLY_FOR_PLATFORM+=	Linux-*-i386
-ONLY_FOR_PLATFORM+=	Linux-*-x86_64
-
-# he%NetBSD.org@localhost provided binaries
-ONLY_FOR_PLATFORM+=	NetBSD-*-aarch64
-ONLY_FOR_PLATFORM+=	NetBSD-*-aarch64eb
-ONLY_FOR_PLATFORM+=	NetBSD-*-earmv7hf
-ONLY_FOR_PLATFORM+=	NetBSD-*-earmv6hf
-ONLY_FOR_PLATFORM+=	NetBSD-*-i386
-ONLY_FOR_PLATFORM+=	NetBSD-*-powerpc
-ONLY_FOR_PLATFORM+=	NetBSD-*-sparc64
-ONLY_FOR_PLATFORM+=	NetBSD-*-mipsel
-ONLY_FOR_PLATFORM+=	NetBSD-*-riscv64
-ONLY_FOR_PLATFORM+=	NetBSD-*-x86_64
-
-# Illumos, jperkin@ provided binaries
-ONLY_FOR_PLATFORM+=	SunOS-*-x86_64
-
-NETBSD_REPO=	https://cdn.NetBSD.org/pub/pkgsrc/distfiles/LOCAL_PORTS/rust/
-
-CHECK_RELRO_SKIP+=	lib/rustlib/*/bin/*
-
-CHECK_SHLIBS_SKIP+=	bin/cargo-clippy
-CHECK_SHLIBS_SKIP+=	bin/rustfmt
-
-# Bootstraps built for 9.0.
-BROKEN_ON_PLATFORM+=	NetBSD-8.*-earmv7hf
-BROKEN_ON_PLATFORM+=	NetBSD-8.*-earmv6hf
-BROKEN_ON_PLATFORM+=	NetBSD-8.*-powerpc
-
-# Binary distributions aren't built as PIE.
-MKPIE_SUPPORTED=	no
-
-NO_BUILD=	yes
-USE_TOOLS+=	bash pax
-WRKSRC=		${WRKDIR}/${DISTFILES:C/.tar.[gx]z//}
-
-GENERATE_PLIST+=	find ${DESTDIR}${PREFIX} \( -type f -o -type l \) -print | \
-			sed 's,${DESTDIR}${PREFIX}/,,' | ${SORT} ;
-
-INSTALLATION_DIRS=	bin ${PKGMANDIR} share/doc/cargo/bash_completion.d
-
-.include "../../mk/bsd.prefs.mk"
-
-.if ${OPSYS} == "NetBSD" && ${OPSYS_VERSION} < 080000
-BROKEN+=		"Bootstrap unavailable for old NetBSD version"
-.endif
-
-DISTFILES:=	# empty
-
-# Rust upstream provided binaries
-
-.if !empty(MACHINE_PLATFORM:MDarwin-*-aarch64) || make(distinfo) || make(makesum) || make(mdi)
-RUST_ARCH:=	aarch64-apple-darwin
-DISTFILES:=	${DISTFILES} ${DISTNAME}-${RUST_ARCH}.tar.gz
-.endif
-.if !empty(MACHINE_PLATFORM:MDarwin-*-x86_64) || make(distinfo) || make(makesum) || make(mdi)
-RUST_ARCH:=	x86_64-apple-darwin
-DISTFILES:=	${DISTFILES} ${DISTNAME}-${RUST_ARCH}.tar.gz
-.endif
-.if !empty(MACHINE_PLATFORM:MFreeBSD-*-x86_64) || make(distinfo) || make(makesum) || make(mdi)
-RUST_ARCH:=	x86_64-unknown-freebsd
-DISTFILES:=	${DISTFILES} ${DISTNAME}-${RUST_ARCH}.tar.gz
-.endif
-.if !empty(MACHINE_PLATFORM:MLinux-*-i386) || make(distinfo) || make(makesum) || make(mdi)
-RUST_ARCH:=	i686-unknown-linux-gnu
-DISTFILES:=	${DISTFILES} ${DISTNAME}-${RUST_ARCH}.tar.gz
-.endif
-.if (!empty(MACHINE_PLATFORM:MLinux-*-aarch64) && !empty(GLIBC_VERSION)) || make(distinfo) || make(makesum) || make(mdi)
-RUST_ARCH:=	aarch64-unknown-linux-gnu
-DISTFILES:=	${DISTFILES} ${DISTNAME}-${RUST_ARCH}.tar.gz
-.endif
-.if (!empty(MACHINE_PLATFORM:MLinux-*-aarch64) && empty(GLIBC_VERSION)) || make(distinfo) || make(makesum) || make(mdi)
-RUST_ARCH:=	aarch64-unknown-linux-musl
-DISTFILES:=	${DISTFILES} ${DISTNAME}-${RUST_ARCH}.tar.gz
-.endif
-.if (!empty(MACHINE_PLATFORM:MLinux-*-x86_64) && !empty(GLIBC_VERSION)) || make(distinfo) || make(makesum) || make(mdi)
-RUST_ARCH:=	x86_64-unknown-linux-gnu
-DISTFILES:=	${DISTFILES} ${DISTNAME}-${RUST_ARCH}.tar.gz
-.endif
-.if (!empty(MACHINE_PLATFORM:MLinux-*-x86_64) && empty(GLIBC_VERSION)) || make(distinfo) || make(makesum) || make(mdi)
-RUST_ARCH:=	x86_64-unknown-linux-musl
-DISTFILES:=	${DISTFILES} ${DISTNAME}-${RUST_ARCH}.tar.gz
-.endif
-.if !empty(MACHINE_PLATFORM:MNetBSD-*-x86_64) || make(distinfo) || make(makesum) || make(mdi)
-RUST_ARCH:=	x86_64-unknown-netbsd
-DISTFILES:=	${DISTFILES} ${DISTNAME}-${RUST_ARCH}.tar.gz
-.endif
-
-# NetBSD provided binaries:
-
-NBSUF=
-
-.if !empty(MACHINE_PLATFORM:MNetBSD-*-aarch64) || make(distinfo) || make(makesum) || make(mdi)
-RUST_ARCH:=	aarch64-unknown-netbsd
-DN:=		${DISTNAME}${NBSUF}
-EXTRACT_SUFX=	.tar.xz
-DF:=		${DN}-${RUST_ARCH}${EXTRACT_SUFX}
-DISTFILES:=	${DISTFILES} ${DF}
-SITES.${DF}=	${NETBSD_REPO}
-.endif
-.if !empty(MACHINE_PLATFORM:MNetBSD-*-aarch64eb) || make(distinfo) || make(makesum) || make(mdi)
-RUST_ARCH:=	aarch64_be-unknown-netbsd
-DN:=		${DISTNAME}${NBSUF}
-EXTRACT_SUFX=	.tar.xz
-DF:=		${DN}-${RUST_ARCH}${EXTRACT_SUFX}
-DISTFILES:=	${DISTFILES} ${DF}
-SITES.${DF}=	${NETBSD_REPO}
-.endif
-.if !empty(MACHINE_PLATFORM:MNetBSD-*-earmv6hf) || make(distinfo) || make(makesum) || make(mdi)
-RUST_ARCH:=	armv6-unknown-netbsd-eabihf
-DN:=		${DISTNAME}${NBSUF}
-EXTRACT_SUFX=	.tar.xz
-DF:=		${DN}-${RUST_ARCH}${EXTRACT_SUFX}
-DISTFILES:=	${DISTFILES} ${DF}
-SITES.${DF}=	${NETBSD_REPO}
-.endif
-.if !empty(MACHINE_PLATFORM:MNetBSD-*-earmv7hf) || make(distinfo) || make(makesum) || make(mdi)
-RUST_ARCH:=	armv7-unknown-netbsd-eabihf
-DN:=		${DISTNAME}${NBSUF}
-EXTRACT_SUFX=	.tar.xz
-DF:=		${DN}-${RUST_ARCH}${EXTRACT_SUFX}
-DISTFILES:=	${DISTFILES} ${DF}
-SITES.${DF}=	${NETBSD_REPO}
-.endif
-.if !empty(MACHINE_PLATFORM:MNetBSD-*-i386) || make(distinfo) || make(makesum) || make(mdi)
-RUST_ARCH:=	i586-unknown-netbsd
-DN:=		${DISTNAME}${NBSUF}
-EXTRACT_SUFX=	.tar.xz
-DF:=		${DN}-${RUST_ARCH}${EXTRACT_SUFX}
-DISTFILES:=	${DISTFILES} ${DF}
-SITES.${DF}=	${NETBSD_REPO}
-.endif
-.if !empty(MACHINE_PLATFORM:MNetBSD-*-powerpc) || make(distinfo) || make(makesum) || make(mdi)
-# Now only supports OS_VERSION >= 9.0
-RUST_ARCH:=	powerpc-unknown-netbsd
-DN:=		${DISTNAME}${NBSUF}
-EXTRACT_SUFX=	.tar.xz
-DF:=		${DN}-${RUST_ARCH}${EXTRACT_SUFX}
-DISTFILES:=	${DISTFILES} ${DF}
-SITES.${DF}=	${NETBSD_REPO}
-.endif
-.if !empty(MACHINE_PLATFORM:MNetBSD-*-sparc64) || make(distinfo) || make(makesum) || make(mdi)
-RUST_ARCH:=	sparc64-unknown-netbsd
-DN:=		${DISTNAME}${NBSUF}
-EXTRACT_SUFX=	.tar.xz
-DF:=		${DN}-${RUST_ARCH}${EXTRACT_SUFX}
-DISTFILES:=	${DISTFILES} ${DF}
-SITES.${DF}=	${NETBSD_REPO}
-.endif
-.if !empty(MACHINE_PLATFORM:MNetBSD-*-mipsel) || make(distinfo) || make(makesum) || make(mdi)
-RUST_ARCH:=	mipsel-unknown-netbsd
-DN:=		${DISTNAME}${NBSUF}
-EXTRACT_SUFX=	.tar.xz
-DF:=		${DN}-${RUST_ARCH}${EXTRACT_SUFX}
-DISTFILES:=	${DISTFILES} ${DF}
-SITES.${DF}=	${NETBSD_REPO}
-.endif
-.if !empty(MACHINE_PLATFORM:MNetBSD-*-riscv64) || make(distinfo) || make(makesum) || make(mdi)
-RUST_ARCH:=	riscv64gc-unknown-netbsd
-DN:=		${DISTNAME}${NBSUF}
-EXTRACT_SUFX=	.tar.xz
-DF:=		${DN}-${RUST_ARCH}${EXTRACT_SUFX}
-DISTFILES:=	${DISTFILES} ${DF}
-SITES.${DF}=	${NETBSD_REPO}
-.endif
-
-# Illumos:
-.if !empty(MACHINE_PLATFORM:MSunOS-*-x86_64) || make(distinfo) || make(makesum) || make(mdi)
-RUST_ARCH:=	x86_64-unknown-illumos
-DN:=		${DISTNAME}
-EXTRACT_SUFX=	.tar.gz
-DF:=		${DN}-${RUST_ARCH}${EXTRACT_SUFX}
-DISTFILES:=	${DISTFILES} ${DF}
-SITES.${DF}=	https://us-central.manta.mnx.io/pkgsrc/public/pkg-bootstraps/
-.endif
-
-
-# Binary still extracts to plain non-nb'ed directory
-WRKSRC:=	${WRKSRC:C/nb[0-9]*//}
-# Undo the powerpc netbsd90 thingie...
-WRKSRC:=	${WRKSRC:C/netbsd90/netbsd/}
-
-do-install:
-	cd ${.CURDIR}/files; pax -rw install.sh ${WRKSRC}
-	cd ${WRKSRC} && env PKGMANDIR=${PKGMANDIR} bash ./install.sh \
-	--destdir=${DESTDIR} --prefix=${PREFIX}
-	${RM} -f ${DESTDIR}${PREFIX}/lib/rustlib/${RUST_ARCH}/bin/rust-llvm-dwp
-	${RM} -f ${DESTDIR}${PREFIX}/lib/rustlib/install.log
-	${RM} -f ${DESTDIR}${PREFIX}/lib/rustlib/manifest-*
-	${RM} -f ${DESTDIR}${PREFIX}/lib/rustlib/uninstall.sh
-
-.if ${OPSYS} == "Darwin"
-.PHONY: fix-darwin-install-name
-post-install: fix-darwin-install-name
-fix-darwin-install-name:
-.  for bin in clippy-driver miri rls rustc rustdoc
-	otool -XL ${DESTDIR}${PREFIX}/bin/${bin}			\
-	    | ${GREP} '@rpath' | while read rpath rest; do		\
-		install_name_tool -change $$rpath			\
-		    `${ECHO} $$rpath | ${SED} -e 's,@rpath,${PREFIX}/lib,g'` \
-		    ${DESTDIR}${PREFIX}/bin/${bin};			\
-	done
-.  endfor
-.  for bin in lldb lldb-mi llvm-nm llvm-objcopy llvm-objdump 	\
-		llvm-profdata llvm-readobj llvm-size llvm-strip
-	otool -XL ${DESTDIR}${PREFIX}/lib/rustlib/${RUST_ARCH}/bin/${bin} \
-	    | ${GREP} '@rpath' | while read rpath rest; do		\
-		install_name_tool -change $$rpath			\
-		    `${ECHO} $$rpath | ${SED} -e 's,@rpath,${PREFIX}/lib/rustlib/${RUST_ARCH}/lib,g'` \
-		    ${DESTDIR}${PREFIX}/lib/rustlib/${RUST_ARCH}/bin/${bin}; \
-	done
-.  endfor
-.  for lib in lib lib/rustlib/${RUST_ARCH}/lib lib/rustlib/${RUST_ARCH}/codegen-backends
-	for f in ${DESTDIR}${PREFIX}/${lib}/lib*.dylib; do		\
-		[ ! -f $$f ] && continue;				\
-		install_name_tool -id `${ECHO} $$f | ${SED} -e 's,${DESTDIR},,g'` $$f; \
-		otool -XL $$f | grep '@rpath' | while read rpath rest; do \
-			install_name_tool -change $$rpath \
-			    `${ECHO} $$rpath | ${SED} -e 's,@rpath,${PREFIX}/lib,g'` \
-			    $$f;					\
-		done;							\
-	done
-.  endfor
-.else
-TOOL_DEPENDS+=		patchelf-[0-9]*:../../devel/patchelf
-
-# The llvm utilities may need a specific libstdc++ version from compat80
-.  if ${OPSYS} == "NetBSD" && ${OPSYS_VERSION} >= 090000
-.    if ${MACHINE_ARCH} != "aarch64" && ${MACHINE_ARCH} != "earmv7hf" && \
-        ${MACHINE_ARCH} != "powerpc" && ${MACHINE_ARCH} != "earmv6hf" && \
-        ${MACHINE_ARCH} != "riscv64"
-DEPENDS+=		compat80-[0-9]*:../../emulators/compat80
-RUST_LLVM_RPATH=	${PREFIX}/emul/netbsd/usr/lib:${PREFIX}/lib
-FORCE_RPATH=
-.    else
-RUST_LLVM_RPATH=	${PREFIX}/lib
-.    endif
-.  else
-# ld.elf_so in NetBSD 8.x only obeys RPATH, not RUNPATH, so force RPATH there.
-RUST_LLVM_RPATH=	${PREFIX}/lib
-FORCE_RPATH=		--force-rpath
-.  endif
-
-.  if !empty(MACHINE_PLATFORM:MNetBSD-*-powerpc) || \
-      !empty(MACHINE_PLATFORM:MNetBSD-*-i386)
-.    include "../../devel/libatomic/buildlink3.mk"
-.  endif
-
-.PHONY: fix-relative-rpath
-post-install: fix-relative-rpath
-fix-relative-rpath:
-.  for bin in clippy-driver miri rls rustc rustdoc
-	if [ -f ${DESTDIR}${PREFIX}/bin/${bin} ]; then \
-		${PREFIX}/bin/patchelf ${FORCE_RPATH} --set-rpath \
-		    ${PREFIX}/lib ${DESTDIR}${PREFIX}/bin/${bin} ; \
-	fi
-.  endfor
-# Only Linux builds link these binaries against an LLVM library
-.  if ${OPSYS} == "Linux"
-.    for bin in llc llvm-ar llvm-as llvm-cov llvm-dis llvm-nm llvm-objcopy \
-	   llvm-objdump llvm-profdata llvm-readobj llvm-size llvm-strip opt \
-	   rust-lld
-	 ${PREFIX}/bin/patchelf ${FORCE_RPATH} --set-rpath ${RUST_LLVM_RPATH} \
-	   ${DESTDIR}${PREFIX}/lib/rustlib/${RUST_ARCH}/bin/${bin}
-.    endfor
-.  endif
-.  for lib in lib lib/rustlib/${RUST_ARCH}/lib \
-		lib/rustlib/${RUST_ARCH}/codegen-backends
-	for f in ${DESTDIR}${PREFIX}/${lib}/lib*.so; do			\
-		[ ! -f $$f ] && continue;				\
-		${PREFIX}/bin/patchelf ${FORCE_RPATH} --set-rpath ${PREFIX}/lib $$f;	\
-	done
-.  endfor
-.endif
-
-.include "../../mk/bsd.pkg.mk"
diff --git a/rust176-bin/buildlink3.mk b/rust176-bin/buildlink3.mk
deleted file mode 100644
index 1d6874ec86..0000000000
--- a/rust176-bin/buildlink3.mk
+++ /dev/null
@@ -1,13 +0,0 @@
-# $NetBSD: buildlink3.mk,v 1.2 2022/07/01 07:00:28 pin Exp $
-
-BUILDLINK_TREE+=	rust-bin
-
-.if !defined(RUST_BIN_BUILDLINK3_MK)
-RUST_BIN_BUILDLINK3_MK:=
-
-BUILDLINK_API_DEPENDS.rust-bin+=	rust-bin>=1.56.1
-BUILDLINK_PKGSRCDIR.rust-bin?=		../../lang/rust-bin
-BUILDLINK_PASSTHRU_DIRS+=		${PREFIX}/lib/rustlib
-.endif
-
-BUILDLINK_TREE+=	-rust-bin
diff --git a/rust176-bin/distinfo b/rust176-bin/distinfo
deleted file mode 100644
index 16024bce77..0000000000
--- a/rust176-bin/distinfo
+++ /dev/null
@@ -1,59 +0,0 @@
-$NetBSD: distinfo,v 1.29 2023/09/28 15:57:26 gdt Exp $
-
-BLAKE2s (rust-bin-1.76.0/rust-1.76.0-aarch64-apple-darwin.tar.gz) = dfb3791161a7af45da105e018cc2b4f2597c8a4e65de24cd7c60b109ec3287e1
-SHA512 (rust-bin-1.76.0/rust-1.76.0-aarch64-apple-darwin.tar.gz) = b6397cd4c247be029b88d5353d6bd681b1e6dbf16d93ae782af13f7de8c791b0adb73ea17730fa62053e62dfe74f3ab7533005dfe80ca6c128539ac0f2e2dd5e
-Size (rust-bin-1.76.0/rust-1.76.0-aarch64-apple-darwin.tar.gz) = 249531855 bytes
-BLAKE2s (rust-bin-1.76.0/rust-1.76.0-aarch64-unknown-linux-gnu.tar.gz) = 0fd32be80b5886deee6fcda864e95a8fbc0fe5902d93d91c767f0752172cc9ef
-SHA512 (rust-bin-1.76.0/rust-1.76.0-aarch64-unknown-linux-gnu.tar.gz) = eccf96573009538a8fddbac2c4340e7fe9a1b0b40f51a393f4d48eaa1558dd288c710b76327395a3bd5c9ab952c7dfe5e3624f36697c7857bc8ff832712d2e4b
-Size (rust-bin-1.76.0/rust-1.76.0-aarch64-unknown-linux-gnu.tar.gz) = 461921893 bytes
-BLAKE2s (rust-bin-1.76.0/rust-1.76.0-aarch64-unknown-linux-musl.tar.gz) = 5af5d01534e0726aabf316df00bce9b24e8c1861e6e79d07cc19192593a93294
-SHA512 (rust-bin-1.76.0/rust-1.76.0-aarch64-unknown-linux-musl.tar.gz) = 7aab97e1db8eaf7e473221ac1374c1cca33134d70e92312c635efb9255a99783d9c6a8d6947eb7691e57fd4eaa4eb3f7c936166e05a8231b20f372887705c886
-Size (rust-bin-1.76.0/rust-1.76.0-aarch64-unknown-linux-musl.tar.gz) = 372066702 bytes
-BLAKE2s (rust-bin-1.76.0/rust-1.76.0-aarch64-unknown-netbsd.tar.xz) = 0f7124b0c6a73947ddf76819af7fe692a185c96b139ae5fcc93ab29a483c40b5
-SHA512 (rust-bin-1.76.0/rust-1.76.0-aarch64-unknown-netbsd.tar.xz) = d1f8f749e5483ee8f375c03e1461dbc44700764eea1b70a3605eac4631c292a19e409dd1cba45f5d31c90b44b5dc8912d59c1d4d968106e3bd808d9725e23969
-Size (rust-bin-1.76.0/rust-1.76.0-aarch64-unknown-netbsd.tar.xz) = 163239404 bytes
-BLAKE2s (rust-bin-1.76.0/rust-1.76.0-aarch64_be-unknown-netbsd.tar.xz) = 0905eba5bb9d1dfdce3f169f415b7e915639d8ffdb0fb7ac3653f0ebf5d43da9
-SHA512 (rust-bin-1.76.0/rust-1.76.0-aarch64_be-unknown-netbsd.tar.xz) = f40935108fc5789dd28d4d02e2351e68d492393b0eb52fc4e0a9c8fc48d60eb4c5c32a30fb14c8f5e97a7bc4a6cae5cd4195b979da497589904661cc0a70091d
-Size (rust-bin-1.76.0/rust-1.76.0-aarch64_be-unknown-netbsd.tar.xz) = 162427248 bytes
-BLAKE2s (rust-bin-1.76.0/rust-1.76.0-armv6-unknown-netbsd-eabihf.tar.xz) = 27f9852b2fda9b9f421984d09c275b09fa13c9dca22131f741d55f31cf1c41d6
-SHA512 (rust-bin-1.76.0/rust-1.76.0-armv6-unknown-netbsd-eabihf.tar.xz) = 4b8771f4dfb77a437e70bddd11c7c7f3011a05278a7f5ee68384777f0674d7a89a5d65adaf18aeef73c3f36d1a9d9c0c85018cc4fdbf3ba4cca00b21d6a36bb0
-Size (rust-bin-1.76.0/rust-1.76.0-armv6-unknown-netbsd-eabihf.tar.xz) = 138929352 bytes
-BLAKE2s (rust-bin-1.76.0/rust-1.76.0-armv7-unknown-netbsd-eabihf.tar.xz) = 402b541df35624c18cf3fb71375878c890886a2344c777f48727e4e4091bd532
-SHA512 (rust-bin-1.76.0/rust-1.76.0-armv7-unknown-netbsd-eabihf.tar.xz) = 5616ab86b3a9fc3eaea90404e7f3683142550cc69beba3a31ad05ccbb02323890164d49dde95bc5d2752f2fa1ebf0f674faa00d1ef70bfa8e484a1e62638b402
-Size (rust-bin-1.76.0/rust-1.76.0-armv7-unknown-netbsd-eabihf.tar.xz) = 140850720 bytes
-BLAKE2s (rust-bin-1.76.0/rust-1.76.0-i586-unknown-netbsd.tar.xz) = 2699932e5fc3ea5de153d5eb878613c0dabdb0e23f20511968822cbf8a0bf27d
-SHA512 (rust-bin-1.76.0/rust-1.76.0-i586-unknown-netbsd.tar.xz) = ffb338ceb593308db86ce436f769a8da00d16dfe830bc6708cea012d7df8f90c01f55cf01ae9397573802f903c25d801bd8be354221a2e57ef77e2bbdd73deb9
-Size (rust-bin-1.76.0/rust-1.76.0-i586-unknown-netbsd.tar.xz) = 176714704 bytes
-BLAKE2s (rust-bin-1.76.0/rust-1.76.0-i686-unknown-linux-gnu.tar.gz) = 0c6a16c0a8f43260118d159947ddcf575662cc1f11c4b98d3ee49f952bfc8fa9
-SHA512 (rust-bin-1.76.0/rust-1.76.0-i686-unknown-linux-gnu.tar.gz) = 015f8fa17dcac31dd14c0d5125a1e2fcc199a6660628fd8b1a1c79ef3ed4225164443a1003dd480464cd49145461f58a64624e82dd991676771315e40ea17eff
-Size (rust-bin-1.76.0/rust-1.76.0-i686-unknown-linux-gnu.tar.gz) = 411504411 bytes
-BLAKE2s (rust-bin-1.76.0/rust-1.76.0-mipsel-unknown-netbsd.tar.xz) = 21a0939dc9fe2f7aa2a8d26a0aee021759a80b3256cea773d0c0087faf2aee4b
-SHA512 (rust-bin-1.76.0/rust-1.76.0-mipsel-unknown-netbsd.tar.xz) = b725b18e012fa80e389cbdef02a5795a1ba7c8ba0970ca921d329978e41661a1982c00a9437133588a3d287197ec9b03b6092e84503f275933a76976adccbfd9
-Size (rust-bin-1.76.0/rust-1.76.0-mipsel-unknown-netbsd.tar.xz) = 141716928 bytes
-BLAKE2s (rust-bin-1.76.0/rust-1.76.0-powerpc-unknown-netbsd.tar.xz) = f8d7fbac7022bb62ce9af91bdb1178f8a6b24163b91b44eca413d29f4566d0fa
-SHA512 (rust-bin-1.76.0/rust-1.76.0-powerpc-unknown-netbsd.tar.xz) = 059b9c5ed203927c10dee83d97fb5a1b467c580bfa6faf3785d346f0936d1cda068b7a9cd9df4de768ebf3e92b1e5b9bf5a638d76b4fe639e6bb45a466e0ff30
-Size (rust-bin-1.76.0/rust-1.76.0-powerpc-unknown-netbsd.tar.xz) = 187410204 bytes
-BLAKE2s (rust-bin-1.76.0/rust-1.76.0-riscv64gc-unknown-netbsd.tar.xz) = babe8e98cd6634e9a794c0da6a8b1ea0b6a0ff12648097e3102a7ec526d3dadc
-SHA512 (rust-bin-1.76.0/rust-1.76.0-riscv64gc-unknown-netbsd.tar.xz) = 0e4ae84e1619919267d40075c54e9b0579ee9afde186a18d1f8401129217cf4fdda2ccfd10f57c4eb5d50e02b468a32bca97d1eef66defa9378260a9994ee6c6
-Size (rust-bin-1.76.0/rust-1.76.0-riscv64gc-unknown-netbsd.tar.xz) = 173937160 bytes
-BLAKE2s (rust-bin-1.76.0/rust-1.76.0-sparc64-unknown-netbsd.tar.xz) = a542cec1f08307e7cebf9386dc7aa48fb8e02eec3df342203a371e3de797f617
-SHA512 (rust-bin-1.76.0/rust-1.76.0-sparc64-unknown-netbsd.tar.xz) = 5cdd98d845fda899430969f46116b3f94b16a91394af72ef4d5fc4df2eb6b611a897efc542710c734e701adaf9392aadd3ee2fa512bd2b3e368b8649a82ad4b8
-Size (rust-bin-1.76.0/rust-1.76.0-sparc64-unknown-netbsd.tar.xz) = 158099720 bytes
-BLAKE2s (rust-bin-1.76.0/rust-1.76.0-x86_64-apple-darwin.tar.gz) = 29e091e5e295a92728612a37abb9625d3f5dfe1f7c351cdd87a38940ef90a3a0
-SHA512 (rust-bin-1.76.0/rust-1.76.0-x86_64-apple-darwin.tar.gz) = 35823b826f9978f8ff9d44ac7df8e3bc4646651f07ece56fe92d305e53dda5d80288d055b6050ef92cf42b5bda18892adc677e6eb63795693572db407c97941f
-Size (rust-bin-1.76.0/rust-1.76.0-x86_64-apple-darwin.tar.gz) = 328963201 bytes
-BLAKE2s (rust-bin-1.76.0/rust-1.76.0-x86_64-unknown-freebsd.tar.gz) = d95c3d265fb6bc48eeaff9e5f9ff8692b0716429d45887a0dc82633288256878
-SHA512 (rust-bin-1.76.0/rust-1.76.0-x86_64-unknown-freebsd.tar.gz) = b87aa7d981cc039dcce713702b58dfb78412b4f912a40c67dc9128bde832c681909791516da27536c536075cc1621b2249d6278f2907f4825e6b17122f2c9edc
-Size (rust-bin-1.76.0/rust-1.76.0-x86_64-unknown-freebsd.tar.gz) = 312059401 bytes
-BLAKE2s (rust-bin-1.76.0/rust-1.76.0-x86_64-unknown-illumos.tar.gz) = 1a65c18867c7130710b2eb63c243cd4f6f0e2d809fddcbd0e4cc0a6a4f06f27a
-SHA512 (rust-bin-1.76.0/rust-1.76.0-x86_64-unknown-illumos.tar.gz) = 430b8330b2e7335b0a459c02aadb1c9af31dc2905348e78d4a854517c08628ce22624598103cb6d836fdfcabf388b253b9e15d61f718f7ab4586e20d4b0cd9f3
-Size (rust-bin-1.76.0/rust-1.76.0-x86_64-unknown-illumos.tar.gz) = 212187293 bytes
-BLAKE2s (rust-bin-1.76.0/rust-1.76.0-x86_64-unknown-linux-gnu.tar.gz) = f5ea832a1e58fbc9b9cf31dce3057d4bf899c365f0bdec24e4302660da8ffb1d
-SHA512 (rust-bin-1.76.0/rust-1.76.0-x86_64-unknown-linux-gnu.tar.gz) = 36233a5d5c121e08afa692a5af9f438022167bc782c8e147162ec3814c715ab3e22a916d5143aeda3629addc8cf5b99a794eb94219d6e9e350c054f9b339a865
-Size (rust-bin-1.76.0/rust-1.76.0-x86_64-unknown-linux-gnu.tar.gz) = 323520820 bytes
-BLAKE2s (rust-bin-1.76.0/rust-1.76.0-x86_64-unknown-linux-musl.tar.gz) = 1377afe3e78e1675ceebf417a54fee24e4dd28862b3297e5df44516d79914669
-SHA512 (rust-bin-1.76.0/rust-1.76.0-x86_64-unknown-linux-musl.tar.gz) = 9edeb8ade83fd0182313a9c05df1f6fbc64777929ba3b82467f4be024ab971eebfef42e203059d033cbc32a52306a89035eeb65c820d3abb6bbdf19d17ef996a
-Size (rust-bin-1.76.0/rust-1.76.0-x86_64-unknown-linux-musl.tar.gz) = 450390469 bytes
-BLAKE2s (rust-bin-1.76.0/rust-1.76.0-x86_64-unknown-netbsd.tar.gz) = 973814ac54ad2098137b43d2490e3db6d713145505498db3e36af7d954599ebd
-SHA512 (rust-bin-1.76.0/rust-1.76.0-x86_64-unknown-netbsd.tar.gz) = 7e0f6420efb3e2d41e6b91886ae676f0e1172135a69ac0c28f2f610ac6753874a00341a9164b7a8fc08416bab4a9cb5e1f841fc6632f79dd036b088b8ad21d52
-Size (rust-bin-1.76.0/rust-1.76.0-x86_64-unknown-netbsd.tar.gz) = 286161975 bytes
diff --git a/rust176-bin/files/install.sh b/rust176-bin/files/install.sh
deleted file mode 100644
index 1cc270c333..0000000000
--- a/rust176-bin/files/install.sh
+++ /dev/null
@@ -1,971 +0,0 @@
-#!/bin/bash
-# Copyright 2014 The Rust Project Developers. See the COPYRIGHT
-# file at the top-level directory of this distribution and at
-# http://rust-lang.org/COPYRIGHT.
-#
-# Licensed under the Apache License, Version 2.0 <LICENSE-APACHE or
-# http://www.apache.org/licenses/LICENSE-2.0> or the MIT license
-# <LICENSE-MIT or http://opensource.org/licenses/MIT>, at your
-# option. This file may not be copied, modified, or distributed
-# except according to those terms.
-
-# No undefined variables
-set -u
-
-init_logging() {
-    local _abs_libdir="$1"
-    local _logfile="$_abs_libdir/$TEMPLATE_REL_MANIFEST_DIR/install.log"
-    LOGFILE="$_logfile"
-}
-
-log_line() {
-    local _line="$1"
-
-}
-
-msg() {
-    local _line="install: ${1-}"
-    echo "$_line"
-    log_line "$_line"
-}
-
-verbose_msg() {
-    if [ -n "${CFG_VERBOSE-}" ]; then
-	msg "${1-}"
-    else
-	log_line "install: ${1-}"
-    fi
-}
-
-step_msg() {
-    msg
-    msg "$1"
-    msg
-}
-
-verbose_step_msg() {
-    if [ -n "${CFG_VERBOSE-}" ]; then
-	msg
-	msg "$1"
-	msg
-    else
-	log_line ""
-	log_line "install: $1"
-	log_line ""
-    fi
-}
-
-warn() {
-    local _line="install: WARNING: $1"
-    echo "$_line" >&2
-    log_line "$_line"
-}
-
-err() {
-    local _line="install: error: $1"
-    echo "$_line" >&2
-    log_line "$_line"
-    exit 1
-}
-
-# A non-user error that is likely to result in a corrupted install
-critical_err() {
-    local _line="install: error: $1. see logs at '${LOGFILE-}'"
-    echo "$_line" >&2
-    log_line "$_line"
-    exit 1
-}
-
-need_ok() {
-    if [ $? -ne 0 ]
-    then
-        err "$1"
-    fi
-}
-
-critical_need_ok() {
-    if [ $? -ne 0 ]
-    then
-        critical_err "$1"
-    fi
-}
-
-want_ok() {
-    if [ $? -ne 0 ]; then
-	warn "$1"
-    fi
-}
-
-assert_nz() {
-    if [ -z "$1" ]; then err "assert_nz $2"; fi
-}
-
-need_cmd() {
-    if command -v $1 >/dev/null 2>&1
-    then verbose_msg "found $1"
-    else err "need $1"
-    fi
-}
-
-run() {
-    local _line="\$ $*"
-    "$@"
-    local _retval=$?
-    log_line "$_line"
-    return $_retval
-}
-
-write_to_file() {
-    local _msg="$1"
-    local _file="$2"
-    local _line="$ echo \"$_msg\" > \"$_file\""
-    echo "$_msg" > "$_file"
-    local _retval=$?
-    log_line "$_line"
-    return $_retval
-}
-
-append_to_file() {
-    local _msg="$1"
-    local _file="$2"
-    local _line="$ echo \"$_msg\" >> \"$_file\""
-    echo "$_msg" >> "$_file"
-    local _retval=$?
-    log_line "$_line"
-    return $_retval
-}
-
-make_dir_recursive() {
-    local _dir="$1"
-    local _line="$ umask 022 && mkdir -p \"$_dir\""
-    umask 022 && mkdir -p "$_dir"
-    local _retval=$?
-    log_line "$_line"
-    return $_retval
-}
-
-putvar() {
-    local t
-    local tlen
-    eval t=\$$1
-    eval tlen=\${#$1}
-}
-
-valopt() {
-    VAL_OPTIONS="$VAL_OPTIONS $1"
-
-    local op=$1
-    local default=$2
-    shift
-    shift
-    local doc="$*"
-    if [ $HELP -eq 0 ]
-    then
-        local uop=$(echo $op | tr 'a-z-' 'A-Z_')
-        local v="CFG_${uop}"
-        eval $v="$default"
-        for arg in $CFG_ARGS
-        do
-            if echo "$arg" | grep -q -- "--$op="
-            then
-                local val=$(echo "$arg" | cut -f2 -d=)
-                eval $v=$val
-            fi
-        done
-        putvar $v
-    else
-        if [ -z "$default" ]
-        then
-            default="<none>"
-        fi
-        op="${op}=[${default}]"
-        printf "    --%-30s %s\n" "$op" "$doc"
-    fi
-}
-
-opt() {
-    BOOL_OPTIONS="$BOOL_OPTIONS $1"
-
-    local op=$1
-    local default=$2
-    shift
-    shift
-    local doc="$*"
-    local flag=""
-
-    if [ $default -eq 0 ]
-    then
-        flag="enable"
-    else
-        flag="disable"
-        doc="don't $doc"
-    fi
-
-    if [ $HELP -eq 0 ]
-    then
-        for arg in $CFG_ARGS
-        do
-            if [ "$arg" = "--${flag}-${op}" ]
-            then
-                op=$(echo $op | tr 'a-z-' 'A-Z_')
-                flag=$(echo $flag | tr 'a-z' 'A-Z')
-                local v="CFG_${flag}_${op}"
-                eval $v=1
-                putvar $v
-            fi
-        done
-    else
-        if [ ! -z "${META-}" ]
-        then
-            op="$op=<$META>"
-        fi
-        printf "    --%-30s %s\n" "$flag-$op" "$doc"
-     fi
-}
-
-flag() {
-    BOOL_OPTIONS="$BOOL_OPTIONS $1"
-
-    local op=$1
-    shift
-    local doc="$*"
-
-    if [ $HELP -eq 0 ]
-    then
-        for arg in $CFG_ARGS
-        do
-            if [ "$arg" = "--${op}" ]
-            then
-                op=$(echo $op | tr 'a-z-' 'A-Z_')
-                local v="CFG_${op}"
-                eval $v=1
-                putvar $v
-            fi
-        done
-    else
-        if [ ! -z "${META-}" ]
-        then
-            op="$op=<$META>"
-        fi
-        printf "    --%-30s %s\n" "$op" "$doc"
-     fi
-}
-
-validate_opt () {
-    for arg in $CFG_ARGS
-    do
-        local is_arg_valid=0
-        for option in $BOOL_OPTIONS
-        do
-            if test --disable-$option = $arg
-            then
-                is_arg_valid=1
-            fi
-            if test --enable-$option = $arg
-            then
-                is_arg_valid=1
-            fi
-            if test --$option = $arg
-            then
-                is_arg_valid=1
-            fi
-        done
-        for option in $VAL_OPTIONS
-        do
-            if echo "$arg" | grep -q -- "--$option="
-            then
-                is_arg_valid=1
-            fi
-        done
-        if [ "$arg" = "--help" ]
-        then
-            echo
-            echo "No more help available for Configure options,"
-            echo "check the Wiki or join our IRC channel"
-            break
-        else
-            if test $is_arg_valid -eq 0
-            then
-                err "Option '$arg' is not recognized"
-            fi
-        fi
-    done
-}
-
-absolutify() {
-    local file_path="$1"
-    local file_path_dirname="$(dirname "$file_path")"
-    local file_path_basename="$(basename "$file_path")"
-    local file_abs_path="$(abs_path "$file_path_dirname")"
-    local file_path="$file_abs_path/$file_path_basename"
-    # This is the return value
-    RETVAL="$file_path"
-}
-
-# Prints the absolute path of a directory to stdout
-abs_path() {
-    local path="$1"
-    # Unset CDPATH because it causes havok: it makes the destination unpredictable
-    # and triggers 'cd' to print the path to stdout. Route `cd`'s output to /dev/null
-    # for good measure.
-    (unset CDPATH && cd "$path" > /dev/null && pwd)
-}
-
-uninstall_legacy() {
-    local _abs_libdir="$1"
-
-    local _uninstalled_something=false
-
-    # Replace commas in legacy manifest list with spaces
-    _legacy_manifest_dirs=`echo "$TEMPLATE_LEGACY_MANIFEST_DIRS" | sed "s/,/ /g"`
-
-    # Uninstall from legacy manifests
-    local _md
-    for _md in $_legacy_manifest_dirs; do
-	# First, uninstall from the installation prefix.
-	# Errors are warnings - try to rm everything in the manifest even if some fail.
-	if [ -f "$_abs_libdir/$_md/manifest" ]
-	then
-
-	    # iterate through installed manifest and remove files
-	    local _p;
-	    while read _p; do
-		# the installed manifest contains absolute paths
-		msg "removing legacy file $_p"
-		if [ -f "$_p" ]
-		then
-		    run rm -f "$_p"
-		    want_ok "failed to remove $_p"
-		else
-		    warn "supposedly installed file $_p does not exist!"
-		fi
-	    done < "$_abs_libdir/$_md/manifest"
-
-	    # If we fail to remove $md below, then the
-	    # installed manifest will still be full; the installed manifest
-	    # needs to be empty before install.
-	    msg "removing legacy manifest $_abs_libdir/$_md/manifest"
-	    run rm -f "$_abs_libdir/$_md/manifest"
-	    # For the above reason, this is a hard error
-	    need_ok "failed to remove installed manifest"
-
-	    # Remove $template_rel_manifest_dir directory
-	    msg "removing legacy manifest dir $_abs_libdir/$_md"
-	    run rm -R "$_abs_libdir/$_md"
-	    want_ok "failed to remove $_md"
-
-	    _uninstalled_something=true
-	fi
-    done
-
-    RETVAL="$_uninstalled_something"
-}
-
-uninstall_components() {
-    local _abs_libdir="$1"
-    local _dest_prefix="$2"
-    local _components="$3"
-
-    # We're going to start by uninstalling existing components. This
-    local _uninstalled_something=false
-
-    # First, try removing any 'legacy' manifests from before
-    # rust-installer
-    uninstall_legacy "$_abs_libdir"
-    assert_nz "$RETVAL", "RETVAL"
-    if [ "$RETVAL" = true ]; then
-	_uninstalled_something=true;
-    fi
-
-    # Load the version of the installed installer
-    local _installed_version=
-    if [ -f "$abs_libdir/$TEMPLATE_REL_MANIFEST_DIR/rust-installer-version" ]; then
-	_installed_version=`cat "$_abs_libdir/$TEMPLATE_REL_MANIFEST_DIR/rust-installer-version"`
-
-	# Sanity check
-	if [ ! -n "$_installed_version" ]; then critical_err "rust installer version is empty"; fi
-    fi
-
-    # If there's something installed, then uninstall
-    if [ -n "$_installed_version" ]; then
-	# Check the version of the installed installer
-	case "$_installed_version" in
-
-	    # If this is a previous version, then upgrade in place to the
-	    # current version before uninstalling.
-	    2 )
-		# The only change between version 2 -> 3 is that components are placed
-		# in subdirectories of the installer tarball. There are no changes
-		# to the installed data format, so nothing to do.
-		;;
-
-	    # This is the current version. Nothing need to be done except uninstall.
-	    "$TEMPLATE_RUST_INSTALLER_VERSION")
-		;;
-
-	    # If this is an unknown (future) version then bail.
-	    * )
-		echo "The copy of $TEMPLATE_PRODUCT_NAME at $_dest_prefix was installed using an"
-		echo "unknown version ($_installed_version) of rust-installer."
-		echo "Uninstall it first with the installer used for the original installation"
-		echo "before continuing."
-		exit 1
-		;;
-	esac
-
-	local _md="$_abs_libdir/$TEMPLATE_REL_MANIFEST_DIR"
-	local _installed_components="$(cat "$_md/components")"
-
-	# Uninstall (our components only) before reinstalling
-	local _available_component
-	for _available_component in $_components; do
-	    local _installed_component
-	    for _installed_component in $_installed_components; do
-		if [ "$_available_component" = "$_installed_component" ]; then
-		    msg "uninstalling component '$_available_component'"
-		    local _component_manifest="$_md/manifest-$_installed_component"
-
-		    # Sanity check: there should be a component manifest
-		    if [ ! -f "$_component_manifest" ]; then
-			critical_err "installed component '$_installed_component' has no manifest"
-		    fi
-
-		    # Iterate through installed component manifest and remove files
-		    local _directive
-		    while read _directive; do
-
-			local _command=${_directive%%:*}
-			local _file=${_directive#*:}
-
-			# Sanity checks
-			if [ ! -n "$_command" ]; then critical_err "malformed installation directive"; fi
-			if [ ! -n "$_file" ]; then critical_err "malformed installation directive"; fi
-
-			case "$_command" in
-			    file)
-				verbose_msg "removing file $_file"
-				if [ -f "$_file" ]; then
-				    run rm -f "$_file"
-				    want_ok "failed to remove $_file"
-				else
-				    warn "supposedly installed file $_file does not exist!"
-				fi
-				;;
-
-			    dir)
-				verbose_msg "removing directory $_file"
-				run rm -r "$_file"
-				want_ok "unable to remove directory $_file"
-				;;
-
-			    *)
-				critical_err "unknown installation directive"
-				;;
-			esac
-
-		    done < "$_component_manifest"
-
-		    # Remove the installed component manifest
-		    verbose_msg "removing component manifest $_component_manifest"
-		    run rm "$_component_manifest"
-		    # This is a hard error because the installation is unrecoverable
-		    critical_need_ok "failed to remove installed manifest for component '$_installed_component'"
-
-		    # Update the installed component list
-		    local _modified_components="$(sed "/^$_installed_component\$/d" "$_md/components")"
-		    write_to_file "$_modified_components" "$_md/components"
-		    critical_need_ok "failed to update installed component list"
-		fi
-	    done
-	done
-
-	# If there are no remaining components delete the manifest directory,
-	# but only if we're doing an uninstall - if we're doing an install,
-	# then leave the manifest directory around to hang onto the logs,
-	# and any files not managed by the installer.
-	if [ -n "${CFG_UNINSTALL-}" ]; then
-	    local _remaining_components="$(cat "$_md/components")"
-	    if [ ! -n "$_remaining_components" ]; then
-		verbose_msg "removing manifest directory $_md"
-		run rm -r "$_md"
-		want_ok "failed to remove $_md"
-
-		maybe_unconfigure_ld
-	    fi
-	fi
-
-	_uninstalled_something=true
-    fi
-
-    # There's no installed version. If we were asked to uninstall, then that's a problem.
-    if [ -n "${CFG_UNINSTALL-}" -a "$_uninstalled_something" = false ]
-    then
-	err "unable to find installation manifest at $CFG_LIBDIR/$TEMPLATE_REL_MANIFEST_DIR"
-    fi
-}
-
-install_components() {
-    local _src_dir="$1"
-    local _abs_libdir="$2"
-    local _dest_prefix="$3"
-    local _components="$4"
-
-    local _component
-    for _component in $_components; do
-
-	msg "installing component '$_component'"
-
-	# The file name of the manifest we're installing from
-	local _input_manifest="$_src_dir/$_component/manifest.in"
-
-	# Sanity check: do we have our input manifests?
-	if [ ! -f "$_input_manifest" ]; then
-	    critical_err "manifest for $_component does not exist at $_input_manifest"
-	fi
-
-	# The installed manifest directory
-	local _md="$_abs_libdir/$TEMPLATE_REL_MANIFEST_DIR"
-
-	# The file name of the manifest we're going to create during install
-	local _installed_manifest="$_md/manifest-$_component"
-
-	# Create the installed manifest, which we will fill in with absolute file paths
-	touch "$_installed_manifest"
-	critical_need_ok "failed to create installed manifest"
-
-	# Add this component to the installed component list
-	append_to_file "$_component" "$_md/components"
-	critical_need_ok "failed to update components list for $_component"
-
-	# Now install, iterate through the new manifest and copy files
-	local _directive
-	while read _directive; do
-
-	    local _command=${_directive%%:*}
-	    local _file=${_directive#*:}
-
-	    # Sanity checks
-	    if [ ! -n "$_command" ]; then critical_err "malformed installation directive"; fi
-	    if [ ! -n "$_file" ]; then critical_err "malformed installation directive"; fi
-
-	    # Decide the destination of the file
-	    local _file_install_path="$_dest_prefix/$_file"
-
-	    case "$_file" in
-		etc/*)
-		    local _f=${_file#"etc/"}
-		    _file_install_path="$CFG_DESTDIR_PREFIX/share/doc/cargo/$_f"
-		    ;;
-		bin/*)
-		    local _f=${_file#"bin/"}
-		    _file_install_path="$CFG_BINDIR/$_f"
-		    ;;
-		lib/*)
-		    local _f=${_file#"lib/"}
-		    _file_install_path="$CFG_LIBDIR/$_f"
-		    ;;
-		share/man/*)
-		    local _f=${_file#"share/man/"}
-		    _file_install_path="$CFG_DESTDIR_PREFIX/$PKGMANDIR/$_f"
-		    ;;
-		share/doc/*)
-            # HACK: Try to support overriding --docdir.  Paths with the form
-            # "share/doc/$product/" can be redirected to a single --docdir
-            # path. If the following detects that --docdir has been specified
-            # then it will replace everything preceeding the "$product" path
-            # component. The problem here is that the combined rust installer
-            # contains two "products": rust and cargo; so the contents of those
-            # directories will both be dumped into the same directory; and the
-            # contents of those directories are _not_ disjoint. Since this feature
-            # is almost entirely to support 'make install' anyway I don't expect
-            # this problem to be a big deal in practice.
-		    if [ "$CFG_DOCDIR" != "<default>" ]; then
-			local _f=${_file#"share/doc/"*/}
-			_file_install_path="$CFG_DOCDIR/$_f"
-		    fi
-		    ;;
-		share/*)
-		    local _f=${_file#"share/"}
-		    _file_install_path="$CFG_DATADIR/$_f"
-		    ;;
-	    esac
-
-
-	    # Make sure there's a directory for it
-	    make_dir_recursive "$(dirname "$_file_install_path")"
-	    critical_need_ok "directory creation failed"
-
-	    # Make the path absolute so we can uninstall it later without
-	    # starting from the installation cwd
-	    absolutify "$_file_install_path"
-	    _file_install_path="$RETVAL"
-	    assert_nz "$_file_install_path" "file_install_path"
-
-	    case "$_command" in
-		file )
-
-		    verbose_msg "copying file $_file_install_path"
-
-		    maybe_backup_path "$_file_install_path"
-
-		    local mode=644
-		    if test -x "$_src_dir/$_component/$_file"; then
-			mode=755
-		    fi
-		    case "$_file" in
-			bin/*) mode=755
-			       ;;
-		    esac
-		    run cp "$_src_dir/$_component/$_file" "$_file_install_path"
-		    run chmod $mode "$_file_install_path"
-		    critical_need_ok "file creation failed"
-
-		    # Update the manifest
-		    append_to_file "file:$_file_install_path" "$_installed_manifest"
-		    critical_need_ok "failed to update manifest"
-
-		    ;;
-
-		dir )
-
-		    verbose_msg "copying directory $_file_install_path"
-
-		    maybe_backup_path "$_file_install_path"
-
-		    run cp -R "$_src_dir/$_component/$_file" "$_file_install_path"
-		    critical_need_ok "failed to copy directory"
-
-                    # Set permissions. 0755 for dirs, 644 for files
-                    run chmod -R u+rwX,go+rX,go-w "$_file_install_path"
-                    critical_need_ok "failed to set permissions on directory"
-
-		    # Update the manifest
-		    append_to_file "dir:$_file_install_path" "$_installed_manifest"
-		    critical_need_ok "failed to update manifest"
-		    ;;
-
-		*)
-		    critical_err "unknown installation directive"
-		    ;;
-	    esac
-	done < "$_input_manifest"
-
-    done
-}
-
-maybe_configure_ld() {
-    local _abs_libdir="$1"
-
-    local _ostype="$(uname -s)"
-    assert_nz "$_ostype"  "ostype"
-
-    if [ "$_ostype" = "Linux" -a ! -n "${CFG_DISABLE_LDCONFIG-}" ]; then
-
-	# Fedora-based systems do not configure the dynamic linker to look
-	# /usr/local/lib, which is our default installation directory. To
-	# make things just work, try to put that directory in
-	# /etc/ld.so.conf.d/rust-installer-v1 so ldconfig picks it up.
-	# Issue #30.
-	#
-	# This will get rm'd when the last component is uninstalled in
-	# maybe_unconfigure_ld.
-	if [ "$_abs_libdir" = "/usr/local/lib" -a -d "/etc/ld.so.conf.d" ]; then
-	    echo "$_abs_libdir" > "/etc/ld.so.conf.d/rust-installer-v1-$TEMPLATE_REL_MANIFEST_DIR.conf"
-	    if [ $? -ne 0 ]; then
-		# This shouldn't happen if we've gotten this far
-		# installing to /usr/local
-		warn "failed to update /etc/ld.so.conf.d. this is unexpected"
-	    fi
-	fi
-
-	verbose_msg "running ldconfig"
-	if [ -n "${CFG_VERBOSE-}" ]; then
-	    ldconfig
-	else
-	    ldconfig 2> /dev/null
-	fi
-	if [ $? -ne 0 ]
-	then
-            warn "failed to run ldconfig. this may happen when not installing as root. run with --verbose to see the error"
-	fi
-    fi
-}
-
-maybe_unconfigure_ld() {
-    local _ostype="$(uname -s)"
-    assert_nz "$_ostype"  "ostype"
-
-    if [ "$_ostype" != "Linux" ]; then
-	return 0
-    fi
-
-    rm "/etc/ld.so.conf.d/rust-installer-v1-$TEMPLATE_REL_MANIFEST_DIR.conf" 2> /dev/null
-    # Above may fail since that file may not have been created on install
-}
-
-# Doing our own 'install'-like backup that is consistent across platforms
-maybe_backup_path() {
-    local _file_install_path="$1"
-
-    if [ -e "$_file_install_path" ]; then
-	msg "backing up existing file at $_file_install_path"
-	run mv -f "$_file_install_path" "$_file_install_path.old"
-	critical_need_ok "failed to back up $_file_install_path"
-    fi
-}
-
-install_uninstaller() {
-    local _src_dir="$1"
-    local _src_basename="$2"
-    local _abs_libdir="$3"
-
-    local _uninstaller="$_abs_libdir/$TEMPLATE_REL_MANIFEST_DIR/uninstall.sh"
-    msg "creating uninstall script at $_uninstaller"
-    run cp "$_src_dir/$_src_basename" "$_uninstaller"
-    critical_need_ok "unable to install uninstaller"
-}
-
-do_preflight_sanity_checks() {
-    local _src_dir="$1"
-    local _dest_prefix="$2"
-
-    # Sanity check: can we can write to the destination?
-    verbose_msg "verifying destination is writable"
-    make_dir_recursive "$CFG_LIBDIR"
-    need_ok "can't write to destination. consider \`sudo\`."
-    touch "$CFG_LIBDIR/rust-install-probe" > /dev/null
-    if [ $? -ne 0 ]
-    then
-	err "can't write to destination. consider \`sudo\`."
-    fi
-    rm "$CFG_LIBDIR/rust-install-probe"
-    need_ok "failed to remove install probe"
-
-    # Sanity check: don't install to the directory containing the installer.
-    # That would surely cause chaos.
-    verbose_msg "verifying destination is not the same as source"
-    local _prefix_dir="$(abs_path "$dest_prefix")"
-    if [ "$_src_dir" = "$_dest_prefix" -a "${CFG_UNINSTALL-}" != 1 ]; then
-	err "cannot install to same directory as installer"
-    fi
-}
-
-verbose_msg "looking for install programs"
-verbose_msg
-
-need_cmd mkdir
-need_cmd printf
-need_cmd cut
-need_cmd grep
-need_cmd uname
-need_cmd tr
-need_cmd sed
-need_cmd chmod
-need_cmd env
-need_cmd pwd
-
-CFG_ARGS="${@:-}"
-
-HELP=0
-if [ "${1-}" = "--help" ]
-then
-    HELP=1
-    shift
-    echo
-    echo "Usage: $0 [options]"
-    echo
-    echo "Options:"
-    echo
-else
-    verbose_step_msg "processing arguments"
-fi
-
-OPTIONS=""
-BOOL_OPTIONS=""
-VAL_OPTIONS=""
-
-flag uninstall "only uninstall from the installation prefix"
-valopt destdir "" "set installation root"
-valopt prefix "/usr/local" "set installation prefix"
-
-# Avoid prepending an extra / to the prefix path if there's no destdir
-# NB: CFG vars here are undefined when passing --help
-if [ -z "${CFG_DESTDIR-}" ]; then
-    CFG_DESTDIR_PREFIX="${CFG_PREFIX-}"
-else
-    CFG_DESTDIR_PREFIX="$CFG_DESTDIR/$CFG_PREFIX"
-fi
-
-# NB This isn't quite the same definition as in `configure`.
-# just using 'lib' instead of configure's CFG_LIBDIR_RELATIVE
-valopt without "" "comma-separated list of components to not install"
-valopt components "" "comma-separated list of components to install"
-flag list-components "list available components"
-valopt sysconfdir "$CFG_DESTDIR_PREFIX/etc" "install system configuration files"
-valopt bindir "$CFG_DESTDIR_PREFIX/bin" "install binaries"
-valopt libdir "$CFG_DESTDIR_PREFIX/lib" "install libraries"
-valopt datadir "$CFG_DESTDIR_PREFIX/share" "install data"
-# NB We repeat datadir default value because we don't set CFG_DATADIR in --help
-valopt mandir "${CFG_DATADIR-"$CFG_DESTDIR_PREFIX/share"}/man" "install man pages in PATH"
-# NB See the docdir handling in install_components for an explanation of this
-# weird <default> string
-valopt docdir "\<default\>" "install documentation in PATH"
-opt ldconfig 1 "run ldconfig after installation (Linux only)"
-opt verify 1 "obsolete"
-flag verbose "run with verbose output"
-
-if [ $HELP -eq 1 ]
-then
-    echo
-    exit 0
-fi
-
-verbose_step_msg "validating arguments"
-validate_opt
-
-# Template configuration.
-# These names surrounded by '%%` are replaced by sed when generating install.sh
-# FIXME: Might want to consider loading this from a file and not generating install.sh
-
-# Rust or Cargo
-TEMPLATE_PRODUCT_NAME='Rust'
-# rustlib or cargo
-TEMPLATE_REL_MANIFEST_DIR=rustlib
-# 'Rust is ready to roll.' or 'Cargo is cool to cruise.'
-TEMPLATE_SUCCESS_MESSAGE='rust installed.'
-# Locations to look for directories containing legacy, pre-versioned manifests
-TEMPLATE_LEGACY_MANIFEST_DIRS='rustlib,cargo'
-# The installer version
-TEMPLATE_RUST_INSTALLER_VERSION='3'
-
-# OK, let's get installing ...
-
-# This is where we are installing from
-src_dir="$(abs_path $(dirname "$0"))"
-
-# The name of the script
-src_basename="$(basename "$0")"
-
-# If we've been run as 'uninstall.sh' (from the existing installation)
-# then we're doing a full uninstall, as opposed to the --uninstall flag
-# which just means 'uninstall my components'.
-if [ "$src_basename" = "uninstall.sh" ]; then
-    if [ "${*:-}" != "" ]; then
-	# Currently don't know what to do with arguments in this mode
-	err "uninstall.sh does not take any arguments"
-    fi
-    CFG_UNINSTALL=1
-    CFG_DESTDIR_PREFIX="$(abs_path "$src_dir/../../")"
-    CFG_LIBDIR="$(abs_path "$src_dir/../")"
-fi
-
-# This is where we are installing to
-dest_prefix="$CFG_DESTDIR_PREFIX"
-
-# Open the components file to get the list of components to install.
-# NB: During install this components file is read from the installer's
-# source dir, during a full uninstall it's read from the manifest dir,
-# and thus contains all installed components.
-components=`cat "$src_dir/components"`
-
-# Sanity check: do we have components?
-if [ ! -n "$components" ]; then
-    err "unable to find installation components"
-fi
-
-# If the user asked for a component list, do that and exit
-if [ -n "${CFG_LIST_COMPONENTS-}" ]; then
-    echo
-    echo "# Available components"
-    echo
-    for component in $components; do
-	echo "* $component"
-    done
-    echo
-    exit 0
-fi
-
-# If the user specified which components to install/uninstall,
-# then validate that they exist and select them for installation
-if [ -n "$CFG_COMPONENTS" ]; then
-    # Remove commas
-    user_components="$(echo "$CFG_COMPONENTS" | sed "s/,/ /g")"
-    for user_component in $user_components; do
-	found=false
-	for my_component in $components; do
-	    if [ "$user_component" = "$my_component" ]; then
-		found=true
-	    fi
-	done
-	if [ "$found" = false ]; then
-	    err "unknown component: $user_component"
-	fi
-    done
-    components="$user_components"
-fi
-
-if [ -n "$CFG_WITHOUT" ]; then
-    without_components="$(echo "$CFG_WITHOUT" | sed "s/,/ /g")"
-    for without_component in $without_components; do
-	components="$(echo "$components" | sed "s/$without_component//" | sed "s/$without_component//")"
-    done
-fi
-
-if [ -z "$components" ]; then
-    if [ -z "${CFG_UNINSTALL-}" ]; then
-	err "no components selected for installation"
-    else
-	err "no components selected for uninstallation"
-    fi
-fi
-
-do_preflight_sanity_checks "$src_dir" "$dest_prefix"
-
-# Using an absolute path to libdir in a few places so that the status
-# messages are consistently using absolute paths.
-absolutify "$CFG_LIBDIR"
-abs_libdir="$RETVAL"
-assert_nz "$abs_libdir" "abs_libdir"
-
-# Create the manifest directory, where we will put our logs
-make_dir_recursive "$abs_libdir/$TEMPLATE_REL_MANIFEST_DIR"
-need_ok "failed to create $TEMPLATE_REL_MANIFEST_DIR"
-
-# Log messages and commands
-init_logging "$abs_libdir"
-
-# First do any uninstallation, including from legacy manifests. This
-# will also upgrade the metadata of existing installs.
-uninstall_components "$abs_libdir" "$dest_prefix" "$components"
-
-# If we're only uninstalling then exit
-if [ -n "${CFG_UNINSTALL-}" ]
-then
-    echo
-    echo "    $TEMPLATE_PRODUCT_NAME is uninstalled."
-    echo
-    exit 0
-fi
-
-# Create the manifest directory again! uninstall_legacy
-# may have deleted it.
-make_dir_recursive "$abs_libdir/$TEMPLATE_REL_MANIFEST_DIR"
-need_ok "failed to create $TEMPLATE_REL_MANIFEST_DIR"
-
-# Drop the version number into the manifest dir
-write_to_file "$TEMPLATE_RUST_INSTALLER_VERSION" "$abs_libdir/$TEMPLATE_REL_MANIFEST_DIR/rust-installer-version"
-critical_need_ok "failed to write installer version"
-
-# Install the uninstaller
-
-# Install each component
-install_components "$src_dir" "$abs_libdir" "$dest_prefix" "$components"
-
-# Make dynamic libraries available to the linker
-maybe_configure_ld "$abs_libdir"
-
-echo
-echo "    $TEMPLATE_SUCCESS_MESSAGE"
-echo
-
-
diff --git a/rust176/DESCR b/rust176/DESCR
deleted file mode 100644
index 6dc90a671e..0000000000
--- a/rust176/DESCR
+++ /dev/null
@@ -1,13 +0,0 @@
-Rust is a systems programming language focused on three goals: safety,
-speed, and concurrency.  It maintains these goals without having a
-garbage collector, making it a useful language for a number of use cases
-other languages aren't good at: embedding in other languages, programs
-with specific space and time requirements, and writing low-level code,
-like device drivers and operating systems.
-
-It improves on current languages targeting this space by having a number
-of compile-time safety checks that produce no runtime overhead, while
-eliminating all data races.  Rust also aims to achieve "zero-cost
-abstractions" even though some of these abstractions feel like those of
-a high-level language.  Even then, Rust still allows precise control
-like a low-level language would.
diff --git a/rust176/HOWTO-BOOTSTRAP b/rust176/HOWTO-BOOTSTRAP
deleted file mode 100644
index 81133db2ec..0000000000
--- a/rust176/HOWTO-BOOTSTRAP
+++ /dev/null
@@ -1,85 +0,0 @@
-How to build a rust bootstrap kit using pkgsrc
-----------------------------------------------
-
-A rust bootstrap kit is simply a pre-compiled binary of rust and
-the rust standard library, and contains the "rust" and "rust-std"
-build results, found in
-
-   work/rustc-<version>/build/dist/
-as
-   rust-<version>-<target>.tar.xz
-and
-   rust-std-<version>-<target>.tar.xz
-
-These result files are produced when the "dist" build target is
-used, ref. BUILD_TARGET.   For a normal native build of the rust
-pkgsrc package, the default BUILD_TARGET is "build", not "dist".
-
-There are two possible ways to produce a bootstrap kit:
-
-1) a native build.  This requires minimum preparation, except
-   possibly for setting rust.BUILD_TARGET to "dist" via e.g.
-   /etc/mk.conf.  Note that on NetBSD, using the "BUILD_TARGET" ==
-   "dist" results in the "rust-cargo-static" option being set, ref.
-   options.mk.  This is so that the resulting bootstrap kits are
-   built with mostly-static linking, reducing the run-time dependencies
-   of the bootstrap kits.
-
-2) a cross-build.  This requires a bit of preparation:
-
-   For each target you want to cross-build rust for, you need
-     - the cross toolchain resulting from "build.sh tools" for
-       the intended target
-     - an OS distribution extracted, including the comp.tgz
-       set so that the target's include files can be used
-     - for 32-bit ports, the "libatomic" package needs to be
-       available.  I'm sure there's a clever and long-winded
-       use of pkg_install which can be used to effect this;
-       I on my hand have always just extracted the tgz file
-       and done the minimal cleanup of the "cruft" files
-       which are part of the package meta-data.
-     - Pick a root directory for the target, e.g. /u/i386.
-       Below this directory place the "tools" containing
-       the cross-compiler in a "tools" sub-directory.
-       Similarly, the extracted OS distribution in the "dest"
-       sub-directory.
-
-   There are two methods available for doing the cross-compile:
-
-   a) Using the "cross.mk" file.  For an i386 build against i586, the
-      following settings should be active:
-
-CROSS_ROOT=            /u/i386
-MAKE_ENV+=             CROSS_ROOT=${CROSS_ROOT}
-GNU_CROSS_TARGET=      i486--netbsdelf
-MAKE_ENV+=             GNU_CROSS_TARGET=${GNU_CROSS_TARGET}
-TARGET=                i586-unknown-netbsd
-SCRIPTS=               ${WRKDIR}/scripts
-CONFIGURE_ARGS+=       --host=${TARGET}
-CONFIGURE_ARGS+=       --target=${TARGET}
-CONFIGURE_ARGS+=       --set=target.${TARGET}.cc=${SCRIPTS}/gcc-wrap
-CONFIGURE_ARGS+=       --set=target.${TARGET}.cxx=${SCRIPTS}/c++-wrap
-CONFIGURE_ARGS+=       --set=target.${TARGET}.linker=${SCRIPTS}/gcc-wrap
-CONFIGURE_ARGS+=       --set=target.${TARGET}.ar=${CROSS_ROOT}/tools/bin/${GNU_CROSS_TARGET}-ar
-
-      Then doing a "make" will cross-build rust, including the LLVM
-      embedded in the rust distribution, ref. the defaulting of that
-      option when TARGET is defined ref. options.mk.
-
-      Note that when TARGET is set, the default build target for
-      the rust makefile becomes "dist", so there's no need to set
-      rust.BUILD_TARGET for cross-builds.
-
-   b) Using the "do-cross.mk" Makefile.  This will attempt to
-      cross-build rust for all the targets listed in the SHORT_TARGETS
-      variable in that file.  Overriding the root directories for
-      the various targets can be done by making your own "local-roots.mk"
-      file, ref. "do-cross.mk".
-
-      This will create a "dist" subdirectory in the rust pkgsrc
-      directory, and the bootstrap kits for each architecture, plus
-      the library source kit will be placed in this directory.
-
-The bootstrap kits can then be placed in /usr/pkgsrc/distfiles, and
-be used by the "next" rust version, where you can use "make makesum"
-to compute the updated checksums for the bootstrap kits.
diff --git a/rust176/Makefile b/rust176/Makefile
deleted file mode 100644
index fc8a99d1a0..0000000000
--- a/rust176/Makefile
+++ /dev/null
@@ -1,703 +0,0 @@
-# $NetBSD: Makefile,v 1.284 2023/06/19 14:46:47 bsiegert Exp $
-
-DISTNAME=	rustc-1.76.0-src
-PKGNAME=	${DISTNAME:S/rustc/rust/:S/-src//}
-CATEGORIES=	lang
-MASTER_SITES=	https://static.rust-lang.org/dist/
-
-MAINTAINER=	pkgsrc-users%NetBSD.org@localhost
-HOMEPAGE=	https://www.rust-lang.org/
-COMMENT=	Safe, concurrent, practical language
-LICENSE=	mit OR apache-2.0
-
-CONFLICTS+=	rust-bin-[0-9]*
-
-# LLVM uses -std=c++17
-USE_CXX_FEATURES+=	c++17
-USE_GCC_RUNTIME=	yes
-USE_LANGUAGES=		c c++
-USE_LIBTOOL=		yes
-USE_TOOLS+=		bash grep gmake perl:build pkg-config
-
-# The NetBSD bootstraps are built for NetBSD 8 (because rust doesn't
-# build on 7).  Mark earlier versions as broken.
-BROKEN_ON_PLATFORM+=	NetBSD-[1-7].*-*
-# Bootstrap is built for NetBSD 9.x on these platforms:
-BROKEN_ON_PLATFORM+=	NetBSD-8.*-*arm*
-BROKEN_ON_PLATFORM+=	NetBSD-8.*-aarch64
-BROKEN_ON_PLATFORM+=	NetBSD-8.*-sparc64
-BROKEN_ON_PLATFORM+=	NetBSD-8.*-powerpc
-BROKEN_ON_PLATFORM+=	NetBSD-8.*-i386
-
-HAS_CONFIGURE=		yes
-PYTHON_FOR_BUILD_ONLY=	yes
-CONFIG_SHELL=		${PYTHONBIN}
-CONFIGURE_SCRIPT=	src/bootstrap/configure.py
-CONFIGURE_ARGS+=	--prefix=${PREFIX}
-CONFIGURE_ARGS+=	--mandir=${PREFIX}/${PKGMANDIR}
-CONFIGURE_ARGS+=	--sysconfdir=${PKG_SYSCONFDIR}
-CONFIGURE_ARGS+=	--python=${PYTHONBIN}
-CONFIGURE_ARGS+=	--release-channel=stable
-CONFIGURE_ARGS+=	--local-rust-root=${RUST_BOOTSTRAP_PATH}
-CONFIGURE_ARGS+=	--enable-extended	# Build and install cargo too.
-CONFIGURE_ARGS+=	--enable-rpath
-CONFIGURE_ARGS+=	--disable-codegen-tests
-CONFIGURE_ARGS+=	--disable-compiler-docs
-CONFIGURE_ARGS+=	--disable-llvm-static-stdcpp
-CONFIGURE_ARGS+=	--disable-ninja
-CONFIGURE_ARGS+=	--dist-compression-formats=xz
-
-# Include (optional) settings to cross-build rust
-.include "cross.mk"
-
-# optional from do-cross.mk
-CONFIGURE_ARGS+=	${ADD_CONFIGURE_ARGS}
-
-# Getting RPATH with $ORIGIN into bootstrap may be troublesome, so
-# uncommenting the LD_LIBRARY_PATH setting may be required to run
-# the bootstrap
-PKGSRC_MAKE_ENV+=	LD_LIBRARY_PATH=${RUST_BOOTSTRAP_PATH:Q}/lib
-
-# This should allow us to perform "offline" builds (so cargo doesn't fetch
-# dependencies during the build stage) but this isn't hooked up yet.
-CONFIGURE_ARGS+=	--enable-vendor
-
-# cargo defaults to using the number of available CPUs
-MAKE_ENV+=		CARGO_BUILD_JOBS=${_MAKE_JOBS_N}
-
-# Rust builds some bundled components with strict version requirements, ensure
-# that any conflicting packages pulled in via dependencies are not buildlinked.
-BUILDLINK_FILES_CMD.libssh2=	${TRUE}
-BUILDLINK_FILES_CMD.xz=		${TRUE}
-MAKE_ENV+=			LZMA_API_STATIC=1
-
-# MacOS X 10.7 is the oldest supported version. See
-# ${WRKSRC}/src/bootstrap/lib.rs
-MAKE_ENV.Darwin+=	MACOSX_DEPLOYMENT_TARGET="10.7"
-
-CFLAGS.SunOS+=		-D_POSIX_PTHREAD_SEMANTICS
-MAKE_ENV.SunOS+=	AR=gar
-
-# Debugging of crate resolution
-# Annoyingly, this makes the powerpc build succeed...
-#MAKE_ENV+=		RUSTC_LOG=rustc_metadata
-
-UNLIMIT_RESOURCES+=	cputime stacksize datasize virtualsize
-
-TEST_TARGET=	check
-
-# bin/* lib/*, but names vary
-CHECK_RELRO_SUPPORTED=	no
-CHECK_SSP_SUPPORTED=	no
-
-.include "../../mk/bsd.prefs.mk"
-
-# Allow overriding MAKE_JOBS_SAFE
-# some may chose to mostly build faster,
-# and deal with any failures due to deadlocks
-.if !empty(rust.MAKE_JOBS_SAFE)
-.  if ${rust.MAKE_JOBS_SAFE:tl} == "yes"
-MAKE_JOBS_SAFE=		yes
-.  endif
-.endif
-
-.if !empty(rust.BUILD_TARGET)
-BUILD_TARGET=	${rust.BUILD_TARGET}
-.endif
-
-.if !empty(TARGET)
-# Use "dist" build target for cross compile of bootstrap
-BUILD_TARGET?=		dist
-.else
-BUILD_TARGET?=		build
-.endif
-
-.if ${MACHINE_PLATFORM:MNetBSD-*-powerpc} || \
-    ${MACHINE_PLATFORM:MNetBSD-*-earmv[67]hf} || \
-    ${MACHINE_PLATFORM:MNetBSD-*-mipsel} || \
-    !empty(TARGET:Marmv[67]-unknown-netbsd-eabihf) || \
-    !empty(TARGET:Mmipsel-unknown-netbsd)
-# Bootstrapping on NetBSD/powerpc requires no debug-info from rustc
-# (both for amd64->powerpc built and powerpc->powerpc built bootstrap bits)
-# Also try to downsize the armv[67] build.
-CONFIGURE_ARGS+=	--disable-debug
-CONFIGURE_ARGS+=	--disable-debug-assertions
-CONFIGURE_ARGS+=	--disable-llvm-release-debuginfo
-CONFIGURE_ARGS+=	--debuginfo-level=0
-CONFIGURE_ARGS+=	--debuginfo-level-rustc=0
-CONFIGURE_ARGS+=	--debuginfo-level-std=0
-CONFIGURE_ARGS+=	--debuginfo-level-tools=0
-CONFIGURE_ARGS+=	--debuginfo-level-tests=0
-.endif
-
-# Only build the ARM target on/for this host, due to resource constraints
-.if ${MACHINE_PLATFORM:MNetBSD-*-earmv[67]hf}
-CONFIGURE_ARGS+=	--set llvm.targets="ARM"
-.endif
-# When cross-building for ARM on X86, X86 needs to go along due
-# to 2-stage build process
-.if !empty(TARGET:Marmv[67]-unknown-netbsd-eabihf)
-CONFIGURE_ARGS+=	--set llvm.targets="ARM;X86"
-.endif
-# Same for mips:
-.if ${MACHINE_PLATFORM:MNetBSD-*-mipsel}
-CONFIGURE_ARGS+=	--set llvm.targets="Mips"
-.endif
-.if !empty(TARGET:Mmipsel-unknown-netbsd)
-CONFIGURE_ARGS+=	--set llvm.targets="Mips;X86"
-.endif
-
-CHECK_INTERPRETER_SKIP+=	lib/rustlib/src/rust/library/backtrace/ci/android-sdk.sh
-CHECK_INTERPRETER_SKIP+=	lib/rustlib/src/rust/library/backtrace/ci/debuglink.sh
-CHECK_INTERPRETER_SKIP+=	lib/rustlib/src/rust/library/backtrace/ci/run.sh
-CHECK_INTERPRETER_SKIP+=	lib/rustlib/src/rust/library/backtrace/ci/run-docker.sh
-CHECK_INTERPRETER_SKIP+=	lib/rustlib/src/rust/library/core/src/unicode/printable.py
-CHECK_INTERPRETER_SKIP+=	lib/rustlib/src/rust/library/stdarch/ci/build-std-detect.sh
-CHECK_INTERPRETER_SKIP+=	lib/rustlib/src/rust/library/stdarch/ci/dox.sh
-CHECK_INTERPRETER_SKIP+=	lib/rustlib/src/rust/library/stdarch/ci/run-docker.sh
-CHECK_INTERPRETER_SKIP+=	lib/rustlib/src/rust/library/stdarch/ci/run.sh
-CHECK_INTERPRETER_SKIP+=	lib/rustlib/src/rust/library/stdarch/ci/style.sh
-
-CHECK_PORTABILITY_SKIP+=	tests/run-make/dump-ice-to-disk/check.sh
-
-.if ${OPSYS} == "NetBSD"
-# This block contains information about known trouble on NetBSD and workarounds.
-
-# Parallel builds failed on NetBSD due to dynamic linker locking bugs.
-# \todo Explain if the build is believed to be sound if not parallel,
-# or if a non-parallel build is merely more likely to work.
-#
-# See toolchain/54192 at
-#   http://gnats.netbsd.org/cgi-bin/query-pr-single.pl?number=54192
-# which was fixed in -current on 2020-04-19:
-#   http://mail-index.netbsd.org/source-changes/2020/04/16/msg116256.html
-#   http://mail-index.netbsd.org/source-changes/2020/04/19/msg116337.html
-# These  were pulled up to netbsd-9 on 2020-05-13:
-#   http://releng.netbsd.org/cgi-bin/req-9.cgi?show=907
-# This has not been pulled up to netbsd-8
-#   \todo Explain if it's not applicable, shouldn't be pulled up, should be
-#   but hasn't, is too hard, etc.
-#
-# On pkgbuild for 2020Q1 9.0_RELEASE amd64, rust did not build despite
-# MAKE_JOBS_SAFE=no, but setting MAKE_JOBS=1 resulted in success. (No
-# PR is open for this.)  \todo Understand and fix.
-#
-# If we aren't on 9-current, and are on 8.x or 9.x, avoid parallel.
-# Release 9.x and 9.1 or later is OK.
-.  if ${OPSYS} == "NetBSD" && 090999 < ${OPSYS_VERSION} && ${OPSYS_VERSION} < 090900
-MAKE_JOBS_SAFE?=	no
-.  endif
-
-# Open PRs
-#
-# Broken package with PREFIX not /usr/pkg:
-#   http://gnats.netbsd.org/cgi-bin/query-pr-single.pl?number=54453
-#
-
-.endif
-
-#
-# Under NetBSD, do not use DT_RUNPATH
-#
-BUILDLINK_TRANSFORM.NetBSD+=	rm:-Wl,--enable-new-dtags
-
-#
-# Somewhere in the LLVM build "-arch x86_64" is passed on macOS/arm64 which
-# breaks linking, see https://github.com/rust-lang/rust/issues/81790.  Until
-# this can be located (proving difficult!) we just force it.
-#
-.if ${MACHINE_PLATFORM:MDarwin-*-aarch64}
-BUILDLINK_TRANSFORM+=	opt:x86_64:arm64
-.endif
-
-#
-# Rust unfortunately requires itself to build.  On platforms which aren't
-# supported by upstream (where they offer binary bootstraps), or where we do
-# not trust random binaries from the Internet, we need to build and provide our
-# own bootstrap.  See the stage0-bootstrap below for more details.
-#
-DISTFILES:=		${DEFAULT_DISTFILES}
-
-.if ${MACHINE_PLATFORM:MDarwin-*-aarch64} || make(distinfo) || make (makesum) || make(mdi)
-RUST_STAGE0_VER=	1.75.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 ${MACHINE_PLATFORM:MDarwin-*-x86_64} || make(distinfo) || make (makesum) || make(mdi)
-RUST_STAGE0_VER=	1.75.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 ${MACHINE_PLATFORM:MLinux-*-aarch64} || make(distinfo) || make (makesum) || make(mdi)
-RUST_STAGE0_VER=	1.75.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 ${MACHINE_PLATFORM:MLinux-*-earmv6hf} || make(distinfo) || make (makesum) || make(mdi)
-RUST_STAGE0_VER=	1.75.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 ${MACHINE_PLATFORM:MLinux-*-earmv7hf} || make(distinfo) || make (makesum) || make(mdi)
-RUST_STAGE0_VER=	1.75.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 ${MACHINE_PLATFORM:MLinux-*-i386} || make(distinfo) || make (makesum) || make(mdi)
-RUST_STAGE0_VER=	1.75.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 ${MACHINE_PLATFORM:MLinux-*-x86_64} || make(distinfo) || make (makesum) || make(mdi)
-RUST_STAGE0_VER=	1.75.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
-DISTFILES:=		${DISTFILES} ${RUST_STAGE0} ${RUST_STD_STAGE0}
-.endif
-#
-# The SunOS target defaults to illumos as that's what the current bootstraps
-# are built on.  If you wish to target Oracle Solaris you'll need to create an
-# x86_64-sun-solaris bootstrap and comment out the overrides.
-#
-.if ${MACHINE_PLATFORM:MSunOS-*-x86_64} || make(distinfo) || make (makesum) || make(mdi)
-RUST_STAGE0_VER=	1.74.1
-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/
-DISTFILES:=		${DISTFILES} ${RUST_STAGE0}
-RUST_BOOTSTRAP_PATH?=	${WRKDIR}/rust-${RUST_STAGE0_VER}-${RUST_ARCH}
-# Override default "x86_64-sun-solaris" selection
-CONFIGURE_ARGS+=	--set=target.${RUST_ARCH}.llvm-config=${LLVM_CONFIG_PATH}
-CONFIGURE_ARGS+=	--build=${RUST_ARCH}
-CONFIGURE_ARGS+=	--host=${RUST_ARCH}
-CONFIGURE_ARGS+=	--target=${RUST_ARCH}
-.endif
-.if ${MACHINE_PLATFORM:MFreeBSD-*-x86_64} || make(distinfo) || make (makesum) || make(mdi)
-RUST_STAGE0_VER=	1.75.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 ${MACHINE_PLATFORM:MNetBSD-*-i386} || make(distinfo) || make (makesum) || make(mdi)
-RUST_STAGE0_VER=	1.75.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
-SITES.${RUST_STAGE0}=	${MASTER_SITE_LOCAL:=rust/}
-SITES.${RUST_STD_STAGE0}=	${MASTER_SITE_LOCAL:=rust/}
-DISTFILES:=		${DISTFILES} ${RUST_STAGE0} ${RUST_STD_STAGE0}
-# Setting this changes it for every distfile, which doesn't match what is
-# currently in distinfo.
-#DIST_SUBDIR=		${PKGNAME}
-# For atomic ops
-CFLAGS+=		-march=i586
-CONFIGURE_ARGS+=	--build=${RUST_ARCH}
-pre-build: pre-build-fix-paxctl
-.PHONY: pre-build-fix-paxctl
-pre-build-fix-paxctl:
-	${TOOLS_PLATFORM.paxctl} +am ${WRKDIR}/rust-bootstrap/bin/cargo
-	${TOOLS_PLATFORM.paxctl} +am ${WRKDIR}/rust-bootstrap/bin/rustc
-.endif
-.if ${MACHINE_PLATFORM:MNetBSD-*-x86_64} || make(distinfo) || make (makesum) || make(mdi)
-RUST_STAGE0_VER=	1.75.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 ${MACHINE_PLATFORM:MNetBSD-*-powerpc} || make(distinfo) || make (makesum) || make(mdi)
-RUST_STAGE0_VER=	1.75.0
-RUST_ARCH=		powerpc-unknown-netbsd
-
-# Cross-built against NetBSD 9.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}
-SITES.${RUST_STAGE0}=		${MASTER_SITE_LOCAL:=rust/}
-SITES.${RUST_STD_STAGE0}=	${MASTER_SITE_LOCAL:=rust/}
-
-.endif
-.if ${MACHINE_PLATFORM:MNetBSD-*-aarch64} || make(distinfo) || make (makesum) || make(mdi)
-RUST_STAGE0_VER=		1.75.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
-DISTFILES:=			${DISTFILES} ${RUST_STAGE0} ${RUST_STD_STAGE0}
-SITES.${RUST_STAGE0}=		${MASTER_SITE_LOCAL:=rust/}
-SITES.${RUST_STD_STAGE0}=	${MASTER_SITE_LOCAL:=rust/}
-.endif
-.if ${MACHINE_PLATFORM:MNetBSD-*-aarch64eb} || make(distinfo) || make (makesum) || make(mdi)
-RUST_STAGE0_VER=		1.75.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
-DISTFILES:=			${DISTFILES} ${RUST_STAGE0} ${RUST_STD_STAGE0}
-SITES.${RUST_STAGE0}=		${MASTER_SITE_LOCAL:=rust/}
-SITES.${RUST_STD_STAGE0}=	${MASTER_SITE_LOCAL:=rust/}
-.endif
-.if ${MACHINE_PLATFORM:MNetBSD-*-sparc64} || make(distinfo) || make (makesum) || make(mdi)
-RUST_STAGE0_VER=		1.75.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
-DISTFILES:=			${DISTFILES} ${RUST_STAGE0} ${RUST_STD_STAGE0}
-SITES.${RUST_STAGE0}=		${MASTER_SITE_LOCAL:=rust/}
-SITES.${RUST_STD_STAGE0}=	${MASTER_SITE_LOCAL:=rust/}
-.endif
-.if ${MACHINE_PLATFORM:MNetBSD-*-earmv7hf} || make(distinfo) || make (makesum) || make(mdi)
-RUST_ARCH=			armv7-unknown-netbsd-eabihf
-RUST_STAGE0_VER=		1.75.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}
-SITES.${RUST_STAGE0}=		${MASTER_SITE_LOCAL:=rust/}
-SITES.${RUST_STD_STAGE0}=	${MASTER_SITE_LOCAL:=rust/}
-.endif
-.if ${MACHINE_PLATFORM:MNetBSD-*-earmv6hf} || make(distinfo) || make (makesum) || make(mdi)
-RUST_ARCH=			armv6-unknown-netbsd-eabihf
-RUST_STAGE0_VER=		1.75.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}
-SITES.${RUST_STAGE0}=		${MASTER_SITE_LOCAL:=rust/}
-SITES.${RUST_STD_STAGE0}=	${MASTER_SITE_LOCAL:=rust/}
-.endif
-.if ${MACHINE_PLATFORM:MNetBSD-*-mipsel} || make(distinfo) || make (makesum) || make(mdi)
-RUST_ARCH=			mipsel-unknown-netbsd
-RUST_STAGE0_VER=		1.75.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}
-SITES.${RUST_STAGE0}=		${MASTER_SITE_LOCAL:=rust/}
-SITES.${RUST_STD_STAGE0}=	${MASTER_SITE_LOCAL:=rust/}
-.endif
-.if ${MACHINE_PLATFORM:MNetBSD-*-riscv64} || make(distinfo) || make (makesum) || make(mdi)
-RUST_ARCH=			riscv64gc-unknown-netbsd
-RUST_STAGE0_VER=		1.75.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}
-SITES.${RUST_STAGE0}=		${MASTER_SITE_LOCAL:=rust/}
-SITES.${RUST_STD_STAGE0}=	${MASTER_SITE_LOCAL:=rust/}
-.endif
-
-# You may override RUST_BOOTSTRAP_PATH and RUST_ARCH in mk.conf
-# if you have a local bootstrap compiler.
-.if !defined(RUST_ARCH) && !defined(RUST_BOOTSTRAP_PATH)
-NOT_FOR_PLATFORM+=	${MACHINE_PLATFORM}
-.else
-RUST_BOOTSTRAP_PATH?=	${WRKDIR}/rust-bootstrap
-.endif
-
-.if ${OPSYS} == "SunOS"
-TOOL_DEPENDS+=		coreutils>=0:../../sysutils/coreutils
-TOOL_DEPENDS+=		gzip>=0:../../archivers/gzip
-TOOLS_CREATE+=		md5sum
-TOOLS_PATH.md5sum=	${PREFIX}/bin/gmd5sum
-TOOLS_PLATFORM.gzcat=	${PREFIX}/bin/gzip -cd
-.endif
-
-SUBST_CLASSES+=		prefix
-SUBST_STAGE.prefix=	pre-configure
-SUBST_FILES.prefix+=	compiler/rustc_codegen_ssa/src/back/linker.rs
-SUBST_FILES.prefix+=	compiler/rustc_target/src/spec/base/netbsd.rs
-SUBST_FILES.prefix+=	src/bootstrap/src/core/build_steps/compile.rs
-SUBST_FILES.prefix+=	src/bootstrap/src/core/builder.rs
-SUBST_FILES.prefix+=	src/bootstrap/bootstrap.py
-SUBST_VARS.prefix=	PREFIX
-
-#
-# Generate list of subst entries for various .cargo-checksum.json files.  These
-# are all handled together in one big substitution to simplify things rather
-# than one substitution entry per file, but are kept separate below to ease
-# updating and verification.
-#
-
-CKSUM_CRATES+=	vendor/libc
-CKSUMS+=	b1660c631a599a3355116e7485b88ab2f8f2929c2e37851a763431387b902f14
-CKSUMS+=	990d1c6c01db31b9e5541128e4987b114f39c6808d94a5f8f048f492cfb96d78
-
-CKSUM_CRATES+=	vendor/cc-1.0.73
-CKSUMS+=	38970d678de0efb4b5e2978265daa8a613a1db35fc42e669621b03fc56d5b138
-CKSUMS+=	65de0d6593a4256e5fcaf898f9468d71bab672c70a2dfab3dcb8514e9b72819c
-
-CKSUM_CRATES+=	vendor/cc
-CKSUMS+=	cdf0c6dc4e12ad313fb93ab42f994e26c7e5aaeb07ca61620032d8f4014dacd0
-CKSUMS+=	2344d4cf113fe2fb8925ca5621c60daabcf967186b24f0551c777fb284755493
-
-CKSUM_CRATES+=	vendor/lzma-sys
-CKSUMS+=	6fd5e9245db34c6f557b8bfcaf03db82fc88c3b06dbfbb5f03b2bcd138983ef9
-CKSUMS+=	5e252578b5d266f6a4c8dc9f71ca7a91536ccb8c5c7d7753b82f12ec886459ef
-
-CKSUM_CRATES+=	vendor/stacker
-CKSUMS+=	59ca847887cf19387119d18c57f08d5a8520d714876ca0142b8f1c001ecde06b
-CKSUMS+=	03be8ae293b713fe6e9703e4809dd68caaec992bae6777914ffddae8da2a9bc7
-
-CKSUM_CRATES+=	vendor/crossbeam-utils
-CKSUMS+=	5f75132808d9e8d6e266fe77f9e20bbc35855a1c37a5dbc0940b3e989bca1a94
-CKSUMS+=	3d7c747108434546837b1c5664111c9146fcbfb2e084c95f8ce0be970d652421
-
-CKSUM_CRATES+=	vendor/crossbeam-utils-0.8.14
-CKSUMS+=	3314524d2afa0360c947455a6e6566fb54ebf909c99479ca3b7435741fd3293e
-CKSUMS+=	eaef167dea04efa811cf0d53de98feac6063ec2196eccd315d345ef86c551aaa
-
-CKSUM_CRATES+=	vendor/crossbeam-epoch
-CKSUMS+=	5f75132808d9e8d6e266fe77f9e20bbc35855a1c37a5dbc0940b3e989bca1a94
-CKSUMS+=	3d7c747108434546837b1c5664111c9146fcbfb2e084c95f8ce0be970d652421
-
-CKSUM_CRATES+=	vendor/openssl-sys
-CKSUMS+=	b2cbaa5bfac5e7d5550aa0eb8e5c65a9f7e86a3692b759fb13330ef6e3b26b30
-CKSUMS+=	b303bf9ceae9fcffa4a0420ea858675d827fc2d75c358f8236e44274d58be1a0
-CKSUMS+=	33f814dba4ac9942266157cbe3dc8eadf5e477090370a92c36c53f916fa45d48
-CKSUMS+=	4f14cac64c027b3bea07908bae58184b31f6da6326f8ba5a6935d726ab2e1d20
-
-CKSUM_CRATES+=	vendor/openssl-src
-CKSUMS+=	c87f041ff9ada85cddcb2a787788e05b2ab5ffc0a85f502fe7e3f7cbda59d49c
-CKSUMS+=	67b877964bc0e40c84669c423818a3cb39501eaedfc3f5caf9c33d4779c3d03f
-CKSUMS+=	090744f85cf99a9b8412c23fca1eabb61eb45d830f0f9f0e7309be2572c1e827
-CKSUMS+=	ead7bdeee121f1357b99741b175a564c8b7026f694cbc388aae2a86b3bae913f
-
-CKSUM_CRATES+=	vendor/nix-0.26.2
-CKSUMS+=	c3e13a2edea54d190a4b051f62efc97953c00b5051a9fda0e39e3bc732a31939
-CKSUMS+=	263bd7ace66a4cfee3de18532f61c187327fcbd564666b4f97c4b01ae6885d98
-
-CKSUM_CRATES+=	vendor/aho-corasick
-CKSUMS+=	840065521cbd4701fa5b8b506d1537843d858c903f7cadf3c68749ea1780874b
-CKSUMS+=	626ce9b45dfded3d2eaf795a1d86be765a7d63eb4bcaf9d7b89add6f686f7ede
-CKSUMS+=	720735ea6c7ff92b081426513e6e82feed24a922849297bb538d28f7b8129f81
-CKSUMS+=	3a5d88cf1ce02dc1bc06aa7d7aad0fa6d63ca45246a47ebeae43b48544065dcc
-
-SUBST_CLASSES+=		cksum
-SUBST_STAGE.cksum=	pre-configure
-.for crate in ${CKSUM_CRATES}
-SUBST_FILES.cksum+=	${crate}/.cargo-checksum.json
-.endfor
-.for from to in ${CKSUMS}
-SUBST_SED.cksum+=	-e 's,${from},${to},g'
-.endfor
-
-post-extract:
-	set -e;									\
-	if ${TEST} -e ${WRKDIR}/rust-${RUST_STAGE0_VER}-${RUST_ARCH}/install.sh	\
-	  -a ! -e ${RUST_BOOTSTRAP_PATH}/bin/rustc; then \
-		cd ${WRKDIR}/rust-${RUST_STAGE0_VER}-${RUST_ARCH};	\
-		env ${MAKE_ENV} ${TOOLS_BASH} \
-			./install.sh --prefix=${RUST_BOOTSTRAP_PATH};	\
-		cd ${WRKDIR}/rust-std-${RUST_STAGE0_VER}-${RUST_ARCH};	\
-		env ${MAKE_ENV} ${TOOLS_BASH} \
-			./install.sh --prefix=${RUST_BOOTSTRAP_PATH};	\
-	fi
-.if ${OPSYS} == "NetBSD"
-	SDIR=${WRKDIR}/scripts; \
-	${MKDIR} $${SDIR}; \
-	cd $${SDIR}; \
-	${RM} -f c++-wrap; \
-	${RM} -f clang++-wrap; \
-	${RM} -f clang-wrap; \
-	${RM} -f ar-wrap; \
-	${CP} ${.CURDIR}/files/gcc-wrap .; \
-	${CHMOD} +x gcc-wrap; \
-	${LN} -s gcc-wrap c++-wrap; \
-	${LN} -s gcc-wrap clang++-wrap; \
-	${LN} -s gcc-wrap clang-wrap; \
-	${LN} -s gcc-wrap ar-wrap
-.endif
-
-.if ${OPSYS} == "FreeBSD"
-MAKE_ENV+=		OPENSSL_DIR=${SSLBASE}
-.endif
-
-.if ${OPSYS} == "NetBSD" && !empty(PKGSRC_COMPILER:Mclang) && !exists(/lib/libgcc_s.so)
-BUILDLINK_TRANSFORM+=	rm:-lgcc_s
-MAKE_ENV+=		PKGSRC_HAVE_LIBCPP=yes
-
-pre-build: provide-libgcc-for-bootstrap
-.PHONY: provide-libgcc-for-bootstrap
-provide-libgcc-for-bootstrap:
-.  if exists(${FILESDIR}/libgcc_s.so.1)
-	cp ${FILESDIR}/libgcc_s.so.1 ${RUST_BOOTSTRAP_PATH}/lib/.
-.  endif
-.endif
-
-#
-# These are essentially copies of the "all", "test", and "install" Makefile
-# targets, but are duplicated here so that we can specify -j.
-#
-do-build:
-	${RUN}${_ULIMIT_CMD}						\
-	cd ${WRKSRC} &&							\
-	${SETENV} ${MAKE_ENV}						\
-	sh -c "if [ \"${BUILD_TARGET}\" = \"dist\" ]; then		\
-		unset DESTDIR;						\
-		${PYTHONBIN} ./x.py -v					\
-		    ${BUILD_TARGET} -j ${_MAKE_JOBS_N};			\
-	else								\
-		${PYTHONBIN} ./x.py -v					\
-		    ${BUILD_TARGET} --stage 2 -j ${_MAKE_JOBS_N} &&	\
-		${PYTHONBIN} ./x.py -v					\
-		    doc --stage 2 -j ${_MAKE_JOBS_N};			\
-	fi"
-
-do-test:
-	${RUN}${_ULIMIT_CMD}						\
-	cd ${WRKSRC} &&							\
-	${SETENV} ${MAKE_ENV}						\
-		${PYTHONBIN} ./x.py -v test -j ${_MAKE_JOBS_N}
-
-do-install:
-	${RUN}${_ULIMIT_CMD}						\
-	cd ${WRKSRC} &&							\
-	${SETENV} ${MAKE_ENV} ${INSTALL_ENV} 				\
-		${PYTHONBIN} ./x.py -v install -j ${_MAKE_JOBS_N}
-
-SUBST_CLASSES+=		destdir
-SUBST_STAGE.destdir=	post-install
-SUBST_FILES.destdir=	${DESTDIR}${PREFIX}/lib/rustlib/manifest-*
-SUBST_SED.destdir=	-e 's|file:${DESTDIR}${PREFIX}|file:${PREFIX}|'
-
-GENERATE_PLIST+=	${FIND} ${DESTDIR}${PREFIX} \( -type f -o -type l \) -print | \
-			${SED} -e 's,${DESTDIR}${PREFIX}/,,' | ${SORT} ;
-
-# Create a relocatable stage2 bootstrap from the bits we just built that can be
-# used to build the next version of rust.  Currently only tested on SmartOS.
-#
-# Use the alternate BOOTSTRAP_NAME when creating a nightly release.
-#
-#BOOTSTRAP_NAME=	${PKGNAME_NOREV:C/rust/rust-nightly/}-${RUST_ARCH}
-BOOTSTRAP_NAME=		${PKGNAME_NOREV}-${RUST_ARCH}
-BOOTSTRAP_TMPDIR=	${WRKDIR}/${BOOTSTRAP_NAME}
-USE_TOOLS+=		gtar
-
-# The NetBSD part is so far untested, because I could not convince
-# the rust build to use the gcc wrapper when building natively,
-# so that I could get a placeholder in the RPATH, because chrpath
-# cannot extend the length of the RPATH...
-ELFEDIT?=	/usr/bin/elfedit
-
-.PHONY: stage0-bootstrap
-stage0-bootstrap: install
-	${RM} -rf ${BOOTSTRAP_TMPDIR}
-	${MKDIR} ${BOOTSTRAP_TMPDIR}
-.if ${OPSYS} == "NetBSD"
-	(cd ${BOOTSTRAP_TMPDIR}; \
-	DISTDIR=${WRKSRC}/bild/dist; \
-	VER_ARCH=${PKGVERSION}-${RUST_ARCH}; \
-	RUSTC=rustc-$${VER_ARCH}; \
-	RUSTC_FILE=$${RUSTC}.tar.gz; \
-	RUST_STD=rust-std-$${VER_ARCH}; \
-	RUST_STD_FILE=$${RUST_STD}.tar.gz; \
-	${GTAR} -xzf $${DISTDIR}/$${RUSTC_FILE}; \
-		(cd ${RUSTC}; \
-	RPATH='/usr/pkg/lib:/lib:/usr/lib:$$ORIGIN/../lib'; \
-	for f in rls-preview/bin/rls rustc/bin/rustc rustc/bin/rustdoc; do \
-		chrpath -r $$RPATH $$f; \
-	done; \
-	RPATH='/usr/pkg/lib:/lib:/usr/lib:$$ORIGIN'; \
-	for f in rustc/lib/*.so*; do \
-		chrpath -r $$RPATH $$f; \
-	done; \
-	RPATH='/usr/pkg/lib:/lib:/usr/lib:$$ORIGIN:$$ORIGIN/../../..'; \
-	for f in rustc/lib/rustlib/*/*/*.so*; do \
-		chrpath -r $$RPATH $$f; \
-	done;); \
-	${GTAR} -czf $${RUSTC_FILE} $${RUSTC}; \
-	${CP} $${DISTDIR}/$${RUST_STD_FILE} .; \
-	${ECHO} "Fixed stage0 bootstrap in ${BOOTSTRAP_TMPDIR}:"; \
-	${ECHO} "$${RUSTC_FILE}"; \
-	${ECHO} "$${RUST_STD_FILE}"; \
-	)
-.endif
-.if ${OS_VARIANT} == "SmartOS"
-	${CP} -R ${DESTDIR}/${PREFIX}/bin ${BOOTSTRAP_TMPDIR}/
-	${CP} -R ${DESTDIR}/${PREFIX}/lib ${BOOTSTRAP_TMPDIR}/
-	${MKDIR} ${BOOTSTRAP_TMPDIR}/lib/pkgsrc
-	set -e; \
-	for lib in libgcc_s.so.1 libstdc++.so.6; do \
-		${CP} `${PKG_CC} -print-file-name=$${lib}` \
-		    ${BOOTSTRAP_TMPDIR}/lib/pkgsrc/; \
-	done; \
-	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.5; do \
-		${CP} ${PREFIX}/lib/$${lib} ${BOOTSTRAP_TMPDIR}/lib/pkgsrc/; \
-	done; \
-	for f in ${BOOTSTRAP_TMPDIR}/bin/*; do \
-		/bin/file -b "$$f" | grep ^ELF >/dev/null || continue; \
-		${ELFEDIT} -e 'dyn:runpath $$ORIGIN/../lib:$$ORIGIN/../lib/pkgsrc' $$f; \
-	done; \
-	for f in ${BOOTSTRAP_TMPDIR}/lib/pkgsrc/*.so*; do \
-		${ELFEDIT} -e 'dyn:runpath $$ORIGIN' $$f; \
-	done; \
-	for f in ${BOOTSTRAP_TMPDIR}/lib/*.so*; do \
-		${ELFEDIT} -e 'dyn:runpath $$ORIGIN:$$ORIGIN/pkgsrc' $$f; \
-	done; \
-	for f in ${BOOTSTRAP_TMPDIR}/lib/rustlib/*/*/*.so*; do \
-		${ELFEDIT} -e 'dyn:runpath $$ORIGIN:$$ORIGIN/../../..:$$ORIGIN/../../../pkgsrc' $$f; \
-	done; \
-	cd ${WRKDIR}; ${GTAR} -zcf ${BOOTSTRAP_NAME}.tar.gz ${BOOTSTRAP_NAME}
-	@${ECHO} ""
-	@${ECHO} "Verify correct library paths using the following:"
-	@${ECHO} ""
-	@${ECHO} "	cd ${BOOTSTRAP_TMPDIR}"
-	@${ECHO} "	find . -type f | xargs ldd 2>/dev/null | egrep 'not.found|${PREFIX}'"
-	@${ECHO} ""
-	@${ECHO} "If there is no output then this bootstrap kit is ready to go:"
-	@${ECHO} ""
-	@${ECHO} "	${WRKDIR}/${BOOTSTRAP_NAME}.tar.gz"
-	@${ECHO} ""
-.endif
-
-.include "options.mk"
-
-# These dependencies currently use the bundled sources as they require
-# development features not yet available in released versions.
-#
-#.include "../../devel/libgit2/buildlink3.mk"
-#.include "../../security/libssh2/buildlink3.mk"
-#.include "../../www/http-parser/buildlink3.mk"
-#.include "../../devel/jemalloc/buildlink3.mk"
-
-## Issues specific to: bootstrap AND NetBSD follow
-
-# rust i386 and sparc64 bootstraps are built for 8.0
-# and still depend on libstdc++.so.8.
-# Pull in compat80 on 9.x and newer.
-.if (${MACHINE_PLATFORM:MNetBSD-*-i386} || \
-     ${MACHINE_PLATFORM:MNetBSD-*-sparc64}) \
-    && empty(OS_VERSION:M8.*)
-TOOL_DEPENDS+=	compat80>=0:../../emulators/compat80
-.endif
-
-.include "../../mk/atomic64.mk"
-# This is for when we build natively:
-.if ${MACHINE_PLATFORM:MNetBSD-*-powerpc} || \
-    ${MACHINE_PLATFORM:MNetBSD-*-i386} || \
-    ${MACHINE_PLATFORM:MNetBSD-*-mipsel} || \
-    ${MACHINE_PLATFORM:MNetBSD-*-riscv64}
-# Make libatomic library available via a unique directory:
-DEPENDS+=	libatomic-links>=0:../../devel/libatomic-links
-.endif
-
-TOOL_DEPENDS+= cmake-[0-9]*:../../devel/cmake
-.include "../../devel/cmake/buildlink3.mk"
-.include "../../devel/zlib/buildlink3.mk"
-.include "../../lang/python/tool.mk"
-.include "../../mk/bsd.pkg.mk"
diff --git a/rust176/buildlink3.mk b/rust176/buildlink3.mk
deleted file mode 100644
index 1e4c6a9c9d..0000000000
--- a/rust176/buildlink3.mk
+++ /dev/null
@@ -1,17 +0,0 @@
-# $NetBSD: buildlink3.mk,v 1.6 2020/07/08 14:46:14 jperkin Exp $
-
-BUILDLINK_TREE+=	rust
-
-#
-# DO NOT include this directly! Use rust.mk instead.
-#
-
-.if !defined(RUST_BUILDLINK3_MK)
-RUST_BUILDLINK3_MK:=
-
-BUILDLINK_API_DEPENDS.rust+=	rust>=1.56.1
-BUILDLINK_PKGSRCDIR.rust?=	../../wip/rust
-BUILDLINK_PASSTHRU_DIRS+=	${PREFIX}/lib/rustlib
-.endif
-
-BUILDLINK_TREE+=	-rust
diff --git a/rust176/cargo.mk b/rust176/cargo.mk
deleted file mode 100644
index f48bdac474..0000000000
--- a/rust176/cargo.mk
+++ /dev/null
@@ -1,109 +0,0 @@
-# $NetBSD: cargo.mk,v 1.35 2023/05/16 06:10:52 wiz Exp $
-#
-# Common logic that can be used by packages that depend on cargo crates
-# from crates.io. This lets existing pkgsrc infrastructure fetch and verify
-# cargo crates instead of using the rust package manager in the build phase.
-# Inspired by cargo.mk from FreeBSD ports.
-#
-# Usage example:
-#
-# CARGO_CRATE_DEPENDS+=	sha1-0.20
-# .include "../../lang/rust/cargo.mk"
-#
-# If modifying the list of dependencies, re-run the build once without
-# --offline in CARGO_ARGS to generate a new valid Cargo.lock.
-# e.g: make CARGO_ARGS="build --release" build
-#
-# a list of CARGO_CRATE_DEPENDS can be generated via
-#      make print-cargo-depends > cargo-depends.mk
-#
-# See also www/geckodriver for a full example.
-
-MASTER_SITES?=	-${MASTER_SITE_CRATESIO}${PKGBASE}/${PKGVERSION_NOREV}/download
-
-CHECK_SSP_SUPPORTED=	no
-
-.include "../../lang/rust/rust.mk"
-
-USE_TOOLS+=		bsdtar
-CARGO_VENDOR_DIR=	${WRKDIR}/vendor
-CARGO_WRKSRC?=		${WRKSRC}
-
-# TODO: some Cargo.lock files include git+https sources which need to be fetched from the URL (not necessarily resolving to a crate.io url)
-DISTFILES?=			${DEFAULT_DISTFILES}
-.for crate in ${CARGO_CRATE_DEPENDS}
-DISTFILES+=			${crate}.crate
-SITES.${crate}.crate+=		-${MASTER_SITE_CRATESIO}${crate:C/-[0-9]+\.[0-9.]+.*$//}/${crate:C/^.*-([0-9]+\.[0-9.]+.*)$/\1/}/download
-EXTRACT_DIR.${crate}.crate?=	${CARGO_VENDOR_DIR}
-.endfor
-
-.include "../../mk/bsd.prefs.mk"
-# Triggers NetBSD ld.so bug (PR toolchain/54192)
-# See Makefile for further information.
-.if ${OPSYS} == "NetBSD" && ${OPSYS_VERSION} < 099957
-MAKE_JOBS_SAFE=	no
-.endif
-
-post-extract: cargo-vendor-crates
-.PHONY: cargo-vendor-crates
-cargo-vendor-crates:
-	@${STEP_MSG} "Extracting local cargo crates"
-	${RUN}${MKDIR} ${CARGO_WRKSRC}/.cargo
-	${RUN}${PRINTF} "[source.crates-io]\nreplace-with = \"vendored-sources\"\n[source.vendored-sources]\ndirectory = \"${CARGO_VENDOR_DIR}\"\n" > ${CARGO_WRKSRC}/.cargo/config
-	${RUN}${MKDIR} ${CARGO_VENDOR_DIR}
-.for crate in ${CARGO_CRATE_DEPENDS}
-	${RUN}${PRINTF} '{"package":"%s","files":{}}'	\
-	  `${DIGEST} sha256 < ${_DISTDIR}/${crate}.crate` \
-	  > ${CARGO_VENDOR_DIR}/${crate}/.cargo-checksum.json
-.endfor
-
-# Legacy name
-.PHONY: show-cargo-depends
-show-cargo-depends: print-cargo-depends
-
-.PHONY: print-cargo-depends
-print-cargo-depends:
-	${RUN}${AWK} 'BEGIN {print "# $$Net" "BSD$$"; print;}		\
-		/^name = / { split($$3, a, "\""); name=a[2]; }		\
-		/^version = / { split($$3, a, "\""); vers=a[2]; }	\
-		/^source = / {						\
-			print "CARGO_CRATE_DEPENDS+=\t" name "-" vers;	\
-			}' ${CARGO_WRKSRC}/Cargo.lock
-
-DEFAULT_CARGO_ARGS=	--offline -j${_MAKE_JOBS_N}	\
-			  ${CARGO_NO_DEFAULT_FEATURES:M[yY][eE][sS]:C/[yY][eE][sS]/--no-default-features/}	\
-			  ${CARGO_FEATURES:C/.*/--features/W}	\
-			  ${CARGO_FEATURES:S/ /,/Wg}
-CARGO_ARGS?=		build --release ${DEFAULT_CARGO_ARGS}
-CARGO_INSTALL_ARGS?=	install --path . --root ${DESTDIR}${PREFIX} ${DEFAULT_CARGO_ARGS}
-
-MAKE_ENV+=		RUSTFLAGS=${RUSTFLAGS:Q}
-
-.if !target(do-build)
-do-build: do-cargo-build
-.endif
-
-.PHONY: do-cargo-build
-do-cargo-build:
-	${RUN} cd ${CARGO_WRKSRC} && ${SETENV} ${MAKE_ENV} ${PREFIX}/bin/cargo ${CARGO_ARGS}
-
-.if !target(do-install) && ${GNU_CONFIGURE:Uno:tl} == no
-do-install: do-cargo-install
-.endif
-
-.PHONY: do-cargo-install
-do-cargo-install:
-	${RUN} cd ${CARGO_WRKSRC} && ${SETENV} ${MAKE_ENV} ${PREFIX}/bin/cargo ${CARGO_INSTALL_ARGS}
-	# remove files cargo uses for tracking installations
-	${RM} -f ${DESTDIR}${PREFIX}/.crates.toml
-	${RM} -f ${DESTDIR}${PREFIX}/.crates2.json
-
-.if ${OPSYS} == "Darwin"
-.PHONY: do-cargo-post-install-darwin-fix-rpath
-post-install: do-cargo-post-install-darwin-fix-rpath
-do-cargo-post-install-darwin-fix-rpath:
-	${RUN} cd ${DESTDIR};								\
-	for i in $$(${FIND} .${PREFIX}/lib -name '*.so' | ${SED} -e 's|^\./||'); do	\
-	  install_name_tool -id /$$i $$i;						\
-	done
-.endif
diff --git a/rust176/cross.mk b/rust176/cross.mk
deleted file mode 100644
index 2984a3d058..0000000000
--- a/rust176/cross.mk
+++ /dev/null
@@ -1,82 +0,0 @@
-# $NetBSD: cross.mk,v 1.3 2020/07/16 09:35:37 jperkin Exp $
-
-# These settings may be used to cross-build rust.
-#
-# They interact with the files/gcc-wrap script to pick the
-# right compiler for the different phases of the build, and
-# use the headers for the target when required.  Note that the
-# cross-root tree will need to have the required binary packages
-# installed (curl etc., see list of buildlink3.mk includes in main
-# Makefile).
-
-# The gcc-wrap / c++-wrap script takes CROSS_ROOT environment variable
-# to do a cross-build.  The wrapper script assumes dest/ and tools/
-# as a result of a cross-build of NetBSD as subdirectories of this root
-#CROSS_ROOT=		/u/evbarm-armv7hf
-#CROSS_ROOT=		/u/evbarm-armv6hf
-#CROSS_ROOT=		/u/sparc64
-#CROSS_ROOT=		/u/macppc
-#CROSS_ROOT=		/u/evbarm64
-#CROSS_ROOT=		/u/evbarm64eb
-#CROSS_ROOT=		/u/i386
-#CROSS_ROOT=		/u/mipsel
-#CROSS_ROOT=		/u/riscv64
-#CROSS_ROOT=		/
-#MAKE_ENV+=		CROSS_ROOT=${CROSS_ROOT}
-
-# The GNU cross target designation
-#GNU_CROSS_TARGET=	armv7--netbsdelf-eabihf
-#GNU_CROSS_TARGET=	armv6--netbsdelf-eabihf
-#GNU_CROSS_TARGET=	sparc64--netbsd
-#GNU_CROSS_TARGET=	powerpc--netbsd
-#GNU_CROSS_TARGET=	aarch64--netbsd
-#GNU_CROSS_TARGET=	aarch64_be--netbsd
-#GNU_CROSS_TARGET=	i486--netbsdelf
-#GNU_CROSS_TARGET=	mipsel--netbsd
-#GNU_CROSS_TARGET=	riscv64--netbsd
-#MAKE_ENV+=		GNU_CROSS_TARGET=${GNU_CROSS_TARGET}
-
-# To cross-build rust, you need to specify
-# 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=		riscv64gc-unknown-netbsd
-#
-#SCRIPTS=		${WRKDIR}/scripts
-#CONFIGURE_ARGS+=	--host=${TARGET}
-#CONFIGURE_ARGS+=	--target=${TARGET}
-#CONFIGURE_ARGS+=	--set=target.${TARGET}.cc=${SCRIPTS}/gcc-wrap
-#CONFIGURE_ARGS+=	--set=target.${TARGET}.cxx=${SCRIPTS}/c++-wrap
-#CONFIGURE_ARGS+=	--set=target.${TARGET}.linker=${SCRIPTS}/gcc-wrap
-# Pick one:
-#CONFIGURE_ARGS+=	--set=target.${TARGET}.ar=${CROSS_ROOT}/tools/bin/${GNU_CROSS_TARGET}-ar
-#CONFIGURE_ARGS+=	--set=target.${TARGET}.ar=${SCRIPTS}/ar-wrap
-
-# May be required when cross-building on NetBSD
-#MAKE_ENV+=		OPENSSL_DIR=/usr
-
-#
-# Cross-compile illumos target.  The host is identical, it's just the target
-# that is renamed from x86_64-sun-solaris to x86_64-unknown-illumos.
-#
-#TARGET=		x86_64-unknown-illumos
-#
-# Use these variables for "cross-compiling" from x86_64-sun-solaris.
-#
-#CONFIGURE_ARGS+=	--set=target.${TARGET}.llvm-config=${LLVM_CONFIG_PATH}
-#CONFIGURE_ARGS+=	--host=${TARGET}
-#CONFIGURE_ARGS+=	--target=${TARGET}
-#
-# Set this variable when using a native x86_64-unknown-illumos bootstrap, as
-# the build still defaults to x86_64-sun-solaris based on uname.
-#
-#CONFIGURE_ARGS+=	--build=${TARGET}
diff --git a/rust176/distinfo b/rust176/distinfo
deleted file mode 100644
index 4db71ceee0..0000000000
--- a/rust176/distinfo
+++ /dev/null
@@ -1,164 +0,0 @@
-$NetBSD: distinfo,v 1.159 2023/06/19 14:46:47 bsiegert Exp $
-
-BLAKE2s (rust-1.74.1-x86_64-unknown-illumos.tar.gz) = a85cd9e2f41848c0d533bfe77b205dd73fd095cf312eefd1d25fea7e016d01ba
-SHA512 (rust-1.74.1-x86_64-unknown-illumos.tar.gz) = 3bde6eb2ba638c0e5400fb8968de1e407d7aa3018044bc43168fe2acca47deaa89bf0dec43221096f9041e0355bce0b66a098c72d2f624842c0bd57c4bedface
-Size (rust-1.74.1-x86_64-unknown-illumos.tar.gz) = 231103389 bytes
-BLAKE2s (rust-1.75.0-aarch64-apple-darwin.tar.gz) = 0413f6810abc118a1be224b775d8de6a6c2ad55059944e1d95e6f325a4e41838
-SHA512 (rust-1.75.0-aarch64-apple-darwin.tar.gz) = d73b8884cdbec68c4f1d38635ec590424c081d39ea9f43bf01fc0e442d04a304fa9920409e41a97e9a70f98f09f91a6b565bc83d433328df5de860c32e01f580
-Size (rust-1.75.0-aarch64-apple-darwin.tar.gz) = 313810756 bytes
-BLAKE2s (rust-1.75.0-aarch64-unknown-linux-gnu.tar.gz) = 6265eca0657a28d2384a53ae1aad8b60c3837ec0cb1b8462e782ccbbf7608e56
-SHA512 (rust-1.75.0-aarch64-unknown-linux-gnu.tar.gz) = 6b2f556a7dffbde54482f121e5e57befc84d93ceb1f7dae8cd89dc36de0d98ab0f6cbda2abeb8d2c23d278abb3a07de4e4761815c0a1d6e4953be4ba7a6704fe
-Size (rust-1.75.0-aarch64-unknown-linux-gnu.tar.gz) = 460772111 bytes
-BLAKE2s (rust-1.75.0-aarch64-unknown-netbsd.tar.xz) = 76ccec3dcf8b961b77de3c6e924b6ff5dc5daaae899636f5ca104c8194eb5edd
-SHA512 (rust-1.75.0-aarch64-unknown-netbsd.tar.xz) = f18d71fbad5bcb3facfac23468395b0184de75c3ff2fe59c7ae3e76211af3a8629086360c8e29cee6aada5d4f6d2bb27e90d41ae08d148f10e1a462582eb14a6
-Size (rust-1.75.0-aarch64-unknown-netbsd.tar.xz) = 160244012 bytes
-BLAKE2s (rust-1.75.0-aarch64_be-unknown-netbsd.tar.xz) = 3c8de5e2b7031dac3405af68ed589c423d7a4cd905364e31cf6d75125bcc0697
-SHA512 (rust-1.75.0-aarch64_be-unknown-netbsd.tar.xz) = f4f28566b93490330c5a060b6b38863951f3307e5d594e0535be2f91bf7f0f6ba0ad7eb2386feacc12f39620f01bff7b7c6c04e1784d5364fa4d94eeb307a8e2
-Size (rust-1.75.0-aarch64_be-unknown-netbsd.tar.xz) = 160117240 bytes
-BLAKE2s (rust-1.75.0-arm-unknown-linux-gnueabihf.tar.gz) = 44df609186b52e709b84b67eaf7ad2185a06edec8fe9f286f94cbc0f631acc42
-SHA512 (rust-1.75.0-arm-unknown-linux-gnueabihf.tar.gz) = faa3ad4e2e8a719a96f17ac7718f444ad9d842c9afa934238837eafa1cc3dd3f116cd1f693311db5f41e9cbe3a9cd806705bb2f0e22fdbe96649a318a605c953
-Size (rust-1.75.0-arm-unknown-linux-gnueabihf.tar.gz) = 351718481 bytes
-BLAKE2s (rust-1.75.0-armv6-unknown-netbsd-eabihf.tar.xz) = a815881365e06f73b08fd9657201f4fa8072f6567ad3a73edd14fd1c43fac5b2
-SHA512 (rust-1.75.0-armv6-unknown-netbsd-eabihf.tar.xz) = 98092766fb0b7a1ccd54eb94efeb4af800a5e8d1d66cc2a7b94aa7c74bce7a9b427a49c23818b434a14bee63ecf441086458e35d0cf5cb7a6269f44ad25bc7e9
-Size (rust-1.75.0-armv6-unknown-netbsd-eabihf.tar.xz) = 137497008 bytes
-BLAKE2s (rust-1.75.0-armv7-unknown-linux-gnueabihf.tar.gz) = dc4613358bae1d017526a2c18705b9a984ce2c0ee7b3b1be449006602fd13610
-SHA512 (rust-1.75.0-armv7-unknown-linux-gnueabihf.tar.gz) = aaab4edcd4732614db78ee7ca3ad6d5888375cd7370105d8fee7aafb8f04dc7cc82a80935f23d435b9d915ad68cdc7b725e56aa4b3a729842dc2adc36d256528
-Size (rust-1.75.0-armv7-unknown-linux-gnueabihf.tar.gz) = 340961159 bytes
-BLAKE2s (rust-1.75.0-armv7-unknown-netbsd-eabihf.tar.xz) = 510e494b4562201b956436d9d5525a62be2f5d1b341071d316ca9e53987222e8
-SHA512 (rust-1.75.0-armv7-unknown-netbsd-eabihf.tar.xz) = 7ef3fbe915c9c8acf6ae4eba9db82b2f337c4db55c87a326275c43f797ddab35a4ca3af4f5478d1fd4f9f260a1788e1ac4336166a66eed26545b97512454a079
-Size (rust-1.75.0-armv7-unknown-netbsd-eabihf.tar.xz) = 137950820 bytes
-BLAKE2s (rust-1.75.0-i586-unknown-netbsd.tar.xz) = 4b655bcfc334f5a1326fcf34c4a3c9311affbbfa3f9e94cc0bee1dfe8952437f
-SHA512 (rust-1.75.0-i586-unknown-netbsd.tar.xz) = a6de27b7ccc066f5a3fa1935d7a1db2215f29130644831917e7f71fda950cbcdbfef5c7948ab22f63637e5f13ee3b0f54d0f029290ed77ccc3cdc2710b35b57f
-Size (rust-1.75.0-i586-unknown-netbsd.tar.xz) = 173187680 bytes
-BLAKE2s (rust-1.75.0-i686-unknown-linux-gnu.tar.gz) = 3a7a95d130b44835c04d1faed48d328fa12d3af5af75b02eed9ec03edfd84a53
-SHA512 (rust-1.75.0-i686-unknown-linux-gnu.tar.gz) = 09adf5a9c3f2856142fcc31e7bb53f98b6c8faddb509960799b23bbaa97ce5bc9afcab380bab0da593026b57c75ed6f95f229b79e193fe59dd779380bd06179b
-Size (rust-1.75.0-i686-unknown-linux-gnu.tar.gz) = 409233544 bytes
-BLAKE2s (rust-1.75.0-mipsel-unknown-netbsd.tar.xz) = 7ab0a3a1ebdc123ed9da4e6191659a4fe6969d102f86bb3c4bb70c5937d8a00f
-SHA512 (rust-1.75.0-mipsel-unknown-netbsd.tar.xz) = 33076f2f7d49da5717c255ad3cc21eedef3b03cac57178f761604faadcd73f303159f15bbbe2059980ca059aa1a9fefbd417f935b89940ef74ac6573dae7c56a
-Size (rust-1.75.0-mipsel-unknown-netbsd.tar.xz) = 139163932 bytes
-BLAKE2s (rust-1.75.0-powerpc-unknown-netbsd.tar.xz) = e085863aba7879e9859a12a9fe6cae0b316a782507b45c49a663ebc64ff0ab19
-SHA512 (rust-1.75.0-powerpc-unknown-netbsd.tar.xz) = 6e48a2b9f4d286a9a6e09611cdc6e3715c691772fe5d8426125e90d6ded8c21ead8b53d846d8b59024f99ffe95971e74ba6c51afe37752d947a680168d38efe7
-Size (rust-1.75.0-powerpc-unknown-netbsd.tar.xz) = 185421672 bytes
-BLAKE2s (rust-1.75.0-riscv64gc-unknown-netbsd.tar.xz) = 862bfaf265d3c01e58ce373359d7177af107c9f5fd4486f2ff64779d1eeee61a
-SHA512 (rust-1.75.0-riscv64gc-unknown-netbsd.tar.xz) = 241787601ec894a999b446d148f5988e9dc1fbdc963cc1d31d5a92104121b525ab44210673ee014b3d73c37d426692b69e70180c3bdcecc293c953e7408273b1
-Size (rust-1.75.0-riscv64gc-unknown-netbsd.tar.xz) = 172302088 bytes
-BLAKE2s (rust-1.75.0-sparc64-unknown-netbsd.tar.xz) = ca7e8437c6069ef1e285e2fc06df2f018a99933d01c3740714b16a65da89a430
-SHA512 (rust-1.75.0-sparc64-unknown-netbsd.tar.xz) = 1098580b8fb0c7ad11f1a53ca1ac9639b6705d22845e1628747fcdf021be15855f4d1864c5f7c4f46a79d3e56174220faf53fd26ccdeb8a6e3bf2e5adf053bcb
-Size (rust-1.75.0-sparc64-unknown-netbsd.tar.xz) = 155575996 bytes
-BLAKE2s (rust-1.75.0-x86_64-apple-darwin.tar.gz) = ed157acd77760d4174a46c2757b94f2570893dbc1c08b7184d76324ae01dd952
-SHA512 (rust-1.75.0-x86_64-apple-darwin.tar.gz) = d30221f54226ba0200cc4605f61c4abdb00fc0435cd132ffd9ed15c1f88e993b1e36ff6f2e4bfc0efd217181f8d3b3b3d601598300821067cf5cb7fdab39d725
-Size (rust-1.75.0-x86_64-apple-darwin.tar.gz) = 324779780 bytes
-BLAKE2s (rust-1.75.0-x86_64-unknown-freebsd.tar.gz) = 38ae7059dda0a47ad682159a21da63743b34746415ab8b73d5601079017c2eea
-SHA512 (rust-1.75.0-x86_64-unknown-freebsd.tar.gz) = 52144faa646c363a7e05aa247b99bfe3779374b2543f922afd38203394df480eacb733d1ef4a391a6acf5c915beb7b923c549509fdb5a51153a15c0286148c7b
-Size (rust-1.75.0-x86_64-unknown-freebsd.tar.gz) = 312182515 bytes
-BLAKE2s (rust-1.75.0-x86_64-unknown-linux-gnu.tar.gz) = 6a435cd522a948f41db09706565aa437480b1a7f8b74c84bb025204675a06c00
-SHA512 (rust-1.75.0-x86_64-unknown-linux-gnu.tar.gz) = fdb0642e93915c150dd352c1c49fda275f61e78a91a6ff7403bd275fceb86563403055c00a0c745911bc9e17656e80034d257274ad3d306b1f3314ec1c541dcb
-Size (rust-1.75.0-x86_64-unknown-linux-gnu.tar.gz) = 321280060 bytes
-BLAKE2s (rust-1.75.0-x86_64-unknown-netbsd.tar.xz) = 787909d6790753db205fc73309adafb00f03be35f7c97ae57c79501d460a2912
-SHA512 (rust-1.75.0-x86_64-unknown-netbsd.tar.xz) = 78114df9425ef58b85baa0423be62b5171f9302bf1e04980c55b327e56f72510637ba387caf5fcbd4cdf5745f01f12c52233e014c3b733961358edcf2fdb9aa4
-Size (rust-1.75.0-x86_64-unknown-netbsd.tar.xz) = 152438444 bytes
-BLAKE2s (rust-std-1.75.0-aarch64-apple-darwin.tar.gz) = ae0d6b0c405ac4560a97bff974159954f65d4734034e6a7c071d9e624c647f80
-SHA512 (rust-std-1.75.0-aarch64-apple-darwin.tar.gz) = ba0a8ab5f34bb5ecffdf742a848c89f4af7d36b181c370d9e09042dd559010c28c08dd288c22d517307a31283d9463a561eb74857030bbb2ab1844c3053f4d9a
-Size (rust-std-1.75.0-aarch64-apple-darwin.tar.gz) = 39710389 bytes
-BLAKE2s (rust-std-1.75.0-aarch64-unknown-linux-gnu.tar.gz) = 731f558d5045a1f60e180162602c0a74c4be12516cf74c7238ba1bf7883fc426
-SHA512 (rust-std-1.75.0-aarch64-unknown-linux-gnu.tar.gz) = 334be616a5092722c338f11117a6f2eece972199ea4332b95f19b2723553a07ed168c6c608a3ea699349ffd6c8fbad787fe5a4f2e4a04f8422e47a587a890163
-Size (rust-std-1.75.0-aarch64-unknown-linux-gnu.tar.gz) = 64716330 bytes
-BLAKE2s (rust-std-1.75.0-aarch64-unknown-netbsd.tar.xz) = 51d0e9ae0048eaf3aae693956339fb1812b755fd0b10533e70a81795db3c00a5
-SHA512 (rust-std-1.75.0-aarch64-unknown-netbsd.tar.xz) = aad12ce3be0b69c87eed4151396897ed19f12c3560b22680ef73bc20f77eaaec908996c0b35f37490fd9c9aeb082c4e42d83742d22d374e1eba513b2b6426db5
-Size (rust-std-1.75.0-aarch64-unknown-netbsd.tar.xz) = 22034244 bytes
-BLAKE2s (rust-std-1.75.0-aarch64_be-unknown-netbsd.tar.xz) = b227d41ed886831b1d399b4aeb2bf027de69477eb533cb30e5d0e4def143aa01
-SHA512 (rust-std-1.75.0-aarch64_be-unknown-netbsd.tar.xz) = 660447f782821fb953594ecc00021229ae4a848d614ef87497cdfcb4c20cfa917935e166850fa874c998e5a8cb2e59087ea71fc3664bc2de9fe910cfe2816391
-Size (rust-std-1.75.0-aarch64_be-unknown-netbsd.tar.xz) = 21927200 bytes
-BLAKE2s (rust-std-1.75.0-arm-unknown-linux-gnueabihf.tar.gz) = d2dce2d5beed2a351ed5ae6dabf1d3e1fa9c2b73b3926ff2a1f7f9c3ce7459d8
-SHA512 (rust-std-1.75.0-arm-unknown-linux-gnueabihf.tar.gz) = 877d3fe9303acc9deec125c07301f1e1cadd6168166e4e0709105789a19c668dd3df6c44d81841f126d21ab1608ff56d9cf907877fbf507bb474933877793589
-Size (rust-std-1.75.0-arm-unknown-linux-gnueabihf.tar.gz) = 36844567 bytes
-BLAKE2s (rust-std-1.75.0-armv6-unknown-netbsd-eabihf.tar.xz) = d1f848bcc8004aeac272ab9d40819de45a477fc4d50cddbe88d4debea0366769
-SHA512 (rust-std-1.75.0-armv6-unknown-netbsd-eabihf.tar.xz) = 24edfe7c2cce459e55bf3066e905ef8cfb5aef9a911534a0213089e66e7a0437ff83a90f32eeae61cd669763585466a6d50c8e95444cf994cf3fb1a08c0cec3a
-Size (rust-std-1.75.0-armv6-unknown-netbsd-eabihf.tar.xz) = 20597812 bytes
-BLAKE2s (rust-std-1.75.0-armv7-unknown-linux-gnueabihf.tar.gz) = 41b9691e41d85b070c7cde858e9ae4b24e9ce119436c9c7675859c3e1e2044cd
-SHA512 (rust-std-1.75.0-armv7-unknown-linux-gnueabihf.tar.gz) = bf9131769bb6eca1e1aa75a9c30e5a8af9521ff3b1b7fca6e005d1cc7f831cb393b4df5b0660e0dbf2e35280014fcea81849431aaaacb66d97d2320696e3c870
-Size (rust-std-1.75.0-armv7-unknown-linux-gnueabihf.tar.gz) = 38231689 bytes
-BLAKE2s (rust-std-1.75.0-armv7-unknown-netbsd-eabihf.tar.xz) = 21d376ffd7b7d2ec3ce96f673fd3bbe5400efa667005dc96c18a4f91b1c5eb95
-SHA512 (rust-std-1.75.0-armv7-unknown-netbsd-eabihf.tar.xz) = 2d32983e0d040b1605be89ce11cef4072bc76b2ef277c9e2b3687494e1b4762004cac227c23d591931e45823772d783934113c0093ceab5f8013043577f6b7b2
-Size (rust-std-1.75.0-armv7-unknown-netbsd-eabihf.tar.xz) = 21446572 bytes
-BLAKE2s (rust-std-1.75.0-i586-unknown-netbsd.tar.xz) = 5da28b2b7a3a1a629fd831d20e81b4189873ffad41308e0701befab4bc1a5b2d
-SHA512 (rust-std-1.75.0-i586-unknown-netbsd.tar.xz) = c48e4f5d33aca0c943718726e3cefb43a532f11d09d119aac129322d64556d413bab4f81013b6feb7cc18c2657c6b0ded853f237d777dde1670fc7674182e16b
-Size (rust-std-1.75.0-i586-unknown-netbsd.tar.xz) = 22592836 bytes
-BLAKE2s (rust-std-1.75.0-i686-unknown-linux-gnu.tar.gz) = 99ee660b558d511ca54e1d67f5e554d0ad76024c68ae94b5d6fe44ee86deb370
-SHA512 (rust-std-1.75.0-i686-unknown-linux-gnu.tar.gz) = bef31f337a8274c5fc5f29960e31a8a322842106ae4df00387d6efca9dd8af7791aaf763c462f8d1d97453bc04102acb13d85811476feb349694acbda5eb6d33
-Size (rust-std-1.75.0-i686-unknown-linux-gnu.tar.gz) = 40180219 bytes
-BLAKE2s (rust-std-1.75.0-mipsel-unknown-netbsd.tar.xz) = 7087912235581d2f4c7c316d0d03619710e01c7e244998c6126cef6ecb1304a8
-SHA512 (rust-std-1.75.0-mipsel-unknown-netbsd.tar.xz) = 607edb4e908e8917264e278575a242e507208bf18e919b375af973ad69a01d99fdcf6ef1249002cbd4f28252748352c5edc82dd5236d71f04e8124d6df358572
-Size (rust-std-1.75.0-mipsel-unknown-netbsd.tar.xz) = 20425360 bytes
-BLAKE2s (rust-std-1.75.0-powerpc-unknown-netbsd.tar.xz) = 7208b2332912ee93f8085cf4db3d5a3bbbd9b51935b4df673c5bdaba82249973
-SHA512 (rust-std-1.75.0-powerpc-unknown-netbsd.tar.xz) = 79beffab76d2570286b0be91adbe12ceca6fe660b651bc4abab4e25aabe82c184f3125136ab0d6a5e7cdd8fcc501691029815321a4adb9b3d0f299648991267a
-Size (rust-std-1.75.0-powerpc-unknown-netbsd.tar.xz) = 20669560 bytes
-BLAKE2s (rust-std-1.75.0-riscv64gc-unknown-netbsd.tar.xz) = e779d5fa556329a5b46aa197821b9454e729f6e523a32a7e25e3c661a935b2d2
-SHA512 (rust-std-1.75.0-riscv64gc-unknown-netbsd.tar.xz) = b5d26f048bea617024abdf8f24e81860aaa27ea22b28ae886d4528017b738d67791016ef7114cbfbe579bfa9f6fbaf93f162fd4938a10a78e959a508439c85ce
-Size (rust-std-1.75.0-riscv64gc-unknown-netbsd.tar.xz) = 20720856 bytes
-BLAKE2s (rust-std-1.75.0-sparc64-unknown-netbsd.tar.xz) = d67c447ad6c250032dc99e72ba7e5ff35c78a19ff0ded48bbfd0e87e17d3b5d3
-SHA512 (rust-std-1.75.0-sparc64-unknown-netbsd.tar.xz) = 289c00af0afe2c58db28fd1b4cbc9b2b3bf20fde1e0d0f1072a096006166037a20ef2c825dca06b8a8bf131cd3d338aa2bf25aa509f41931be83806c4ab41eb7
-Size (rust-std-1.75.0-sparc64-unknown-netbsd.tar.xz) = 20400108 bytes
-BLAKE2s (rust-std-1.75.0-x86_64-apple-darwin.tar.gz) = 7dd509b320bbc10735aff79ef4b60b4dd8fa1def707ab4d09a2f50005be3bc49
-SHA512 (rust-std-1.75.0-x86_64-apple-darwin.tar.gz) = 02e1ec9863f0e1f32aa309463a9b518f2e251a506ed3890ec4a5c299a2855e8d662e98bbfadd25314d080b76fffe6bf92e63fc41f8b60385fe4dbd6bdaf9c853
-Size (rust-std-1.75.0-x86_64-apple-darwin.tar.gz) = 41447513 bytes
-BLAKE2s (rust-std-1.75.0-x86_64-unknown-freebsd.tar.gz) = 386bed733db7247868d50680e3bed750a746e38fb0ad6f1ab93dfe4c84792008
-SHA512 (rust-std-1.75.0-x86_64-unknown-freebsd.tar.gz) = 597238100ebb1ab979df031cdd9aa3e3ced126e0d869930dfde6f2a879ce0bd8b19fc1466c63c7187a1f95a8d44f57ca42e1f6cb1a52c4c38c68df6d4d8f72fe
-Size (rust-std-1.75.0-x86_64-unknown-freebsd.tar.gz) = 43144134 bytes
-BLAKE2s (rust-std-1.75.0-x86_64-unknown-linux-gnu.tar.gz) = bd0ad4402f4bd1f91ed91551a4096377f1ee276a3597a26ba28fa31fcbb78bb7
-SHA512 (rust-std-1.75.0-x86_64-unknown-linux-gnu.tar.gz) = cd00268400a8578eed6f96523622ae0f62a5f7723aaabc5b1e78d0827bd0bacd78ccdd183568bec6973672275797fcdb1cec9a77190a8815d76792b722d1df72
-Size (rust-std-1.75.0-x86_64-unknown-linux-gnu.tar.gz) = 44978392 bytes
-BLAKE2s (rust-std-1.75.0-x86_64-unknown-netbsd.tar.xz) = 262b83e77d437e19e744f5f682da9385e82921b3ed9d0ddc2995c04aa357d9a6
-SHA512 (rust-std-1.75.0-x86_64-unknown-netbsd.tar.xz) = 90406592b92d8a9dabd25c3533ae41b83b5e6643933b548219820eedc5df9aa949de0384dc5d96e964c913c13d09081fbaae176d4d74dfe9ebbfbbc3f7f7a6d0
-Size (rust-std-1.75.0-x86_64-unknown-netbsd.tar.xz) = 25261124 bytes
-BLAKE2s (rustc-1.76.0-src.tar.gz) = 6a5d4d681d8b4bfd444d20903f192191cb429f646e00885db569f5729a8c86ea
-SHA512 (rustc-1.76.0-src.tar.gz) = 28432d2863b1181bc55303b532d036b2de0922e1cd340bd12645fcdbc9b8b8fe02de3cfeb31e0878553975693493502d1b2ad6f23ada413086d848684425cdd9
-Size (rustc-1.76.0-src.tar.gz) = 301999191 bytes
-SHA1 (patch-compiler_rustc__codegen__ssa_src_back_linker.rs) = 62819cf6db7d2e3e77d433fe883046c28fc20d91
-SHA1 (patch-compiler_rustc__llvm_build.rs) = a4a66d449fc9eb99d648d02a041778a68f4f7ce8
-SHA1 (patch-compiler_rustc__target_src_spec_base_netbsd.rs) = 7fb6ec6d45a9bf4525c675390117e9e61b8023cd
-SHA1 (patch-compiler_rustc__target_src_spec_mod.rs) = a22b5d28997ed9a5565deec9c34322165d563d00
-SHA1 (patch-compiler_rustc__target_src_spec_targets_i586__unknown__netbsd.rs) = 8dff96d99e5f774adeb7c41eabcc3b8737a18b09
-SHA1 (patch-compiler_rustc__target_src_spec_targets_mips64el__unknown__netbsd.rs) = d38c3b43656917e60312a842e6a0c37776bbd5d0
-SHA1 (patch-library_backtrace_src_symbolize_gimli.rs) = 1ab343595e65ff6348f83cffc30e53d764485ff8
-SHA1 (patch-library_backtrace_src_symbolize_gimli_elf.rs) = 3b84a462c6bc8245d579452e4c37e3ce13314952
-SHA1 (patch-library_std_src_sys_unix_mod.rs) = f8669d680f169137ac2891af2977909619366a97
-SHA1 (patch-library_std_src_sys_unix_thread.rs) = 3f79b21fa033782122e09ffc44de55a0e5ecaecb
-SHA1 (patch-library_std_src_sys_unix_thread__parking_netbsd.rs) = c29eb1cf074766d34bd2b8c348ce29c6ae2ba163
-SHA1 (patch-src_bootstrap_bootstrap.py) = 5cd73003292c935ce0e405edd132180233a04857
-SHA1 (patch-src_bootstrap_src_core_build__steps_compile.rs) = 4696304623232acd419ad15597f539a10a014271
-SHA1 (patch-src_bootstrap_src_core_builder.rs) = 0184d65cc197017440d1c0759922783c522f0d16
-SHA1 (patch-src_bootstrap_src_lib.rs) = d29bc3c0b335d5e788eecbb02fc08966beef0fb1
-SHA1 (patch-src_llvm-project_llvm_CMakeLists.txt) = 7abfabb6ec70df229a69355f8c76825610165c37
-SHA1 (patch-src_llvm-project_llvm_cmake_modules_AddLLVM.cmake) = e1b2eb2f0b3cf1cf87b443656ae306b3242f6b12
-SHA1 (patch-src_llvm-project_llvm_include_llvm-c_DataTypes.h) = cb011fc19957883c01725797f7c85ed1b20f96f1
-SHA1 (patch-src_llvm-project_llvm_include_llvm_Analysis_ConstantFolding.h) = 39d76e6659143d154ae690ac70781b698a2023d8
-SHA1 (patch-src_llvm-project_llvm_lib_Support_BLAKE3_blake3__impl.h) = 67e93f198258a5b59580be20ff47ce58b146c5d5
-SHA1 (patch-src_llvm-project_llvm_utils_FileCheck_FileCheck.cpp) = 2587c2f4d11ad8f75bf8a16de625135b26bacc15
-SHA1 (patch-src_tools_cargo_src_cargo_core_profiles.rs) = e1af7fde97416e0a269ee34efd37f4f47fcf7a95
-SHA1 (patch-src_tools_cargo_tests_testsuite_build.rs) = 60713699c968f3e389f486e796009d31a5048906
-SHA1 (patch-src_tools_rust-installer_install-template.sh) = 6984546c34a2e4d55a6dbe59baa0d4958184e0b7
-SHA1 (patch-vendor_aho-corasick_src_packed_teddy_builder.rs) = cdd3ea21c270fa7a66ffe24adf93d7f871fd8441
-SHA1 (patch-vendor_aho-corasick_src_packed_vector.rs) = 3205c7f698079e045726bfe17a372f71758ab9dd
-SHA1 (patch-vendor_backtrace_src_symbolize_gimli.rs) = b93148ff72a60a17c6a444f2616386c40d872153
-SHA1 (patch-vendor_backtrace_src_symbolize_gimli_elf.rs) = 308538090d9ce11d206d6eef0e675581a1fc6e80
-SHA1 (patch-vendor_cc-1.0.73_src_lib.rs) = 98acea9fb98898f63bbb0f6555df5e4b15da2b85
-SHA1 (patch-vendor_cc_src_lib.rs) = b205e3e8138ce0843ab622b230dd8af2b8781d6f
-SHA1 (patch-vendor_crossbeam-epoch_no__atomic.rs) = a493d0b57a22b9a83c843a1076c91b6d36d2e007
-SHA1 (patch-vendor_crossbeam-utils-0.8.14-no__atomic.rs) = 2053e2cffcb2981435c94df04d0e3f333fa77c07
-SHA1 (patch-vendor_crossbeam-utils_no__atomic.rs) = 26f797159530bc2c5e1be83a225a13e5458879b2
-SHA1 (patch-vendor_libc-0.2.148_src_unix_bsd_netbsdlike+netbsd_mips.rs) = 0895df54084281263b9dae67e57f68168fb66bd4
-SHA1 (patch-vendor_libc-0.2.148_src_unix_bsd_netbsdlike_netbsd_mod.rs) = 93ba3bc49a37448dcf446b59a3ad74be7ea74215
-SHA1 (patch-vendor_libc-0.2.148_src_unix_bsd_netbsdlike_netbsd_riscv64.rs) = 8699853de4225d4e5953d6bf17b59bc463fa7b5d
-SHA1 (patch-vendor_libc-0.2.148_src_unix_solarish_mod.rs) = bb50e900188a9221df96c4b9638425763ea82b04
-SHA1 (patch-vendor_libc_src_unix_solarish_mod.rs) = 4d16d9545b4bee3155664c4e7ce12082a7f4400e
-SHA1 (patch-vendor_lzma-sys_config.h) = b654c7e129fa02697734bc87173f89b3056a5437
-SHA1 (patch-vendor_nix-0.26.2_src_sys_signal.rs) = 0105a5c5f68fdc40c5b0a9c460b494e066f664ec
-SHA1 (patch-vendor_openssl-src_openssl_Configurations_10-main.conf) = 9813c98a0551dba197ff47e9ac0f766c50351569
-SHA1 (patch-vendor_openssl-src_src_lib.rs) = d7fce1d3b87261bc6d8a12be41e31816727cf917
-SHA1 (patch-vendor_openssl-sys_build_find__normal.rs) = 98927415bd3517a7492b87da99c8933c19c7299e
-SHA1 (patch-vendor_openssl-sys_build_main.rs) = 20618b13b56cc93bb5c051f96046604dd4977345
-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) = 65ffbc524705bddd5233b3766b3f271dfea5d625
-SHA1 (patch-vendor_valuable_no__atomic.rs) = 3a40cb846bf1fae864c55a0ddba8fdeb5efcba72
diff --git a/rust176/do-cross.mk b/rust176/do-cross.mk
deleted file mode 100644
index 36d5cd1a7f..0000000000
--- a/rust176/do-cross.mk
+++ /dev/null
@@ -1,107 +0,0 @@
-# $NetBSD$
-# Do all the NetBSD cross builds
-# Collect the bootstrap kits in dist/
-
-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+=		arm64
-SHORT_TARGETS+=		arm64_be
-SHORT_TARGETS+=		i386
-SHORT_TARGETS+=		riscv64
-SHORT_TARGETS+=		mipsel	# produces mips32 (not mips1) executables
-
-# Conditional local overrides of ROOT.* variables:
-.sinclude "local-roots.mk"
-
-# Root of target directories.
-# Must have dest/ (build.sh's DESTDIR) and tools/ subdirectories
-ROOT.armv7?=		/u/evbarm-armv7hf
-ROOT.armv6?=		/u/evbarm-armv6hf
-ROOT.sparc64?=		/u/sparc64
-ROOT.powerpc?=		/u/macppc
-ROOT.arm64?=		/u/evbarm64
-ROOT.arm64_be?=		/u/evbarm64eb
-ROOT.i386?=		/u/i386
-ROOT.mipsel?=		/u/mipsel
-ROOT.riscv64?=		/u/riscv64
-
-# Mapping to GNU triple
-G_TGT.armv7=		armv7--netbsdelf-eabihf
-G_TGT.armv6=		armv6--netbsdelf-eabihf
-G_TGT.sparc64=		sparc64--netbsd
-G_TGT.powerpc=		powerpc--netbsd
-G_TGT.arm64=		aarch64--netbsd
-G_TGT.arm64_be=		aarch64_be--netbsd
-G_TGT.i386=		i486--netbsdelf
-G_TGT.mipsel=		mipsel--netbsd
-G_TGT.riscv64=		riscv64--netbsd
-
-# Mapping to rust's TARGET specification
-TGT.armv7=		armv7-unknown-netbsd-eabihf
-TGT.armv6=		armv6-unknown-netbsd-eabihf
-TGT.sparc64=		sparc64-unknown-netbsd
-TGT.powerpc=		powerpc-unknown-netbsd
-TGT.arm64=		aarch64-unknown-netbsd
-TGT.arm64_be=		aarch64_be-unknown-netbsd
-TGT.i386=		i586-unknown-netbsd
-TGT.mipsel=		mipsel-unknown-netbsd
-TGT.riscv64=		riscv64gc-unknown-netbsd
-
-# Optional target tweak for bootstrap files
-#TT.powerpc=		powerpc-unknown-netbsd90
-
-WRKDIR=		${.CURDIR}/work
-SCRIPTS=	${WRKDIR}/scripts
-
-#DEBUG=		echo
-
-# Make list of make targets
-.for st in ${SHORT_TARGETS}
-MTGTS+=	do-${st}
-.endfor
-
-all: ${MTGTS}
-
-# Define the individual build targets, used above
-.for st in ${SHORT_TARGETS}
-CA.${st}=--host=${TGT.${st}}
-CA.${st}+=--target=${TGT.${st}}
-CA.${st}+=--set=target.${TGT.${st}}.cc=${SCRIPTS}/gcc-wrap
-CA.${st}+=--set=target.${TGT.${st}}.cxx=${SCRIPTS}/c++-wrap
-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}"
-	${DEBUG} make -f Makefile clean
-	${DEBUG} env \
-		CROSS_ROOT=${ROOT.${st}} \
-		GNU_CROSS_TARGET=${G_TGT.${st}} \
-		make -f Makefile \
-			ADD_CONFIGURE_ARGS="${CA.${st}}" \
-			TARGET=${TGT.${st}}
-	if [ "${TT.${st}}" != "" ]; then \
-		TT=${TT.${st}}; \
-	else \
-		TT=${TGT.${st}}; \
-	fi; \
-	distdir=${WRKDIR}/rustc-${V_NOREV}-src/build/dist; \
-	for comp in rust rust-std; do \
-		src=$${distdir}/$${comp}-${V_NOREV}-${TGT.${st}}.tar.xz; \
-		tgt=dist/$${comp}-${VERSION}-$${TT}.tar.xz; \
-		if [ ! -f "$${tgt}" ]; then \
-			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; \
-		${DEBUG} ln $${distdir}/$${src_comp} dist; \
-	fi
-.endfor
diff --git a/rust176/files/gcc-wrap b/rust176/files/gcc-wrap
deleted file mode 100644
index 957ebfa032..0000000000
--- a/rust176/files/gcc-wrap
+++ /dev/null
@@ -1,199 +0,0 @@
-#! /bin/sh
-
-# Root of targets tools + dest directories
-# or unset to default to a native build.
-
-# This script assumes target tools in $root/tools 
-# and target's destdir in $root/dest, the result of a NetBSD build.sh.
-# ...or the native root, when we don't cross-compile
-root=${CROSS_ROOT:-/}
-
-incadd=""
-native=false
-if [ $root = "/" ]; then
-	native=true
-else
-	# What's the tools/bin prefix (if we're cross-building)?
-	gnuarch=${GNU_CROSS_TARGET:?}
-
-	# A special hack for netbsd-8 targets.
-	# netbsd-8 has gcc 5.5, but llvm and rust needs >= 7
-	# so we build tools from -9, and try to use that, but
-	# then the include path becomes wrong, and <stdatomic.h>
-	# is no longer picked up automatically by the compiler
-	# from the target destination directory
-	case $gnuarch in
-		sparc64*)	incadd="-I=/usr/include/gcc-5"
-				;;
-
-				# immintrin & from gcc-5 not
-				# compatible with gcc7, apparently
-		i[3456]86*)	incadd="-I=/usr/include/gcc-7"
-				;;
-
-				# mips64 does soft-float
-		mips64*)	madd="-msoft-float"
-				;;
-	esac
-	# We build both for -8 and -9 due to ABI differences,
-	# so can't just test $gnuarch...  Yes, a vile hack.
-	if [ "$root" = "/u/macppc" ]; then
-		incadd="-I=/usr/include/gcc-5"
-	fi
-fi
-
-# Who are we a wrapper for? (Typically either gcc or c++)
-who=$(basename $0 | sed -e 's/-wrap$//')
-
-args=""
-if [ ! -z "$madd" ]; then
-	args="$args $madd"
-fi
-
-# May need to add $linkadd before first -l or fist -L
-linkadd="-Wl,--sysroot=${root}/dest"
-# (perhaps this is overly cautious, other adjustments we do
-# below may be sufficient...)
-# Lib directories to ensure we search and have in run-path
-libs="/lib /usr/lib /usr/pkg/lib"
-
-for d in $libs; do
-	if ! $native; then
-		linkadd="$linkadd -L=$d"
-		linkadd="$linkadd -Wl,-rpath-link=${root}/dest/$d"
-	fi
-	# Run-path is for when we execute on the target,
-	# so no $root prefix
-	linkadd="$linkadd -Wl,-rpath,$d"
-done
-
-# ...and add a placeholder so we can tweak RPATH with chrpath,
-# since chrpath can't extend the length of the run path
-# (This may also not be needed, we use LD_LIBRARY_PATH instead)
-placeholder="placeholder-$(date | openssl dgst -sha1 | \
-	awk '{ print $2 }')"
-linkadd="$linkadd -Wl,-rpath,/$placeholder"
-# the / is a sneaky attempt to let it past cwrapper...
-
-# More debugging
-linkadd="$linkadd -Wl,--verbose"
-
-linktweaked=false
-
-# Step through args, tweak where required
-set -- "$@"
-while [ $# -gt 0 ]; do
-	case "$1" in
-# Insert = at the front of -isystem args.
-# This is to get --sysroot prepended, so that
-# we pick up the correct set of header files.
-# (I thought this wasn't reqired, but apparently it is...)
-		-isystem)
-			shift
-			args="$args -isystem =$1"
-			;;
-# Also doctor -I directives of known paths and
-# redirect them to the --sysroot.
-		-I/usr/include)
-			args="$args -I=/usr/include"
-			;;
-		-I/usr/include/krb5)
-			args="$args -I=/usr/include/krb5"
-			;;
-		-I/usr/pkg/include)
-# Try to drop this...
-			if ! $native; then
-				args="$args -I=/usr/pkg/include"
-			fi
-			;;
-		-I)
-			if [ $2 = "/usr/include" ]; then
-				args="$args -I=/usr/include"
-				shift
-			elif [ $2 = "/usr/include/krb5" ]; then
-				args="$args -I=/usr/include/krb5"
-				shift
-			elif [ $2 = "/usr/pkg/include" ]; then
-# Try to drop this too...
-				if ! $native; then
-					args="$args -I=/usr/pkg/include"
-				fi
-				shift
-			else
-				args="$args -I"
-			fi
-			;;
-		-l*)
-			if ! $linktweaked; then
-				args="$args $linkadd"
-				linktweaked=true
-			fi
-			args="$args $1"
-			;;
-		-L)
-			if ! $linktweaked; then
-				args="$args $linkadd"
-				linktweaked=true
-			fi
-			shift
-			tweaked=false
-			# redirect these to -Wl,--sysroot
-			for d in /lib /usr/lib /usr/pkg/lib; do
-				if [ $1 = $d ]; then
-					args="$args -L =$d"
-					tweaked=true
-				fi
-			done
-			# Not redirected?  If so we need to add
-			if ! $tweaked; then
-				args="$args -L $1"
-			fi
-			;;
-			
-		-L/lib)
-			if ! $linktweaked; then
-				args="$args $linkadd"
-				linktweaked=true
-			fi
-			args="$args -L=/lib"
-			;;
-		-L/usr/lib)
-			if ! $linktweaked; then
-				args="$args $linkadd"
-				linktweaked=true
-			fi
-			args="$args -L=/usr/lib"
-			;;
-		-L/usr/pkg/lib)
-			if ! $linktweaked; then
-				args="$args $linkadd"
-				linktweaked=true
-			fi
-			args="$args -L=/usr/pkg/lib"
-			;;
-		-Wl,--enable-new-dtags)
-			# ignore
-			;;
-		*)
-			args="$args $1"
-			;;
-	esac
-	shift
-done
-
-if $native; then
-	# Try to avoid cwrappers, which does "undocumented magic"
-	# by invoking the compiler "directly".
-	#cmd="/usr/bin/${who} $args"
-	# (however, this wrapper isn't used when buliding natively...)
-	cmd="${who} $args"
-else
-	cmd="${root}/tools/bin/${gnuarch}-${who} \
-		--sysroot=${root}/dest \
-		$incadd \
-		$args"
-fi
-
-# Cannot echo to stdout, messes up e.g. "gcc -print-prog-name=ld" output...
-#echo $cmd >> /tmp/gcc-wrap.log
-exec $cmd
diff --git a/rust176/options.mk b/rust176/options.mk
deleted file mode 100644
index b6608e8f05..0000000000
--- a/rust176/options.mk
+++ /dev/null
@@ -1,76 +0,0 @@
-# $NetBSD: options.mk,v 1.26 2022/07/11 20:13:50 jperkin Exp $
-
-PKG_OPTIONS_VAR=	PKG_OPTIONS.rust
-PKG_SUPPORTED_OPTIONS+=	rust-cargo-static rust-docs
-
-.include "../../mk/bsd.fast.prefs.mk"
-
-# The bundled LLVM current has issues building on SunOS.
-.if ${OPSYS} != "SunOS"
-PKG_SUPPORTED_OPTIONS+=		rust-internal-llvm
-# There may be compatibility issues with the base LLVM on e.g. NetBSD.
-.  if !empty(HAVE_LLVM) || ${MACHINE_PLATFORM:MDarwin-*-aarch64}
-PKG_SUGGESTED_OPTIONS+=		rust-internal-llvm
-.  endif
-.endif
-
-# If cross-building, always use the internal LLVM
-.if !empty(TARGET)
-PKG_SUGGESTED_OPTIONS+=		rust-internal-llvm
-.endif
-
-# Bundle OpenSSL and curl into the cargo binary when producing
-# bootstraps on NetBSD.
-.if ${OPSYS} == "NetBSD" && ${BUILD_TARGET} == "dist"
-PKG_SUGGESTED_OPTIONS+=	rust-cargo-static
-.endif
-
-PKG_OPTIONS_LEGACY_OPTS+=	rust-llvm:rust-internal-llvm
-
-.include "../../mk/bsd.options.mk"
-
-#
-# Use the internal copy of LLVM or the external one?
-#
-.if empty(PKG_OPTIONS:Mrust-internal-llvm)
-# External LLVM must be >= 16, ref. RELEASES.md
-BUILDLINK_API_DEPENDS.llvm+=	llvm>=16
-.include "../../lang/libunwind/buildlink3.mk"
-.include "../../lang/llvm/buildlink3.mk"
-CONFIGURE_ARGS+=	--enable-llvm-link-shared
-CONFIGURE_ARGS+=	--llvm-libunwind=system
-CONFIGURE_ARGS+=	--llvm-root=${BUILDLINK_PREFIX.llvm}
-.endif
-
-# NetBSD/sparc64 when using the internal LLVM needs
-# to not use gcc 10.4 or 10.5 (as found in 10.0_BETA or 10.0), ref.
-# https://github.com/rust-lang/rust/issues/117231
-# (however, gcc from 9.x produces a working LLVM).
-.if ${MACHINE_PLATFORM:MNetBSD-10.*-sparc64}
-.  if !empty(PKG_OPTIONS:Mrust-internal-llvm)
-# Require GCC 12 (from pkgsrc) to correctly build the embedded LLVM (17.x).
-GCC_REQD+=	12
-.  endif
-.endif
-
-#
-# Link cargo statically against "native" libraries.
-# (openssl and curl specifically).
-#
-.if !empty(PKG_OPTIONS:Mrust-cargo-static)
-CONFIGURE_ARGS+=	--enable-cargo-native-static
-.else
-BUILDLINK_API_DEPENDS.nghttp2+= nghttp2>=1.41.0
-BUILDLINK_API_DEPENDS.curl+= 	curl>=7.67.0
-.include "../../www/curl/buildlink3.mk"
-.include "../../security/openssl/buildlink3.mk"
-.endif
-
-#
-# Install documentation.
-#
-.if !empty(PKG_OPTIONS:Mrust-docs)
-CONFIGURE_ARGS+=	--enable-docs
-.else
-CONFIGURE_ARGS+=	--disable-docs
-.endif
diff --git a/rust176/patches/patch-compiler_rustc__codegen__ssa_src_back_linker.rs b/rust176/patches/patch-compiler_rustc__codegen__ssa_src_back_linker.rs
deleted file mode 100644
index d603fa804b..0000000000
--- a/rust176/patches/patch-compiler_rustc__codegen__ssa_src_back_linker.rs
+++ /dev/null
@@ -1,15 +0,0 @@
-$NetBSD$
-
-Do not use @rpath on Darwin.
-
---- 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
-@@ -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 {
--                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/rust176/patches/patch-compiler_rustc__llvm_build.rs b/rust176/patches/patch-compiler_rustc__llvm_build.rs
deleted file mode 100644
index b000456d6d..0000000000
--- a/rust176/patches/patch-compiler_rustc__llvm_build.rs
+++ /dev/null
@@ -1,50 +0,0 @@
-$NetBSD$
-
-Fix build on NetBSD HEAD-llvm. XXX there is probably a better way to do this.
-
-Pick up -latomic tweak from
-https://github.com/rust-lang/rust/issues/104220
-and
-https://github.com/rust-lang/rust/pull/104572
-
---- compiler/rustc_llvm/build.rs.orig	2023-10-03 02:52:17.000000000 +0000
-+++ compiler/rustc_llvm/build.rs
-@@ -249,6 +249,10 @@ fn main() {
-     {
-         // 32-bit targets need to link libatomic.
-         println!("cargo:rustc-link-lib=atomic");
-+        if target.contains("netbsd")
-+        {
-+            println!("cargo:rustc-link-lib=z");
-+        }
-     } else if target.contains("windows-gnu") {
-         println!("cargo:rustc-link-lib=shell32");
-         println!("cargo:rustc-link-lib=uuid");
-@@ -261,7 +265,11 @@ fn main() {
-         // On NetBSD/i386, gcc and g++ is built for i486 (to maximize backward compat)
-         // However, LLVM insists on using 64-bit atomics.
-         // This gives rise to a need to link rust itself with -latomic for these targets
--        if target.starts_with("i586") || target.starts_with("i686") {
-+        if target.starts_with("i386") 
-+           || target.starts_with("i486") 
-+           || target.starts_with("i586") 
-+           || target.starts_with("i686")
-+        {
-             println!("cargo:rustc-link-lib=atomic");
-         }
-         println!("cargo:rustc-link-lib=z");
-@@ -352,7 +360,13 @@ fn main() {
-         "c++"
-     } else if target.contains("netbsd") && llvm_static_stdcpp.is_some() {
-         // NetBSD uses a separate library when relocation is required
--        "stdc++_p"
-+	if env::var_os("PKGSRC_HAVE_LIBCPP").is_some() {
-+            "c++_pic"
-+	} else {
-+            "stdc++_pic"
-+	}
-+    } else if env::var_os("PKGSRC_HAVE_LIBCPP").is_some() {
-+	"c++"
-     } else if llvm_use_libcxx.is_some() {
-         "c++"
-     } else {
diff --git a/rust176/patches/patch-compiler_rustc__target_src_spec_base_netbsd.rs b/rust176/patches/patch-compiler_rustc__target_src_spec_base_netbsd.rs
deleted file mode 100644
index a57da2a270..0000000000
--- a/rust176/patches/patch-compiler_rustc__target_src_spec_base_netbsd.rs
+++ /dev/null
@@ -1,32 +0,0 @@
-$NetBSD$
-
-For the benefit of powerpc, when libatomic-links is installed,
-search the directory containing the symlinks to -latomic.
-
---- compiler/rustc_target/src/spec/base/netbsd.rs.orig	2024-01-06 19:57:14.887897867 +0000
-+++ compiler/rustc_target/src/spec/base/netbsd.rs
-@@ -1,12 +1,23 @@
--use crate::spec::{cvs, RelroLevel, TargetOptions};
-+use crate::spec::{cvs, Cc, Lld, RelroLevel, LinkerFlavor, TargetOptions};
- 
- pub fn opts() -> TargetOptions {
-+    let add_linker_paths =
-+        &[
-+            // For the benefit of powerpc, when libatomic-links is installed,
-+            "-Wl,-R@PREFIX@/lib/libatomic",
-+            "-Wl,-L@PREFIX@/lib/libatomic",
-+        ];
-+    let pre_link_args = TargetOptions::link_args(
-+        LinkerFlavor::Gnu(Cc::Yes, Lld::No),
-+        add_linker_paths
-+    );
-     TargetOptions {
-         os: "netbsd".into(),
-         dynamic_linking: true,
-         families: cvs!["unix"],
-         no_default_libraries: false,
-         has_rpath: true,
-+        pre_link_args,
-         position_independent_executables: true,
-         relro_level: RelroLevel::Full,
-         use_ctors_section: true,
diff --git a/rust176/patches/patch-compiler_rustc__target_src_spec_mod.rs b/rust176/patches/patch-compiler_rustc__target_src_spec_mod.rs
deleted file mode 100644
index 324f6c804d..0000000000
--- a/rust176/patches/patch-compiler_rustc__target_src_spec_mod.rs
+++ /dev/null
@@ -1,14 +0,0 @@
-$NetBSD$
-
-Add entry for NetBSD/mips64el.
-
---- compiler/rustc_target/src/spec/mod.rs.orig	2024-01-13 14:20:59.236278792 +0000
-+++ compiler/rustc_target/src/spec/mod.rs
-@@ -1532,6 +1532,7 @@ supported_targets! {
-     ("armv7-unknown-netbsd-eabihf", armv7_unknown_netbsd_eabihf),
-     ("i586-unknown-netbsd", i586_unknown_netbsd),
-     ("i686-unknown-netbsd", i686_unknown_netbsd),
-+    ("mips64el-unknown-netbsd", mips64el_unknown_netbsd),
-     ("mipsel-unknown-netbsd", mipsel_unknown_netbsd),
-     ("powerpc-unknown-netbsd", powerpc_unknown_netbsd),
-     ("riscv64gc-unknown-netbsd", riscv64gc_unknown_netbsd),
diff --git a/rust176/patches/patch-compiler_rustc__target_src_spec_targets_i586__unknown__netbsd.rs b/rust176/patches/patch-compiler_rustc__target_src_spec_targets_i586__unknown__netbsd.rs
deleted file mode 100644
index c7dc641d12..0000000000
--- a/rust176/patches/patch-compiler_rustc__target_src_spec_targets_i586__unknown__netbsd.rs
+++ /dev/null
@@ -1,16 +0,0 @@
-$NetBSD$
-
-Change to Inline stack probing, as suggested by
-https://github.com/rust-lang/rust/pull/120411
-
---- compiler/rustc_target/src/spec/targets/i586_unknown_netbsd.rs.orig	2024-02-26 11:56:11.087253310 +0000
-+++ compiler/rustc_target/src/spec/targets/i586_unknown_netbsd.rs
-@@ -4,7 +4,7 @@ pub fn target() -> Target {
-     let mut base = base::netbsd::opts();
-     base.cpu = "pentium".into();
-     base.max_atomic_width = Some(64);
--    base.stack_probes = StackProbeType::Call;
-+    base.stack_probes = StackProbeType::Inline;
- 
-     Target {
-         llvm_target: "i586-unknown-netbsdelf".into(),
diff --git a/rust176/patches/patch-compiler_rustc__target_src_spec_targets_mips64el__unknown__netbsd.rs b/rust176/patches/patch-compiler_rustc__target_src_spec_targets_mips64el__unknown__netbsd.rs
deleted file mode 100644
index 710cf5ffdd..0000000000
--- a/rust176/patches/patch-compiler_rustc__target_src_spec_targets_mips64el__unknown__netbsd.rs
+++ /dev/null
@@ -1,29 +0,0 @@
-$NetBSD$
-
-Provide a mips64el target with N32, suitable for NetBSD/mips64el.
-
---- compiler/rustc_target/src/spec/targets/mips64el_unknown_netbsd.rs.orig	2024-01-13 14:16:30.122042614 +0000
-+++ compiler/rustc_target/src/spec/targets/mips64el_unknown_netbsd.rs
-@@ -0,0 +1,22 @@
-+use crate::abi::Endian;
-+use crate::spec::{base, Target, TargetOptions};
-+
-+pub fn target() -> Target {
-+    let mut base = base::netbsd::opts();
-+    base.max_atomic_width = Some(32);
-+    base.cpu = "mips32".into();
-+
-+    Target {
-+        llvm_target: "mipsel-unknown-netbsd".into(),
-+        pointer_width: 32,
-+        data_layout: "e-m:m-p:32:32-i8:8:32-i16:16:32-i64:64-n32-S64".into(),
-+        arch: "mips".into(),
-+        options: TargetOptions {
-+            abi: "n32".into(),
-+            features: "+soft-float,+abi=n32".into(),
-+            endian: Endian::Little,
-+            mcount: "__mcount".into(),
-+            ..base
-+        },
-+    }
-+}
diff --git a/rust176/patches/patch-library_backtrace_src_symbolize_gimli.rs b/rust176/patches/patch-library_backtrace_src_symbolize_gimli.rs
deleted file mode 100644
index 0ed9af7822..0000000000
--- a/rust176/patches/patch-library_backtrace_src_symbolize_gimli.rs
+++ /dev/null
@@ -1,14 +0,0 @@
-$NetBSD$
-
-Add NetBSD to the family who is in the unix class.
-
---- library/backtrace/src/symbolize/gimli.rs.orig	2022-04-04 09:41:26.000000000 +0000
-+++ library/backtrace/src/symbolize/gimli.rs
-@@ -38,6 +38,7 @@ cfg_if::cfg_if! {
-         target_os = "ios",
-         target_os = "linux",
-         target_os = "macos",
-+        target_os = "netbsd",
-         target_os = "openbsd",
-         target_os = "solaris",
-         target_os = "illumos",
diff --git a/rust176/patches/patch-library_backtrace_src_symbolize_gimli_elf.rs b/rust176/patches/patch-library_backtrace_src_symbolize_gimli_elf.rs
deleted file mode 100644
index c8ee922920..0000000000
--- a/rust176/patches/patch-library_backtrace_src_symbolize_gimli_elf.rs
+++ /dev/null
@@ -1,25 +0,0 @@
-$NetBSD$
-
-Make NetBSD also find its debug libraries, if present.
-
---- library/backtrace/src/symbolize/gimli/elf.rs.orig	2022-04-04 09:41:26.000000000 +0000
-+++ library/backtrace/src/symbolize/gimli/elf.rs
-@@ -304,11 +304,17 @@ fn decompress_zlib(input: &[u8], output:
-     }
- }
- 
-+#[cfg(target_os = "netbsd")]
-+const DEBUG_PATH: &[u8] = b"/usr/libdata/debug";
-+#[cfg(not(target_os = "netbsd"))]
- const DEBUG_PATH: &[u8] = b"/usr/lib/debug";
- 
- fn debug_path_exists() -> bool {
-     cfg_if::cfg_if! {
--        if #[cfg(any(target_os = "freebsd", target_os = "hurd", target_os = "linux"))] {
-+        if #[cfg(any(target_os = "freebsd",
-+                     target_os = "netbsd",
-+                     target_os = "hurd",
-+                     target_os = "linux"))] {
-             use core::sync::atomic::{AtomicU8, Ordering};
-             static DEBUG_PATH_EXISTS: AtomicU8 = AtomicU8::new(0);
- 
diff --git a/rust176/patches/patch-library_std_src_sys_unix_mod.rs b/rust176/patches/patch-library_std_src_sys_unix_mod.rs
deleted file mode 100644
index 025b74b7b4..0000000000
--- a/rust176/patches/patch-library_std_src_sys_unix_mod.rs
+++ /dev/null
@@ -1,14 +0,0 @@
-$NetBSD$
-
-Add libexecinfo for backtrace() on NetBSD.
-
---- library/std/src/sys/unix/mod.rs.orig	2021-02-10 17:36:44.000000000 +0000
-+++ library/std/src/sys/unix/mod.rs
-@@ -269,6 +269,7 @@ cfg_if::cfg_if! {
-         #[link(name = "pthread")]
-         extern "C" {}
-     } else if #[cfg(target_os = "netbsd")] {
-+        #[link(name = "execinfo")]
-         #[link(name = "pthread")]
-         #[link(name = "rt")]
-         extern "C" {}
diff --git a/rust176/patches/patch-library_std_src_sys_unix_thread.rs b/rust176/patches/patch-library_std_src_sys_unix_thread.rs
deleted file mode 100644
index f01348ffb6..0000000000
--- a/rust176/patches/patch-library_std_src_sys_unix_thread.rs
+++ /dev/null
@@ -1,56 +0,0 @@
-$NetBSD$
-
-Fix stack-clash on SunOS.
-
-Undo new(ish) code (from 1.72.0) which attempts to count threads/CPUs
-on NetBSD; somehow it is causing crashes in bootstrap() on certain
-CPU architectures (i386, powerpc, armv7, but not riscv64, aarch64
-or amd64); _cpuset_isset() crashes with SEGV.  And according to
-what I hear, the code is bogus; by default threads do not have
-affinity to any specific set of CPUs in NetBSD, and trying to
-replicate this with a simple C program always results in 0.
-So rip the newish code out with prejudice, and instead fallback to
-the sysctl() method of getting "number of CPUs" which was used
-before (and is still present, following the ripped-out code).
-
---- library/std/src/sys/unix/thread.rs.orig	2020-10-07 07:53:22.000000000 +0000
-+++ library/std/src/sys/unix/thread.rs
-@@ -352,29 +352,6 @@ pub fn available_parallelism() -> io::Re
-                 }
-             }
- 
--            #[cfg(target_os = "netbsd")]
--            {
--                unsafe {
--                    let set = libc::_cpuset_create();
--                    if !set.is_null() {
--                        let mut count: usize = 0;
--                        if libc::pthread_getaffinity_np(libc::pthread_self(), libc::_cpuset_size(set), set) == 0 {
--                            for i in 0..u64::MAX {
--                                match libc::_cpuset_isset(i, set) {
--                                    -1 => break,
--                                    0 => continue,
--                                    _ => count = count + 1,
--                                }
--                            }
--                        }
--                        libc::_cpuset_destroy(set);
--                        if let Some(count) = NonZeroUsize::new(count) {
--                            return Ok(count);
--                        }
--                    }
--                }
--            }
--
-             let mut cpus: libc::c_uint = 0;
-             let mut cpus_size = crate::mem::size_of_val(&cpus);
- 
-@@ -812,7 +789,7 @@ pub mod guard {
-         let page_size = os::page_size();
-         PAGE_SIZE.store(page_size, Ordering::Relaxed);
- 
--        if cfg!(all(target_os = "linux", not(target_env = "musl"))) {
-+        if cfg!(any(target_os = "solaris", all(target_os = "linux", not(target_env = "musl")))) {
-             // Linux doesn't allocate the whole stack right away, and
-             // the kernel has its own stack-guard mechanism to fault
-             // when growing too close to an existing mapping. If we map
diff --git a/rust176/patches/patch-library_std_src_sys_unix_thread__parking_netbsd.rs b/rust176/patches/patch-library_std_src_sys_unix_thread__parking_netbsd.rs
deleted file mode 100644
index 57dcc19ec1..0000000000
--- a/rust176/patches/patch-library_std_src_sys_unix_thread__parking_netbsd.rs
+++ /dev/null
@@ -1,34 +0,0 @@
-$NetBSD$
-
-Try to cast to make this build, to avoid
-
-error[E0277]: the trait bound `i32: core::convert::From<u32>` is not satisfied
-  --> library/std/src/sys/unix/thread_parking/netbsd.rs:37:37
-   |
-37 |         tv_nsec: dur.subsec_nanos().into(),
-   |                                     ^^^^ the trait `core::convert::From<u32>` is not implemented for `i32`
-   |
-   = help: the following other types implement trait `core::convert::From<T>`:
-             <i32 as core::convert::From<NonZeroI32>>
-             <i32 as core::convert::From<bool>>
-             <i32 as core::convert::From<i16>>
-             <i32 as core::convert::From<i8>>
-             <i32 as core::convert::From<u16>>
-             <i32 as core::convert::From<u8>>
-   = note: required for `u32` to implement `core::convert::Into<i32>`
-
-For more information about this error, try `rustc --explain E0277`.
-
-This to un-break the 32-bit ports ... again.
-
---- library/std/src/sys/unix/thread_parking/netbsd.rs.orig	2023-03-06 15:58:58.000000000 +0000
-+++ library/std/src/sys/unix/thread_parking/netbsd.rs
-@@ -34,7 +34,7 @@ pub fn park_timeout(dur: Duration, hint:
-         // Saturate so that the operation will definitely time out
-         // (even if it is after the heat death of the universe).
-         tv_sec: dur.as_secs().try_into().ok().unwrap_or(time_t::MAX),
--        tv_nsec: dur.subsec_nanos().into(),
-+        tv_nsec: (dur.subsec_nanos() as libc::c_long).into(),
-     };
- 
-     // Timeout needs to be mutable since it is modified on NetBSD 9.0 and
diff --git a/rust176/patches/patch-src_bootstrap_bootstrap.py b/rust176/patches/patch-src_bootstrap_bootstrap.py
deleted file mode 100644
index 20489b8ae1..0000000000
--- a/rust176/patches/patch-src_bootstrap_bootstrap.py
+++ /dev/null
@@ -1,47 +0,0 @@
-$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.
-Handle earmv[67]hf for NetBSD.
-Also use @PREFIX@ and not $ORIGIN in rpath.
-
---- src/bootstrap/bootstrap.py.orig	2023-07-12 03:32:40.000000000 +0000
-+++ src/bootstrap/bootstrap.py
-@@ -271,6 +271,11 @@ def default_build_triple(verbose):
-         'GNU': 'unknown-hurd',
-     }
- 
-+    # For NetBSD, use `uname -p`, as there it is reliable & sensible
-+    if kernel == 'NetBSD':
-+        cputype = subprocess.check_output(
-+            ['uname', '-p']).strip().decode(default_encoding)
-+
-     # Consider the direct transformation first and then the special cases
-     if kernel in kerneltype_mapper:
-         kernel = kerneltype_mapper[kernel]
-@@ -374,10 +379,16 @@ def default_build_triple(verbose):
-             kernel = 'linux-androideabi'
-         else:
-             kernel += 'eabihf'
--    elif cputype in {'armv7l', 'armv8l'}:
-+    elif cputype in {'armv6hf', 'earmv6hf'}:
-+        cputype = 'armv6'
-+        if kernel == 'unknown-netbsd':
-+            kernel += '-eabihf'
-+    elif cputype in {'armv7l', 'earmv7hf', 'armv8l'}:
-         cputype = 'armv7'
-         if kernel == 'linux-android':
-             kernel = 'linux-androideabi'
-+        elif kernel == 'unknown-netbsd':
-+            kernel += '-eabihf'
-         else:
-             kernel += 'eabihf'
-     elif cputype == 'mips':
-@@ -735,7 +746,7 @@ class RustBuild(object):
-         rpath_entries = [
-             # Relative default, all binary and dynamic libraries we ship
-             # appear to have this (even when `../lib` is redundant).
--            "$ORIGIN/../lib",
-+            "@PREFIX@/lib",
-             os.path.join(os.path.realpath(nix_deps_dir), "lib")
-         ]
-         patchelf_args = ["--set-rpath", ":".join(rpath_entries)]
diff --git a/rust176/patches/patch-src_bootstrap_src_core_build__steps_compile.rs b/rust176/patches/patch-src_bootstrap_src_core_build__steps_compile.rs
deleted file mode 100644
index a14e2a2bd8..0000000000
--- a/rust176/patches/patch-src_bootstrap_src_core_build__steps_compile.rs
+++ /dev/null
@@ -1,15 +0,0 @@
-$NetBSD$
-
-On Darwin, do not use @rpath for internal libraries.
-
---- src/bootstrap/src/core/build_steps/compile.rs.orig	2024-01-06 20:42:20.028206400 +0000
-+++ src/bootstrap/src/core/build_steps/compile.rs
-@@ -626,7 +626,7 @@ fn copy_sanitizers(
-             || target == "x86_64-apple-ios"
-         {
-             // 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,
-             // so we will sign it again.
-             apple_darwin_sign_file(&dst);
diff --git a/rust176/patches/patch-src_bootstrap_src_core_builder.rs b/rust176/patches/patch-src_bootstrap_src_core_builder.rs
deleted file mode 100644
index 9c1413ee85..0000000000
--- a/rust176/patches/patch-src_bootstrap_src_core_builder.rs
+++ /dev/null
@@ -1,15 +0,0 @@
-$NetBSD$
-
-Use @PREFIX@, not $ORIGIN in rpath.
-
---- src/bootstrap/src/core/builder.rs.orig	2024-02-04 13:18:05.000000000 +0000
-+++ src/bootstrap/src/core/builder.rs
-@@ -1687,7 +1687,7 @@ impl<'a> Builder<'a> {
-                 Some(format!("-Wl,-rpath,@loader_path/../{libdir}"))
-             } else if !target.is_windows() && !target.contains("aix") && !target.contains("xous") {
-                 rustflags.arg("-Clink-args=-Wl,-z,origin");
--                Some(format!("-Wl,-rpath,$ORIGIN/../{libdir}"))
-+                Some(format!("-Wl,-rpath,@PREFIX@/{libdir}"))
-             } else {
-                 None
-             };
diff --git a/rust176/patches/patch-src_bootstrap_src_lib.rs b/rust176/patches/patch-src_bootstrap_src_lib.rs
deleted file mode 100644
index 6eae1d06df..0000000000
--- a/rust176/patches/patch-src_bootstrap_src_lib.rs
+++ /dev/null
@@ -1,23 +0,0 @@
-$NetBSD$
-
-Don't filter out optimization flags.
-FreeBSD has a particular C++ runtime library name
-
---- src/bootstrap/src/lib.rs.orig	2024-01-06 20:52:50.892941220 +0000
-+++ src/bootstrap/src/lib.rs
-@@ -1195,13 +1195,13 @@ impl Build {
-             .args()
-             .iter()
-             .map(|s| s.to_string_lossy().into_owned())
--            .filter(|s| !s.starts_with("-O") && !s.starts_with("/O"))
-             .collect::<Vec<String>>();
- 
-         // If we're compiling C++ on macOS then we add a flag indicating that
-         // we want libc++ (more filled out than libstdc++), ensuring that
-         // LLVM/etc are all properly compiled.
--        if matches!(c, CLang::Cxx) && target.contains("apple-darwin") {
-+        if matches!(c, CLang::Cxx) && 
-+            (target.contains("apple-darwin") || target.contains("freebsd")) {
-             base.push("-stdlib=libc++".into());
-         }
- 
diff --git a/rust176/patches/patch-src_llvm-project_llvm_CMakeLists.txt b/rust176/patches/patch-src_llvm-project_llvm_CMakeLists.txt
deleted file mode 100644
index 2477a555c8..0000000000
--- a/rust176/patches/patch-src_llvm-project_llvm_CMakeLists.txt
+++ /dev/null
@@ -1,18 +0,0 @@
-$NetBSD: patch-src_llvm-project_llvm_CMakeLists.txt,v 1.1 2019/04/14 12:42:03 he Exp $
-
-Don't implement sys/regset.h workaround, fix source instead.
-
---- src/llvm-project/llvm/CMakeLists.txt.orig	2018-03-10 02:51:13.000000000 +0000
-+++ src/llvm-project/llvm/CMakeLists.txt
-@@ -939,11 +939,6 @@ if(LLVM_TARGET_IS_CROSSCOMPILE_HOST)
- # (this is a variable that CrossCompile sets on recursive invocations)
- endif()
- 
--if( ${CMAKE_SYSTEM_NAME} MATCHES SunOS )
--   # special hack for Solaris to handle crazy system sys/regset.h
--   include_directories("${LLVM_MAIN_INCLUDE_DIR}/llvm/Support/Solaris")
--endif( ${CMAKE_SYSTEM_NAME} MATCHES SunOS )
--
- # Make sure we don't get -rdynamic in every binary. For those that need it,
- # use export_executable_symbols(target).
- set(CMAKE_SHARED_LIBRARY_LINK_CXX_FLAGS "")
diff --git a/rust176/patches/patch-src_llvm-project_llvm_cmake_modules_AddLLVM.cmake b/rust176/patches/patch-src_llvm-project_llvm_cmake_modules_AddLLVM.cmake
deleted file mode 100644
index b213c40364..0000000000
--- a/rust176/patches/patch-src_llvm-project_llvm_cmake_modules_AddLLVM.cmake
+++ /dev/null
@@ -1,49 +0,0 @@
-$NetBSD: patch-src_llvm-project_llvm_cmake_modules_AddLLVM.cmake,v 1.3 2020/08/06 11:42:56 jperkin Exp $
-
-On Darwin, use correct install-name for shared libraries.
-
-Undo some of the RPATH magic so that cross-building
-works inside pkgsrc again (indirectly eliminates $ORIGIN rpath
-handling / editing, $ORIGIN handling is partially undone by cwrappers
-in pkgsrc).
-
---- src/llvm-project/llvm/cmake/modules/AddLLVM.cmake.orig	2023-07-12 03:33:01.000000000 +0000
-+++ src/llvm-project/llvm/cmake/modules/AddLLVM.cmake
-@@ -2311,7 +2311,7 @@ function(llvm_setup_rpath name)
-   endif()
- 
-   if (APPLE)
--    set(_install_name_dir INSTALL_NAME_DIR "@rpath")
-+    set(_install_name_dir INSTALL_NAME_DIR "${CMAKE_INSTALL_PREFIX}/lib")
-     set(_install_rpath "@loader_path/../lib${LLVM_LIBDIR_SUFFIX}" ${extra_libdir})
-   elseif(${CMAKE_SYSTEM_NAME} MATCHES "AIX" AND BUILD_SHARED_LIBS)
-     # $ORIGIN is not interpreted at link time by aix ld.
-@@ -2320,8 +2320,7 @@ function(llvm_setup_rpath name)
-     # FIXME: update this when there is better solution.
-     set(_install_rpath "${LLVM_LIBRARY_OUTPUT_INTDIR}" "${CMAKE_INSTALL_PREFIX}/lib${LLVM_LIBDIR_SUFFIX}" ${extra_libdir})
-   elseif(UNIX)
--    set(_build_rpath "\$ORIGIN/../lib${LLVM_LIBDIR_SUFFIX}" ${extra_libdir})
--    set(_install_rpath "\$ORIGIN/../lib${LLVM_LIBDIR_SUFFIX}")
-+    set(_install_rpath "\$ORIGIN/../lib${LLVM_LIBDIR_SUFFIX}" ${extra_libdir})
-     if(${CMAKE_SYSTEM_NAME} MATCHES "(FreeBSD|DragonFly)")
-       set_property(TARGET ${name} APPEND_STRING PROPERTY
-                    LINK_FLAGS " -Wl,-z,origin ")
-@@ -2335,16 +2334,9 @@ function(llvm_setup_rpath name)
-     return()
-   endif()
- 
--  # Enable BUILD_WITH_INSTALL_RPATH unless CMAKE_BUILD_RPATH is set and not
--  # building for macOS or AIX, as those platforms seemingly require it.
--  # On AIX, the tool chain doesn't support modifying rpaths/libpaths for XCOFF
--  # on install at the moment, so BUILD_WITH_INSTALL_RPATH is required.
-+  # Enable BUILD_WITH_INSTALL_RPATH unless CMAKE_BUILD_RPATH is set.
-   if("${CMAKE_BUILD_RPATH}" STREQUAL "")
--    if(${CMAKE_SYSTEM_NAME} MATCHES "Darwin|AIX")
--      set_property(TARGET ${name} PROPERTY BUILD_WITH_INSTALL_RPATH ON)
--    else()
--      set_property(TARGET ${name} APPEND PROPERTY BUILD_RPATH "${_build_rpath}")
--    endif()
-+    set_property(TARGET ${name} PROPERTY BUILD_WITH_INSTALL_RPATH ON)
-   endif()
- 
-   set_target_properties(${name} PROPERTIES
diff --git a/rust176/patches/patch-src_llvm-project_llvm_include_llvm-c_DataTypes.h b/rust176/patches/patch-src_llvm-project_llvm_include_llvm-c_DataTypes.h
deleted file mode 100644
index 7250a1f149..0000000000
--- a/rust176/patches/patch-src_llvm-project_llvm_include_llvm-c_DataTypes.h
+++ /dev/null
@@ -1,34 +0,0 @@
-$NetBSD: patch-src_llvm-project_llvm_include_llvm-c_DataTypes.h,v 1.1 2019/04/14 12:42:03 he Exp $
-
-Don't implement sys/regset.h workaround, fix source instead.
-
---- src/llvm-project/llvm/include/llvm-c/DataTypes.h.orig	2021-04-17 01:50:37.000000000 +0000
-+++ src/llvm-project/llvm/include/llvm-c/DataTypes.h
-@@ -77,4 +77,27 @@ typedef signed int ssize_t;
- # define UINT64_MAX 0xffffffffffffffffULL
- #endif
- 
-+#if defined(__sun)
-+#include <sys/regset.h>
-+#undef CS
-+#undef DS
-+#undef ES
-+#undef FS
-+#undef GS
-+#undef SS
-+#undef EAX
-+#undef ECX
-+#undef EDX
-+#undef EBX
-+#undef ESP
-+#undef EBP
-+#undef ESI
-+#undef EDI
-+#undef EIP
-+#undef UESP
-+#undef EFL
-+#undef ERR
-+#undef TRAPNO
-+#endif
-+
- #endif /* LLVM_C_DATATYPES_H */
diff --git a/rust176/patches/patch-src_llvm-project_llvm_include_llvm_Analysis_ConstantFolding.h b/rust176/patches/patch-src_llvm-project_llvm_include_llvm_Analysis_ConstantFolding.h
deleted file mode 100644
index 37d491478d..0000000000
--- a/rust176/patches/patch-src_llvm-project_llvm_include_llvm_Analysis_ConstantFolding.h
+++ /dev/null
@@ -1,17 +0,0 @@
-$NetBSD: patch-src_llvm-project_llvm_include_llvm_Analysis_ConstantFolding.h,v 1.1 2019/04/14 12:42:03 he Exp $
-
-Fix SunOS CS conflict not handled by include/llvm-c/DataTypes.h
-
---- src/llvm-project/llvm/include/llvm/Analysis/ConstantFolding.h.orig	2018-08-01 16:32:37.000000000 +0000
-+++ src/llvm-project/llvm/include/llvm/Analysis/ConstantFolding.h
-@@ -19,6 +19,10 @@
- #ifndef LLVM_ANALYSIS_CONSTANTFOLDING_H
- #define LLVM_ANALYSIS_CONSTANTFOLDING_H
- 
-+#ifdef __sun
-+#undef CS
-+#endif
-+
- #include <stdint.h>
- 
- namespace llvm {
diff --git a/rust176/patches/patch-src_llvm-project_llvm_lib_Support_BLAKE3_blake3__impl.h b/rust176/patches/patch-src_llvm-project_llvm_lib_Support_BLAKE3_blake3__impl.h
deleted file mode 100644
index dbd66f923d..0000000000
--- a/rust176/patches/patch-src_llvm-project_llvm_lib_Support_BLAKE3_blake3__impl.h
+++ /dev/null
@@ -1,20 +0,0 @@
-$NetBSD$
-
-Do not try to use neon on big-endian aarch64, as we have
-an #error waiting there.
-
---- src/llvm-project/llvm/lib/Support/BLAKE3/blake3_impl.h.orig	2022-09-02 08:17:54.000000000 +0000
-+++ src/llvm-project/llvm/lib/Support/BLAKE3/blake3_impl.h
-@@ -64,7 +64,11 @@ enum blake3_flags {
- #if !defined(BLAKE3_USE_NEON) 
-   // If BLAKE3_USE_NEON not manually set, autodetect based on AArch64ness
-   #if defined(IS_AARCH64)
--    #define BLAKE3_USE_NEON 1
-+    #if defined(__ARM_BIG_ENDIAN)
-+      #define BLAKE3_USE_NEON 0
-+    #else
-+      #define BLAKE3_USE_NEON 1
-+    #endif
-   #else
-     #define BLAKE3_USE_NEON 0
-   #endif
diff --git a/rust176/patches/patch-src_llvm-project_llvm_utils_FileCheck_FileCheck.cpp b/rust176/patches/patch-src_llvm-project_llvm_utils_FileCheck_FileCheck.cpp
deleted file mode 100644
index 02c93ff2ec..0000000000
--- a/rust176/patches/patch-src_llvm-project_llvm_utils_FileCheck_FileCheck.cpp
+++ /dev/null
@@ -1,15 +0,0 @@
-$NetBSD: patch-src_llvm-project_llvm_utils_FileCheck_FileCheck.cpp,v 1.2 2019/10/02 12:51:43 he Exp $
-
-Avoid ambiguous function call.
-
---- src/llvm-project/llvm/utils/FileCheck/FileCheck.cpp.orig	2019-02-12 15:22:48.000000000 +0000
-+++ src/llvm-project/llvm/utils/FileCheck/FileCheck.cpp
-@@ -592,7 +592,7 @@ static void DumpAnnotatedInput(raw_ostre
-   unsigned LineCount = InputFileText.count('\n');
-   if (InputFileEnd[-1] != '\n')
-     ++LineCount;
--  unsigned LineNoWidth = std::log10(LineCount) + 1;
-+  unsigned LineNoWidth = std::log10((float)LineCount) + 1;
-   // +3 below adds spaces (1) to the left of the (right-aligned) line numbers
-   // on input lines and (2) to the right of the (left-aligned) labels on
-   // annotation lines so that input lines and annotation lines are more
diff --git a/rust176/patches/patch-src_tools_cargo_src_cargo_core_profiles.rs b/rust176/patches/patch-src_tools_cargo_src_cargo_core_profiles.rs
deleted file mode 100644
index ac9ad7239c..0000000000
--- a/rust176/patches/patch-src_tools_cargo_src_cargo_core_profiles.rs
+++ /dev/null
@@ -1,17 +0,0 @@
-$NetBSD: patch-src_tools_cargo_src_cargo_core_profiles.rs,v 1.3 2019/03/07 20:19:11 jperkin Exp $
-
-Turn off incremental builds for sparc64, ref.
-https://sources.debian.org/patches/cargo/0.29.0-1/2007_sparc64_disable_incremental_build.patch/
-
---- src/tools/cargo/src/cargo/core/profiles.rs.orig	2023-07-12 03:33:05.000000000 +0000
-+++ src/tools/cargo/src/cargo/core/profiles.rs
-@@ -681,6 +681,9 @@ impl Profile {
-             debuginfo: DebugInfo::Resolved(TomlDebugInfo::Full),
-             debug_assertions: true,
-             overflow_checks: true,
-+            #[cfg(target_arch = "sparc64")]
-+            incremental: false,
-+            #[cfg(not(target_arch = "sparc64"))]
-             incremental: true,
-             ..Profile::default()
-         }
diff --git a/rust176/patches/patch-src_tools_cargo_tests_testsuite_build.rs b/rust176/patches/patch-src_tools_cargo_tests_testsuite_build.rs
deleted file mode 100644
index 7ffba0f965..0000000000
--- a/rust176/patches/patch-src_tools_cargo_tests_testsuite_build.rs
+++ /dev/null
@@ -1,31 +0,0 @@
-$NetBSD: patch-src_tools_cargo_tests_testsuite_build.rs,v 1.5 2019/08/29 14:09:57 he Exp $
-
-Don't attempt incremental operations on sparc64, ref.
-https://sources.debian.org/patches/cargo/0.29.0-1/2007_sparc64_disable_incremental_build.patch/
-
---- src/tools/cargo/tests/testsuite/build.rs.orig	2019-08-13 06:27:40.000000000 +0000
-+++ src/tools/cargo/tests/testsuite/build.rs
-@@ -47,6 +47,7 @@ fn cargo_fail_with_no_stderr() {
- 
- /// Checks that the `CARGO_INCREMENTAL` environment variable results in
- /// `rustc` getting `-C incremental` passed to it.
-+#[cfg(not(target_arch = "sparc64"))]
- #[cargo_test]
- fn cargo_compile_incremental() {
-     let p = project()
-@@ -69,6 +70,7 @@ fn cargo_compile_incremental() {
-         .run();
- }
- 
-+#[cfg(not(target_arch = "sparc64"))]
- #[cargo_test]
- fn incremental_profile() {
-     let p = project()
-@@ -111,6 +113,7 @@ fn incremental_profile() {
-         .run();
- }
- 
-+#[cfg(not(target_arch = "sparc64"))]
- #[cargo_test]
- fn incremental_config() {
-     let p = project()
diff --git a/rust176/patches/patch-src_tools_rust-installer_install-template.sh b/rust176/patches/patch-src_tools_rust-installer_install-template.sh
deleted file mode 100644
index d4036445de..0000000000
--- a/rust176/patches/patch-src_tools_rust-installer_install-template.sh
+++ /dev/null
@@ -1,179 +0,0 @@
-$NetBSD: patch-src_tools_rust-installer_install-template.sh,v 1.5 2021/06/09 13:42:30 adam Exp $
-
-No logging to 'install.log'.
-Do not create 'uninstall.sh'.
-Do not make file backups (filename.old), so these will not end up in the final package.
-
-Rewrite to not use a whole lot of subprocesses just for doing
-pattern matching and substitution in the install phase using "grep"
-and "sed" when shell builtin "case" and "omit shortest match" ops
-should do just fine.
-
---- src/tools/rust-installer/install-template.sh.orig	2023-12-21 16:55:28.000000000 +0000
-+++ src/tools/rust-installer/install-template.sh
-@@ -6,20 +6,12 @@ set -u
- init_logging() {
-     local _abs_libdir="$1"
-     local _logfile="$_abs_libdir/$TEMPLATE_REL_MANIFEST_DIR/install.log"
--    rm -f "$_logfile"
--    need_ok "failed to remove old installation log"
--    touch "$_logfile"
--    need_ok "failed to create installation log"
-     LOGFILE="$_logfile"
- }
- 
- log_line() {
-     local _line="$1"
- 
--    if [ -n "${LOGFILE-}" -a -e "${LOGFILE-}" ]; then
--    echo "$_line" >> "$LOGFILE"
--    # Ignore errors, which may happen e.g. after the manifest dir is deleted
--    fi
- }
- 
- msg() {
-@@ -433,8 +425,8 @@ uninstall_components() {
-             local _directive
-             while read _directive; do
- 
--            local _command=`echo $_directive | cut -f1 -d:`
--            local _file=`echo $_directive | cut -f2 -d:`
-+            local _command=${_directive%%:*}
-+            local _file=${_directive#*:}
- 
-             # Sanity checks
-             if [ ! -n "$_command" ]; then critical_err "malformed installation directive"; fi
-@@ -541,8 +533,8 @@ install_components() {
-     local _directive
-     while read _directive; do
- 
--        local _command=`echo $_directive | cut -f1 -d:`
--        local _file=`echo $_directive | cut -f2 -d:`
-+        local _command=${_directive%%:*}
-+        local _file=${_directive#*:}
- 
-         # Sanity checks
-         if [ ! -n "$_command" ]; then critical_err "malformed installation directive"; fi
-@@ -551,36 +543,24 @@ install_components() {
-         # Decide the destination of the file
-         local _file_install_path="$_dest_prefix/$_file"
- 
--        if echo "$_file" | grep "^etc/" > /dev/null
--        then
--        local _f="$(echo "$_file" | sed 's/^etc\///')"
--        _file_install_path="$CFG_SYSCONFDIR/$_f"
--        fi
--
--        if echo "$_file" | grep "^bin/" > /dev/null
--        then
--        local _f="$(echo "$_file" | sed 's/^bin\///')"
--        _file_install_path="$CFG_BINDIR/$_f"
--        fi
--
--        if echo "$_file" | grep "^lib/" > /dev/null
--        then
--        local _f="$(echo "$_file" | sed 's/^lib\///')"
--        _file_install_path="$CFG_LIBDIR/$_f"
--        fi
--
--        if echo "$_file" | grep "^share" > /dev/null
--        then
--        local _f="$(echo "$_file" | sed 's/^share\///')"
--        _file_install_path="$CFG_DATADIR/$_f"
--        fi
--
--        if echo "$_file" | grep "^share/man/" > /dev/null
--        then
--        local _f="$(echo "$_file" | sed 's/^share\/man\///')"
--        _file_install_path="$CFG_MANDIR/$_f"
--        fi
--
-+        case "$_file" in
-+            etc/*)
-+                local _f=${_file#"etc/"}
-+                _file_install_path="$CFG_DESTDIR_PREFIX/share/doc/cargo/$_f"
-+                ;;
-+            bin/*)
-+                local _f=${_file#"bin/"}
-+                _file_install_path="$CFG_BINDIR/$_f"
-+                ;;
-+            lib/*)
-+                local _f=${_file#"lib/"}
-+                _file_install_path="$CFG_LIBDIR/$_f"
-+                ;;
-+            share/man/*)
-+                local _f=${_file#"share/man/"}
-+                _file_install_path="$CFG_MANDIR/$_f"
-+                ;;
-+            share/doc/*)
-             # HACK: Try to support overriding --docdir.  Paths with the form
-             # "share/doc/$product/" can be redirected to a single --docdir
-             # path. If the following detects that --docdir has been specified
-@@ -591,14 +571,17 @@ install_components() {
-             # contents of those directories are _not_ disjoint. Since this feature
-             # is almost entirely to support 'make install' anyway I don't expect
-             # this problem to be a big deal in practice.
--            if [ "$CFG_DOCDIR" != "<default>" ]
--            then
--            if echo "$_file" | grep "^share/doc/" > /dev/null
--            then
--            local _f="$(echo "$_file" | sed 's/^share\/doc\/[^/]*\///')"
--            _file_install_path="$CFG_DOCDIR/$_f"
--            fi
--            fi
-+                if [ "$CFG_DOCDIR" != "<default>" ]; then
-+                    local _f=${_file#"share/doc/"*/}
-+                    _file_install_path="$CFG_DOCDIR/$_f"
-+                fi
-+                ;;
-+            share/*)
-+                local _f=${_file#"share/"}
-+                _file_install_path="$CFG_DATADIR/$_f"
-+                ;;
-+        esac
-+
- 
-         # Make sure there's a directory for it
-         make_dir_recursive "$(dirname "$_file_install_path")"
-@@ -615,16 +598,16 @@ install_components() {
- 
-             verbose_msg "copying file $_file_install_path"
- 
--            maybe_backup_path "$_file_install_path"
--
--            if echo "$_file" | grep "^bin/" > /dev/null || test -x "$_src_dir/$_component/$_file"
--            then
--            run cp "$_src_dir/$_component/$_file" "$_file_install_path"
--            run chmod 755 "$_file_install_path"
--            else
-+            local mode=644
-+            if test -x "$_src_dir/$_component/$_file"; then
-+                mode=755
-+            fi
-+            case "$_file" in
-+                bin/*) mode=755
-+                       ;;
-+            esac
-             run cp "$_src_dir/$_component/$_file" "$_file_install_path"
--            run chmod 644 "$_file_install_path"
--            fi
-+            run chmod $mode "$_file_install_path"
-             critical_need_ok "file creation failed"
- 
-             # Update the manifest
-@@ -637,7 +620,6 @@ install_components() {
- 
-             verbose_msg "copying directory $_file_install_path"
- 
--            maybe_backup_path "$_file_install_path"
- 
-             run cp -R "$_src_dir/$_component/$_file" "$_file_install_path"
-             critical_need_ok "failed to copy directory"
-@@ -986,7 +968,6 @@ write_to_file "$TEMPLATE_RUST_INSTALLER_
- critical_need_ok "failed to write installer version"
- 
- # Install the uninstaller
--install_uninstaller "$src_dir" "$src_basename" "$abs_libdir"
- 
- # Install each component
- install_components "$src_dir" "$abs_libdir" "$dest_prefix" "$components"
diff --git a/rust176/patches/patch-vendor_aho-corasick_src_packed_teddy_builder.rs b/rust176/patches/patch-vendor_aho-corasick_src_packed_teddy_builder.rs
deleted file mode 100644
index 53070c8c9d..0000000000
--- a/rust176/patches/patch-vendor_aho-corasick_src_packed_teddy_builder.rs
+++ /dev/null
@@ -1,31 +0,0 @@
-$NetBSD$
-
---- vendor/aho-corasick/src/packed/teddy/builder.rs.orig	2024-02-18 10:54:27.960401196 +0000
-+++ vendor/aho-corasick/src/packed/teddy/builder.rs
-@@ -230,7 +230,7 @@ impl Builder {
-                 }
-             }
-         }
--        #[cfg(target_arch = "aarch64")]
-+        #[cfg(all(target_arch = "aarch64", target_feature = "neon", target_endian = "little"))]
-         {
-             use self::aarch64::SlimNeon;
- 
-@@ -301,7 +301,7 @@ impl Builder {
-         }
-         #[cfg(not(any(
-             all(target_arch = "x86_64", target_feature = "sse2"),
--            target_arch = "aarch64"
-+            all(target_arch = "aarch64", target_feature = "neon", target_endian = "little")
-         )))]
-         {
-             None
-@@ -705,7 +705,7 @@ mod x86_64 {
-     }
- }
- 
--#[cfg(target_arch = "aarch64")]
-+#[cfg(all(target_arch = "aarch64", target_feature = "neon", target_endian = "little"))]
- mod aarch64 {
-     use core::arch::aarch64::uint8x16_t;
- 
diff --git a/rust176/patches/patch-vendor_aho-corasick_src_packed_vector.rs b/rust176/patches/patch-vendor_aho-corasick_src_packed_vector.rs
deleted file mode 100644
index a5ba47a39b..0000000000
--- a/rust176/patches/patch-vendor_aho-corasick_src_packed_vector.rs
+++ /dev/null
@@ -1,13 +0,0 @@
-$NetBSD$
-
---- vendor/aho-corasick/src/packed/vector.rs.orig	2024-02-18 10:12:16.371081231 +0000
-+++ vendor/aho-corasick/src/packed/vector.rs
-@@ -595,7 +595,7 @@ mod x86_64_avx2 {
-     }
- }
- 
--#[cfg(target_arch = "aarch64")]
-+#[cfg(all(target_arch = "aarch64", target_feature = "neon", target_endian = "little"))]
- mod aarch64_neon {
-     use core::arch::aarch64::*;
- 
diff --git a/rust176/patches/patch-vendor_backtrace_src_symbolize_gimli.rs b/rust176/patches/patch-vendor_backtrace_src_symbolize_gimli.rs
deleted file mode 100644
index 367e90786a..0000000000
--- a/rust176/patches/patch-vendor_backtrace_src_symbolize_gimli.rs
+++ /dev/null
@@ -1,14 +0,0 @@
-$NetBSD$
-
-Do mmap on NetBSD as well.
-
---- ./vendor/backtrace/src/symbolize/gimli.rs.orig	2022-04-04 11:10:55.000000000 +0000
-+++ ./vendor/backtrace/src/symbolize/gimli.rs
-@@ -38,6 +38,7 @@ cfg_if::cfg_if! {
-         target_os = "ios",
-         target_os = "linux",
-         target_os = "macos",
-+        target_os = "netbsd",
-         target_os = "openbsd",
-         target_os = "solaris",
-         target_os = "illumos",
diff --git a/rust176/patches/patch-vendor_backtrace_src_symbolize_gimli_elf.rs b/rust176/patches/patch-vendor_backtrace_src_symbolize_gimli_elf.rs
deleted file mode 100644
index ad3afcd8d1..0000000000
--- a/rust176/patches/patch-vendor_backtrace_src_symbolize_gimli_elf.rs
+++ /dev/null
@@ -1,24 +0,0 @@
-$NetBSD$
-
-Make NetBSD also find its debug libraries, if present.
-
---- vendor/backtrace/src/symbolize/gimli/elf.rs.orig	2022-04-04 11:10:55.000000000 +0000
-+++ vendor/backtrace/src/symbolize/gimli/elf.rs
-@@ -276,11 +276,16 @@ fn decompress_zlib(input: &[u8], output:
-     }
- }
- 
-+#[cfg(target_os = "netbsd")]
-+const DEBUG_PATH: &[u8] = b"/usr/libdata/debug";
-+#[cfg(target_os != "netbsd")]
- const DEBUG_PATH: &[u8] = b"/usr/lib/debug";
- 
- fn debug_path_exists() -> bool {
-     cfg_if::cfg_if! {
--        if #[cfg(any(target_os = "freebsd", target_os = "linux"))] {
-+        if #[cfg(any(target_os = "freebsd", 
-+                     target_os = "netbsd",
-+                     target_os = "linux"))] {
-             use core::sync::atomic::{AtomicU8, Ordering};
-             static DEBUG_PATH_EXISTS: AtomicU8 = AtomicU8::new(0);
- 
diff --git a/rust176/patches/patch-vendor_cc-1.0.73_src_lib.rs b/rust176/patches/patch-vendor_cc-1.0.73_src_lib.rs
deleted file mode 100644
index 864beacf10..0000000000
--- a/rust176/patches/patch-vendor_cc-1.0.73_src_lib.rs
+++ /dev/null
@@ -1,16 +0,0 @@
-$NetBSD$
-
-Use correct ABI on NetBSD/riscv64.
-
---- vendor/cc-1.0.73/src/lib.rs.orig	2023-05-31 21:44:47.000000000 +0000
-+++ vendor/cc-1.0.73/src/lib.rs
-@@ -1830,6 +1830,9 @@ impl Build {
-                         } else if target.contains("freebsd") && arch.starts_with("64") {
-                             cmd.args.push(("-march=rv64gc").into());
-                             cmd.args.push("-mabi=lp64d".into());
-+                        } else if target.contains("netbsd") && arch.starts_with("64") {
-+                            cmd.args.push(("-march=rv64gc").into());
-+                            cmd.args.push("-mabi=lp64d".into());
-                         } else if target.contains("openbsd") && arch.starts_with("64") {
-                             cmd.args.push(("-march=rv64gc").into());
-                             cmd.args.push("-mabi=lp64d".into());
diff --git a/rust176/patches/patch-vendor_cc_src_lib.rs b/rust176/patches/patch-vendor_cc_src_lib.rs
deleted file mode 100644
index f754e454f4..0000000000
--- a/rust176/patches/patch-vendor_cc_src_lib.rs
+++ /dev/null
@@ -1,22 +0,0 @@
-$NetBSD$
-
-Add aarch64_be and mipsel for NetBSD.
-
---- vendor/cc/src/lib.rs.orig	2024-02-17 11:28:27.283394955 +0000
-+++ vendor/cc/src/lib.rs
-@@ -3058,6 +3058,7 @@ impl Build {
-             "aarch64-unknown-linux-gnu" => Some("aarch64-linux-gnu"),
-             "aarch64-unknown-linux-musl" => Some("aarch64-linux-musl"),
-             "aarch64-unknown-netbsd" => Some("aarch64--netbsd"),
-+            "aarch64_be-unknown-netbsd" => Some("aarch64_be--netbsd"),
-             "arm-unknown-linux-gnueabi" => Some("arm-linux-gnueabi"),
-             "armv4t-unknown-linux-gnueabi" => Some("arm-linux-gnueabi"),
-             "armv5te-unknown-linux-gnueabi" => Some("arm-linux-gnueabi"),
-@@ -3093,6 +3094,7 @@ impl Build {
-             "mips-unknown-linux-musl" => Some("mips-linux-musl"),
-             "mipsel-unknown-linux-gnu" => Some("mipsel-linux-gnu"),
-             "mipsel-unknown-linux-musl" => Some("mipsel-linux-musl"),
-+            "mipsel-unknown-netbsd" => Some("mipsel--netbsd"),
-             "mips64-unknown-linux-gnuabi64" => Some("mips64-linux-gnuabi64"),
-             "mips64el-unknown-linux-gnuabi64" => Some("mips64el-linux-gnuabi64"),
-             "mipsisa32r6-unknown-linux-gnu" => Some("mipsisa32r6-linux-gnu"),
diff --git a/rust176/patches/patch-vendor_crossbeam-epoch_no__atomic.rs b/rust176/patches/patch-vendor_crossbeam-epoch_no__atomic.rs
deleted file mode 100644
index a05b394053..0000000000
--- a/rust176/patches/patch-vendor_crossbeam-epoch_no__atomic.rs
+++ /dev/null
@@ -1,20 +0,0 @@
-$NetBSD$
-
-Add "mipsel-unknown-netbsd" to the list who don't have 
-native 64-bit atomic ops.
-Unify with crossbeam-epoch to get same after-checksum...
-
---- vendor/crossbeam-epoch/no_atomic.rs.orig	2023-07-12 05:06:31.000000000 +0000
-+++ vendor/crossbeam-epoch/no_atomic.rs
-@@ -38,10 +38,10 @@ const NO_ATOMIC_64: &[&str] = &[
-     "mips-unknown-linux-musl",
-     "mips-unknown-linux-uclibc",
-     "mipsel-sony-psp",
--    "mipsel-sony-psx",
-     "mipsel-unknown-linux-gnu",
-     "mipsel-unknown-linux-musl",
-     "mipsel-unknown-linux-uclibc",
-+    "mipsel-unknown-netbsd",
-     "mipsel-unknown-none",
-     "mipsisa32r6-unknown-linux-gnu",
-     "mipsisa32r6el-unknown-linux-gnu",
diff --git a/rust176/patches/patch-vendor_crossbeam-utils-0.8.14-no__atomic.rs b/rust176/patches/patch-vendor_crossbeam-utils-0.8.14-no__atomic.rs
deleted file mode 100644
index a0f384c943..0000000000
--- a/rust176/patches/patch-vendor_crossbeam-utils-0.8.14-no__atomic.rs
+++ /dev/null
@@ -1,14 +0,0 @@
-$NetBSD$
-
-No 64-bit atomics on NetBSD/mipsel.
-
---- vendor/crossbeam-utils-0.8.14/no_atomic.rs.orig	2023-07-12 05:06:31.000000000 +0000
-+++ vendor/crossbeam-utils-0.8.14/no_atomic.rs
-@@ -41,6 +41,7 @@ const NO_ATOMIC_64: &[&str] = &[
-     "mipsel-unknown-linux-gnu",
-     "mipsel-unknown-linux-musl",
-     "mipsel-unknown-linux-uclibc",
-+    "mipsel-unknown-netbsd",
-     "mipsel-unknown-none",
-     "mipsisa32r6-unknown-linux-gnu",
-     "mipsisa32r6el-unknown-linux-gnu",
diff --git a/rust176/patches/patch-vendor_crossbeam-utils_no__atomic.rs b/rust176/patches/patch-vendor_crossbeam-utils_no__atomic.rs
deleted file mode 100644
index 39278590c8..0000000000
--- a/rust176/patches/patch-vendor_crossbeam-utils_no__atomic.rs
+++ /dev/null
@@ -1,19 +0,0 @@
-$NetBSD$
-
-Add mipsel-unknown-netbsd target as not having 64-bit atomics.
-Unify with crossbeam-utils-0.8.12 by removing mipsel-sony-psx.
-
---- vendor/crossbeam-utils/no_atomic.rs.orig	2023-07-12 05:06:31.000000000 +0000
-+++ vendor/crossbeam-utils/no_atomic.rs
-@@ -38,10 +38,10 @@ const NO_ATOMIC_64: &[&str] = &[
-     "mips-unknown-linux-musl",
-     "mips-unknown-linux-uclibc",
-     "mipsel-sony-psp",
--    "mipsel-sony-psx",
-     "mipsel-unknown-linux-gnu",
-     "mipsel-unknown-linux-musl",
-     "mipsel-unknown-linux-uclibc",
-+    "mipsel-unknown-netbsd",
-     "mipsel-unknown-none",
-     "mipsisa32r6-unknown-linux-gnu",
-     "mipsisa32r6el-unknown-linux-gnu",
diff --git a/rust176/patches/patch-vendor_libc-0.2.148_src_unix_bsd_netbsdlike+netbsd_mips.rs b/rust176/patches/patch-vendor_libc-0.2.148_src_unix_bsd_netbsdlike+netbsd_mips.rs
deleted file mode 100644
index 18aa4d7328..0000000000
--- a/rust176/patches/patch-vendor_libc-0.2.148_src_unix_bsd_netbsdlike+netbsd_mips.rs
+++ /dev/null
@@ -1,29 +0,0 @@
-$NetBSD$
-
-Add entry for NetBSD/mips.
-
---- vendor/libc-0.2.148/src/unix/bsd/netbsdlike/netbsd/mips.rs.orig	2024-01-06 21:03:21.781003759 +0000
-+++ vendor/libc-0.2.148/src/unix/bsd/netbsdlike/netbsd/mips.rs	2024-01-06 22:27:31.830676317 +0000
-@@ -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/rust176/patches/patch-vendor_libc-0.2.148_src_unix_bsd_netbsdlike_netbsd_mod.rs b/rust176/patches/patch-vendor_libc-0.2.148_src_unix_bsd_netbsdlike_netbsd_mod.rs
deleted file mode 100644
index aff7296f94..0000000000
--- a/rust176/patches/patch-vendor_libc-0.2.148_src_unix_bsd_netbsdlike_netbsd_mod.rs
+++ /dev/null
@@ -1,52 +0,0 @@
-$NetBSD$
-
-Add entries for execinfo, and support
-for NetBSD/mips and NetBSD/riscv64.
-
---- vendor/libc-0.2.148/src/unix/bsd/netbsdlike/netbsd/mod.rs.orig	2024-01-06 22:33:33.911876204 +0000
-+++ vendor/libc-0.2.148/src/unix/bsd/netbsdlike/netbsd/mod.rs
-@@ -10,7 +10,7 @@ type __pthread_spin_t = __cpu_simple_loc
- pub type vm_size_t = ::uintptr_t; // FIXME: deprecated since long time
- pub type lwpid_t = ::c_uint;
- pub type shmatt_t = ::c_uint;
--pub type cpuid_t = u64;
-+pub type cpuid_t = ::c_ulong;
- pub type cpuset_t = _cpuset;
- pub type pthread_spin_t = ::c_uchar;
- pub type timer_t = ::c_int;
-@@ -3153,6 +3153,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;
-@@ -3172,6 +3188,12 @@ 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 = "riscv64")] {
-+        mod riscv64;
-+        pub use self::riscv64::*;
-     } else {
-         // Unknown target_arch
-     }
diff --git a/rust176/patches/patch-vendor_libc-0.2.148_src_unix_bsd_netbsdlike_netbsd_riscv64.rs b/rust176/patches/patch-vendor_libc-0.2.148_src_unix_bsd_netbsdlike_netbsd_riscv64.rs
deleted file mode 100644
index 17b7d39991..0000000000
--- a/rust176/patches/patch-vendor_libc-0.2.148_src_unix_bsd_netbsdlike_netbsd_riscv64.rs
+++ /dev/null
@@ -1,29 +0,0 @@
-$NetBSD$
-
-Add support for NetBSD/riscv64.
-
---- vendor/libc-0.2.148/src/unix/bsd/netbsdlike/netbsd/riscv64.rs.orig	2024-01-06 21:03:21.781003759 +0000
-+++ vendor/libc-0.2.148/src/unix/bsd/netbsdlike/netbsd/riscv64.rs	2024-01-06 22:31:25.289387359 +0000
-@@ -0,0 +1,22 @@
-+use PT_FIRSTMACH;
-+
-+pub type c_long = i64;
-+pub type c_ulong = u64;
-+pub type c_char = u8;
-+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_long>() - 1;
-+    } else {
-+        #[doc(hidden)]
-+        pub const _ALIGNBYTES: usize = 8 - 1;
-+    }
-+}
-+
-+pub const PT_GETREGS: ::c_int = PT_FIRSTMACH + 0;
-+pub const PT_SETREGS: ::c_int = PT_FIRSTMACH + 1;
-+pub const PT_GETFPREGS: ::c_int = PT_FIRSTMACH + 2;
-+pub const PT_SETFPREGS: ::c_int = PT_FIRSTMACH + 3;
diff --git a/rust176/patches/patch-vendor_libc-0.2.148_src_unix_solarish_mod.rs b/rust176/patches/patch-vendor_libc-0.2.148_src_unix_solarish_mod.rs
deleted file mode 100644
index 903029e11e..0000000000
--- a/rust176/patches/patch-vendor_libc-0.2.148_src_unix_solarish_mod.rs
+++ /dev/null
@@ -1,15 +0,0 @@
-$NetBSD$
-
-Fix xattr build.
-
---- vendor/libc-0.2.148/src/unix/solarish/mod.rs.orig	2024-01-06 22:41:58.182128108 +0000
-+++ vendor/libc-0.2.148/src/unix/solarish/mod.rs
-@@ -1523,6 +1523,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/rust176/patches/patch-vendor_libc_src_unix_solarish_mod.rs b/rust176/patches/patch-vendor_libc_src_unix_solarish_mod.rs
deleted file mode 100644
index af3ce88fd8..0000000000
--- a/rust176/patches/patch-vendor_libc_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/src/unix/solarish/mod.rs.orig	2019-05-20 13:47:24.000000000 +0000
-+++ vendor/libc/src/unix/solarish/mod.rs
-@@ -1523,6 +1523,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/rust176/patches/patch-vendor_lzma-sys_config.h b/rust176/patches/patch-vendor_lzma-sys_config.h
deleted file mode 100644
index 67963cec47..0000000000
--- a/rust176/patches/patch-vendor_lzma-sys_config.h
+++ /dev/null
@@ -1,18 +0,0 @@
-$NetBSD: patch-vendor_lzma-sys_config.h,v 1.1 2019/10/28 00:42:21 jperkin Exp $
-
-Fix SunOS builds with newer compilers.
-
---- vendor/lzma-sys/config.h.orig	2020-10-07 09:33:31.000000000 +0000
-+++ vendor/lzma-sys/config.h
-@@ -35,7 +35,11 @@
-     // change to `MYTHREAD_WIN95` if targeting Windows XP or earlier
-     #define MYTHREAD_VISTA 1
- #else
-+#if !defined(__sun) || (__STDC_VERSION__-0 < 199901L)
-     #define _POSIX_C_SOURCE 199506L
-+#else
-+    #define _POSIX_C_SOURCE 200112L
-+#endif
-     #define MYTHREAD_POSIX 1
- #endif
- 
diff --git a/rust176/patches/patch-vendor_nix-0.26.2_src_sys_signal.rs b/rust176/patches/patch-vendor_nix-0.26.2_src_sys_signal.rs
deleted file mode 100644
index 0301607fdf..0000000000
--- a/rust176/patches/patch-vendor_nix-0.26.2_src_sys_signal.rs
+++ /dev/null
@@ -1,15 +0,0 @@
-$NetBSD$
-
-Narrow the conditional on mips to only apply to Linux.
-
---- vendor/nix-0.26.2/src/sys/signal.rs.orig	2024-02-18 16:20:52.047002882 +0000
-+++ vendor/nix-0.26.2/src/sys/signal.rs
-@@ -1069,7 +1069,7 @@ mod sigevent {
-                 SigevNotify::SigevThreadId{..} => libc::SIGEV_THREAD_ID,
-                 #[cfg(all(target_os = "linux", target_env = "uclibc"))]
-                 SigevNotify::SigevThreadId{..} => libc::SIGEV_THREAD_ID,
--                #[cfg(any(all(target_os = "linux", target_env = "musl"), target_arch = "mips"))]
-+                #[cfg(all(target_os = "linux", target_env = "musl", target_arch = "mips"))]
-                 SigevNotify::SigevThreadId{..} => 4  // No SIGEV_THREAD_ID defined
-             };
-             sev.sigev_signo = match sigev_notify {
diff --git a/rust176/patches/patch-vendor_openssl-src_openssl_Configurations_10-main.conf b/rust176/patches/patch-vendor_openssl-src_openssl_Configurations_10-main.conf
deleted file mode 100644
index 17def504e5..0000000000
--- a/rust176/patches/patch-vendor_openssl-src_openssl_Configurations_10-main.conf
+++ /dev/null
@@ -1,18 +0,0 @@
-$NetBSD$
-
-Replicate part of
-https://github.com/openssl/openssl/pull/15086
-
---- vendor/openssl-src/openssl/Configurations/10-main.conf.orig	2023-08-03 13:47:25.000000000 +0000
-+++ vendor/openssl-src/openssl/Configurations/10-main.conf
-@@ -950,6 +950,10 @@ my %targets = (
-         shared_cflag     => "-fPIC",
-         shared_extension => ".so.\$(SHLIB_VERSION_NUMBER)",
-     },
-+    "NetBSD-generic32" => {
-+        inherit_from     => [ "BSD-generic32" ],
-+        ex_libs          => add("-latomic"),
-+    },
-     "BSD-generic64" => {
-         inherit_from     => [ "BSD-generic32" ],
-         bn_ops           => "SIXTY_FOUR_BIT_LONG",
diff --git a/rust176/patches/patch-vendor_openssl-src_src_lib.rs b/rust176/patches/patch-vendor_openssl-src_src_lib.rs
deleted file mode 100644
index ad03cc68bf..0000000000
--- a/rust176/patches/patch-vendor_openssl-src_src_lib.rs
+++ /dev/null
@@ -1,64 +0,0 @@
-$NetBSD: patch-vendor_openssl-src_src_lib.rs,v 1.1 2021/01/01 20:44:48 he Exp $
-
-Provide defaults for the various NetBSD targets.
-
---- vendor/openssl-src/src/lib.rs.orig	2024-02-04 14:52:05.000000000 +0000
-+++ vendor/openssl-src/src/lib.rs
-@@ -239,6 +239,8 @@ impl Build {
-             "aarch64-unknown-freebsd" => "BSD-generic64",
-             "aarch64-unknown-linux-gnu" => "linux-aarch64",
-             "aarch64-unknown-linux-musl" => "linux-aarch64",
-+            "aarch64-unknown-netbsd" => "BSD-generic64",
-+            "aarch64_be-unknown-netbsd" => "BSD-generic64",
-             "aarch64-pc-windows-msvc" => "VC-WIN64-ARM",
-             "arm-linux-androideabi" => "linux-armv4",
-             "armv7-linux-androideabi" => "linux-armv4",
-@@ -249,14 +251,17 @@ impl Build {
-             "armv5te-unknown-linux-gnueabi" => "linux-armv4",
-             "armv5te-unknown-linux-musleabi" => "linux-armv4",
-             "armv6-unknown-freebsd" => "BSD-generic32",
-+            "armv6-unknown-netbsd-eabihf" => "BSD-generic32",
-             "armv7-unknown-freebsd" => "BSD-generic32",
-             "armv7-unknown-linux-gnueabi" => "linux-armv4",
-             "armv7-unknown-linux-musleabi" => "linux-armv4",
-             "armv7-unknown-linux-gnueabihf" => "linux-armv4",
-             "armv7-unknown-linux-musleabihf" => "linux-armv4",
-+            "armv7-unknown-netbsd-eabihf" => "BSD-generic32",
-             "asmjs-unknown-emscripten" => "gcc",
-             "i586-unknown-linux-gnu" => "linux-elf",
-             "i586-unknown-linux-musl" => "linux-elf",
-+            "i586-unknown-netbsd" => "BSD-x86-elf",
-             "i686-apple-darwin" => "darwin-i386-cc",
-             "i686-linux-android" => "linux-elf",
-             "i686-pc-windows-gnu" => "mingw",
-@@ -264,6 +269,7 @@ impl Build {
-             "i686-unknown-freebsd" => "BSD-x86-elf",
-             "i686-unknown-linux-gnu" => "linux-elf",
-             "i686-unknown-linux-musl" => "linux-elf",
-+            "i686-unknown-netbsd" => "BSD-x86-elf",
-             "loongarch64-unknown-linux-gnu" => "linux-generic64",
-             "mips-unknown-linux-gnu" => "linux-mips32",
-             "mips-unknown-linux-musl" => "linux-mips32",
-@@ -273,9 +279,11 @@ impl Build {
-             "mips64el-unknown-linux-muslabi64" => "linux64-mips64",
-             "mipsel-unknown-linux-gnu" => "linux-mips32",
-             "mipsel-unknown-linux-musl" => "linux-mips32",
-+            "mipsel-unknown-netbsd" => "NetBSD-generic32",
-             "powerpc-unknown-freebsd" => "BSD-generic32",
-             "powerpc-unknown-linux-gnu" => "linux-ppc",
-             "powerpc-unknown-linux-gnuspe" => "linux-ppc",
-+            "powerpc-unknown-netbsd" => "BSD-generic32",
-             "powerpc64-unknown-freebsd" => "BSD-generic64",
-             "powerpc64-unknown-linux-gnu" => "linux-ppc64",
-             "powerpc64-unknown-linux-musl" => "linux-ppc64",
-@@ -283,8 +291,10 @@ impl Build {
-             "powerpc64le-unknown-linux-gnu" => "linux-ppc64le",
-             "powerpc64le-unknown-linux-musl" => "linux-ppc64le",
-             "riscv64gc-unknown-linux-gnu" => "linux-generic64",
-+            "riscv64gc-unknown-netbsd" => "BSD-generic64",
-             "s390x-unknown-linux-gnu" => "linux64-s390x",
-             "s390x-unknown-linux-musl" => "linux64-s390x",
-+            "sparc64-unknown-netbsd" => "BSD-generic64",
-             "x86_64-apple-darwin" => "darwin64-x86_64-cc",
-             "x86_64-linux-android" => "linux-x86_64",
-             "x86_64-pc-windows-gnu" => "mingw64",
diff --git a/rust176/patches/patch-vendor_openssl-sys_build_find__normal.rs b/rust176/patches/patch-vendor_openssl-sys_build_find__normal.rs
deleted file mode 100644
index 05d96b1783..0000000000
--- a/rust176/patches/patch-vendor_openssl-sys_build_find__normal.rs
+++ /dev/null
@@ -1,30 +0,0 @@
-$NetBSD: patch-vendor_openssl-sys_build_find__normal.rs,v 1.1 2023/06/19 14:46:47 bsiegert Exp $
-
-Add hack for Darwin when homebrew is installed.
-
---- vendor/openssl-sys/build/find_normal.rs.orig	2023-05-31 21:44:49.000000000 +0000
-+++ vendor/openssl-sys/build/find_normal.rs
-@@ -72,23 +72,6 @@ fn resolve_with_wellknown_location(dir:
- fn find_openssl_dir(target: &str) -> OsString {
-     let host = env::var("HOST").unwrap();
- 
--    if host == target && target.ends_with("-apple-darwin") {
--        let homebrew_dir = match target {
--            "aarch64-apple-darwin" => "/opt/homebrew",
--            _ => "/usr/local",
--        };
--
--        if let Some(dir) = resolve_with_wellknown_homebrew_location(homebrew_dir) {
--            return dir.into();
--        } else if let Some(dir) = resolve_with_wellknown_location("/opt/pkg") {
--            // pkgsrc
--            return dir.into();
--        } else if let Some(dir) = resolve_with_wellknown_location("/opt/local") {
--            // MacPorts
--            return dir.into();
--        }
--    }
--
-     try_pkg_config();
-     try_vcpkg();
- 
diff --git a/rust176/patches/patch-vendor_openssl-sys_build_main.rs b/rust176/patches/patch-vendor_openssl-sys_build_main.rs
deleted file mode 100644
index 7433a659c2..0000000000
--- a/rust176/patches/patch-vendor_openssl-sys_build_main.rs
+++ /dev/null
@@ -1,24 +0,0 @@
-$NetBSD$
-
-Patterned after Linux and Android, on 32-bit NetBSD ports
-include -latomic.  Parts of this inspired by
-https://github.com/sfackler/rust-openssl/commit/a0a1d1d29263abb7c47fc2e58cef8dab13762a45
-
---- vendor/openssl-sys/build/main.rs.orig	2022-11-02 16:21:42.000000000 +0000
-+++ vendor/openssl-sys/build/main.rs
-@@ -122,6 +122,15 @@ fn main() {
-         println!("cargo:rustc-link-lib={}={}", kind, lib);
-     }
- 
-+    // Patterned of the above, make sure we include -latomic
-+    // on ilp32 ports (yes, this only tests the "p32" part).
-+    if kind == "static"
-+	&& env::var("CARGO_CFG_TARGET_OS").unwrap() == "netbsd"
-+	&& env::var("CARGO_CFG_TARGET_POINTER_WIDTH").unwrap() == "32"
-+    {
-+	println!("cargo:rustc-link-lib=dylib=atomic");
-+    }
-+
-     if kind == "static" && target.contains("windows") {
-         println!("cargo:rustc-link-lib=dylib=gdi32");
-         println!("cargo:rustc-link-lib=dylib=user32");
diff --git a/rust176/patches/patch-vendor_rustc-ap-rustc__target_src_spec_aarch64__be__unknown__netbsd.rs b/rust176/patches/patch-vendor_rustc-ap-rustc__target_src_spec_aarch64__be__unknown__netbsd.rs
deleted file mode 100644
index 98a1d9cb7b..0000000000
--- a/rust176/patches/patch-vendor_rustc-ap-rustc__target_src_spec_aarch64__be__unknown__netbsd.rs
+++ /dev/null
@@ -1,27 +0,0 @@
-$NetBSD$
-
-Add aarch64_be NetBSD target.
-
---- /dev/null	2021-04-26 00:02:43.147970692 +0200
-+++ vendor/rustc-ap-rustc_target/src/spec/aarch64_be_unknown_netbsd.rs	2021-04-26 00:07:44.657579025 +0200
-@@ -0,0 +1,20 @@
-+use crate::abi::Endian;
-+use crate::spec::{Target, TargetOptions};
-+
-+pub fn target() -> Target {
-+    let mut base = super::netbsd_base::opts();
-+    base.max_atomic_width = Some(128);
-+    base.unsupported_abis = super::arm_base::unsupported_abis();
-+
-+    Target {
-+        llvm_target: "aarch64_be-unknown-netbsd".to_string(),
-+        pointer_width: 64,
-+        data_layout: "E-m:e-i8:8:32-i16:16:32-i64:64-i128:128-n32:64-S128".to_string(),
-+        arch: "aarch64".to_string(),
-+        options: TargetOptions {
-+            mcount: "__mcount".to_string(),
-+            endian: Endian::Big,
-+            ..base
-+        },
-+    }
-+}
diff --git a/rust176/patches/patch-vendor_stacker_src_lib.rs b/rust176/patches/patch-vendor_stacker_src_lib.rs
deleted file mode 100644
index dfd1589f54..0000000000
--- a/rust176/patches/patch-vendor_stacker_src_lib.rs
+++ /dev/null
@@ -1,15 +0,0 @@
-$NetBSD: patch-vendor_stacker_src_lib.rs,v 1.1 2020/08/06 11:42:56 jperkin Exp $
-
-Avoid missing pthread_* on older SunOS.
-
---- vendor/stacker/src/lib.rs.orig	2020-07-13 18:18:17.000000000 +0000
-+++ vendor/stacker/src/lib.rs
-@@ -407,7 +407,7 @@ cfg_if! {
-             );
-             Some(mi.assume_init().AllocationBase as usize + get_thread_stack_guarantee() + 0x1000)
-         }
--    } else if #[cfg(any(target_os = "linux", target_os="solaris", target_os = "netbsd"))] {
-+    } else if #[cfg(any(target_os = "linux", target_os = "netbsd"))] {
-         unsafe fn guess_os_stack_limit() -> Option<usize> {
-             let mut attr = std::mem::MaybeUninit::<libc::pthread_attr_t>::uninit();
-             assert_eq!(libc::pthread_attr_init(attr.as_mut_ptr()), 0);
diff --git a/rust176/patches/patch-vendor_target-lexicon_src_targets.rs b/rust176/patches/patch-vendor_target-lexicon_src_targets.rs
deleted file mode 100644
index 5e646970c4..0000000000
--- a/rust176/patches/patch-vendor_target-lexicon_src_targets.rs
+++ /dev/null
@@ -1,22 +0,0 @@
-$NetBSD$
-
-Add aarch64_eb and mipsel for NetBSD.
-
---- vendor/target-lexicon/src/targets.rs.orig	2021-05-03 21:35:46.000000000 +0000
-+++ vendor/target-lexicon/src/targets.rs
-@@ -1526,6 +1526,7 @@ mod tests {
-             "aarch64-unknown-linux-gnu_ilp32",
-             "aarch64-unknown-linux-musl",
-             "aarch64-unknown-netbsd",
-+            "aarch64_be-unknown-netbsd",
-             "aarch64-unknown-none",
-             "aarch64-unknown-none-softfloat",
-             "aarch64-unknown-openbsd",
-@@ -1611,6 +1612,7 @@ mod tests {
-             "mipsel-unknown-linux-gnu",
-             "mipsel-unknown-linux-musl",
-             "mipsel-unknown-linux-uclibc",
-+            "mipsel-unknown-netbsd",
-             "mipsel-unknown-none",
-             "mipsisa32r6el-unknown-linux-gnu",
-             "mipsisa32r6-unknown-linux-gnu",
diff --git a/rust176/patches/patch-vendor_valuable_no__atomic.rs b/rust176/patches/patch-vendor_valuable_no__atomic.rs
deleted file mode 100644
index f485c63d9d..0000000000
--- a/rust176/patches/patch-vendor_valuable_no__atomic.rs
+++ /dev/null
@@ -1,14 +0,0 @@
-$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] = &[
-     "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/rust176/platform.mk b/rust176/platform.mk
deleted file mode 100644
index cc75fd55ab..0000000000
--- a/rust176/platform.mk
+++ /dev/null
@@ -1,26 +0,0 @@
-# $NetBSD: platform.mk,v 1.6 2020/12/26 10:04:51 nia Exp $
-
-# This file encodes whether a given platform has support for rust.
-
-# Platforms where rust ought to work but does not require a link to an
-# open PR.
-
-.if !defined(PLATFORM_SUPPORTS_RUST)
-
-# Rust needs NetBSD>7
-.for rust_arch in aarch64 earmv7hf i386 powerpc riscv64 sparc64 x86_64
-.  for rust_os in Darwin FreeBSD Linux NetBSD SunOS
-.    if ${OPSYS} != "NetBSD" || empty(OS_VERSION:M[0-7].*)
-RUST_PLATFORMS+=	${rust_os}-*-${rust_arch}
-.    endif
-.  endfor
-.endfor
-
-.for rust_platform in ${RUST_PLATFORMS}
-.  if !empty(MACHINE_PLATFORM:M${rust_platform})
-PLATFORM_SUPPORTS_RUST=		yes
-.  endif
-.endfor
-PLATFORM_SUPPORTS_RUST?=	no
-
-.endif # !defined(PLATFORM_SUPPORTS_RUST)
diff --git a/rust176/rust.mk b/rust176/rust.mk
deleted file mode 100644
index d930124865..0000000000
--- a/rust176/rust.mk
+++ /dev/null
@@ -1,55 +0,0 @@
-# $NetBSD: rust.mk,v 1.7 2020/10/14 08:23:49 triaxx Exp $
-#
-# This file determines the type of rust package to use.
-#
-# It should be included by rust-dependent packages that don't use
-# cargo.mk.
-#
-# === User-settable variables ===
-#
-# RUST_TYPE
-#	The preferred type of Rust release to use -
-#	either bootstrap-from-source or an official binary.
-#
-#	Official Rust binaries are only published for certain platforms,
-#	including Darwin, FreeBSD, Linux, and NetBSD x86_64.
-#
-#	Possible values: src bin
-#	Default: src
-#
-# === Package-settable variables ===
-#
-# RUST_REQ
-#	The minimum version of Rust required by the package.
-#
-#	Default: 1.56.1
-#
-# RUST_RUNTIME
-#	Whether rust is a runtime dependency.
-#	Usually it is only needed to build.
-#
-#	Possible values: yes no
-#	Default: no
-
-.include "../../mk/bsd.fast.prefs.mk"
-
-RUST_REQ?=	1.56.1
-RUST_RUNTIME?=	no
-
-RUST_TYPE?=	src
-
-.if ${RUST_TYPE} == "bin"
-.  if ${RUST_RUNTIME} == "no"
-BUILDLINK_DEPMETHOD.rust-bin?=		build
-.  endif
-BUILDLINK_API_DEPENDS.rust-bin+=	rust-bin>=${RUST_REQ}
-.  include "../../lang/rust-bin/buildlink3.mk"
-.endif
-
-.if ${RUST_TYPE} == "src"
-.  if ${RUST_RUNTIME} == "no"
-BUILDLINK_DEPMETHOD.rust?=		build
-.  endif
-BUILDLINK_API_DEPENDS.rust+=		rust>=${RUST_REQ}
-.  include "../../lang/rust/buildlink3.mk"
-.endif


Home | Main Index | Thread Index | Old Index