git: af39fba60871 - main - lang/rust: Update to 1.65.0

From: Mikael Urankar <mikael_at_FreeBSD.org>
Date: Thu, 17 Nov 2022 07:06:20 UTC
The branch main has been updated by mikael:

URL: https://cgit.FreeBSD.org/ports/commit/?id=af39fba60871f5bec770ee76c5375c2915deb703

commit af39fba60871f5bec770ee76c5375c2915deb703
Author:     Mikael Urankar <mikael@FreeBSD.org>
AuthorDate: 2022-11-07 18:00:46 +0000
Commit:     Mikael Urankar <mikael@FreeBSD.org>
CommitDate: 2022-11-17 07:06:13 +0000

    lang/rust: Update to 1.65.0
    
    Announce:       https://blog.rust-lang.org/2022/11/03/Rust-1.65.0.html
    ChangeLog:      https://github.com/rust-lang/rust/releases/tag/1.65.0
    
    PR:             267622
    Reviewed by:    tokib, pkubaj
    Tested by:      mikael, pkubaj
---
 Mk/Uses/cargo.mk                                   |   2 +-
 Mk/bsd.gecko.mk                                    |   2 +-
 lang/rust-bootstrap/Makefile                       |   2 +-
 lang/rust-bootstrap/distinfo                       |   6 +-
 lang/rust/Makefile                                 |   8 +-
 lang/rust/distinfo                                 | 126 ++++++++++-----------
 lang/rust/files/patch-vendor_cc-1.0.69_src_lib.rs  |  38 -------
 .../powerpc/patch-compiler_rustc__llvm_build.rs    |  29 +++++
 .../riscv64/patch-vendor_cc-1.0.69_src_lib.rs      |  12 --
 9 files changed, 103 insertions(+), 122 deletions(-)

diff --git a/Mk/Uses/cargo.mk b/Mk/Uses/cargo.mk
index cbf91d27c70a..f2cf92259816 100644
--- a/Mk/Uses/cargo.mk
+++ b/Mk/Uses/cargo.mk
@@ -97,7 +97,7 @@ WRKSRC_crate_${_crate}=	${WRKDIR}/${_wrksrc}
 
 CARGO_BUILDDEP?=	yes
 .  if ${CARGO_BUILDDEP:tl} == "yes"
-BUILD_DEPENDS+=	${RUST_DEFAULT}>=1.64.0:lang/${RUST_DEFAULT}
+BUILD_DEPENDS+=	${RUST_DEFAULT}>=1.65.0:lang/${RUST_DEFAULT}
 .  elif ${CARGO_BUILDDEP:tl} == "any-version"
 BUILD_DEPENDS+=	${RUST_DEFAULT}>=0:lang/${RUST_DEFAULT}
 .  endif
diff --git a/Mk/bsd.gecko.mk b/Mk/bsd.gecko.mk
index 4e2a77c5107c..99504ac54af7 100644
--- a/Mk/bsd.gecko.mk
+++ b/Mk/bsd.gecko.mk
@@ -76,7 +76,7 @@ BUNDLE_LIBS=	yes
 
 BUILD_DEPENDS+=	llvm${LLVM_DEFAULT}>0:devel/llvm${LLVM_DEFAULT} \
 				rust-cbindgen>=0.24.3:devel/rust-cbindgen \
-				${RUST_DEFAULT}>=1.64.0:lang/${RUST_DEFAULT} \
+				${RUST_DEFAULT}>=1.65.0:lang/${RUST_DEFAULT} \
 				node:www/node
 LIB_DEPENDS+=	libdrm.so:graphics/libdrm
 RUN_DEPENDS+=	${LOCALBASE}/lib/libpci.so:devel/libpci
diff --git a/lang/rust-bootstrap/Makefile b/lang/rust-bootstrap/Makefile
index 939e3c20ec00..2afc6b18df93 100644
--- a/lang/rust-bootstrap/Makefile
+++ b/lang/rust-bootstrap/Makefile
@@ -2,7 +2,7 @@
 # to upload them to ~/public_distfiles on freefall in preparation
 # for the next lang/rust update.
 PORTNAME=	rust
-PORTVERSION=	1.64.0
+PORTVERSION=	1.65.0
 CATEGORIES=	lang
 MASTER_SITES=	https://static.rust-lang.org/dist/
 PKGNAMEPREFIX=	${FLAVOR:S/_/-/g}-
diff --git a/lang/rust-bootstrap/distinfo b/lang/rust-bootstrap/distinfo
index f82be6307248..d418eab8e3ab 100644
--- a/lang/rust-bootstrap/distinfo
+++ b/lang/rust-bootstrap/distinfo
@@ -1,3 +1,3 @@
-TIMESTAMP = 1665577820
-SHA256 (rust/rustc-1.64.0-src.tar.xz) = e8170d318fac9d2fc17d5c3e648e7068f56e8db8d233d864aeffbef7c6542eac
-SIZE (rust/rustc-1.64.0-src.tar.xz) = 137841332
+TIMESTAMP = 1667843845
+SHA256 (rust/rustc-1.65.0-src.tar.xz) = 2d6aa2ea3fedd55acbbd65f78349385f9daa9c14e25db7a8df5d015588eee1cf
+SIZE (rust/rustc-1.65.0-src.tar.xz) = 139674928
diff --git a/lang/rust/Makefile b/lang/rust/Makefile
index 890bca405b90..e85d9dd828c3 100644
--- a/lang/rust/Makefile
+++ b/lang/rust/Makefile
@@ -1,5 +1,5 @@
 PORTNAME=	rust
-PORTVERSION?=	1.64.0
+PORTVERSION?=	1.65.0
 PORTREVISION?=	0
 CATEGORIES=	lang
 MASTER_SITES=	https://static.rust-lang.org/dist/:src \
@@ -69,8 +69,8 @@ WASM_VARS=		_COMPONENTS+="rust-analysis-${_PACKAGE_VERS}-wasm32-unknown-unknown
 WASM_VARS_OFF=		_RUST_BUILD_WASM=false
 
 # See WRKSRC/src/stage0.json for the date and version values
-BOOTSTRAPS_DATE?=		2022-08-11
-RUST_BOOTSTRAP_VERSION?=	1.63.0
+BOOTSTRAPS_DATE?=		2022-09-22
+RUST_BOOTSTRAP_VERSION?=	1.64.0
 
 BOOTSTRAPS_SUFFIX?=		${BOOTSTRAPS_SUFFIX_${ARCH}}
 BOOTSTRAPS_SUFFIX_powerpc64?=	-${PPC_ABI:tl}
@@ -111,6 +111,8 @@ IGNORE=		is only for FreeBSD
 .if ${ARCH} == powerpc
 # bfd to link rustc_driver; lld currently can't
 BUILD_DEPENDS+=	ld.bfd:devel/binutils
+LIB_DEPENDS+=	libatomic.so:lang/gcc12
+MAKE_ENV+=	RUSTFLAGS="-L/usr/local/lib/gcc12"
 .else
 MAKE_ENV+=	RUST_BACKTRACE=1
 .endif
diff --git a/lang/rust/distinfo b/lang/rust/distinfo
index d927f2c331df..bd1710f0007c 100644
--- a/lang/rust/distinfo
+++ b/lang/rust/distinfo
@@ -1,63 +1,63 @@
-TIMESTAMP = 1665577819
-SHA256 (rust/rustc-1.64.0-src.tar.xz) = e8170d318fac9d2fc17d5c3e648e7068f56e8db8d233d864aeffbef7c6542eac
-SIZE (rust/rustc-1.64.0-src.tar.xz) = 137841332
-SHA256 (rust/2022-08-11/rustc-1.63.0-aarch64-unknown-freebsd.tar.xz) = dc7dec62b30630628071f80ceb6e7bd9af8480b532d60a504ff7a4ffb2dfd30b
-SIZE (rust/2022-08-11/rustc-1.63.0-aarch64-unknown-freebsd.tar.xz) = 44193584
-SHA256 (rust/2022-08-11/rust-std-1.63.0-aarch64-unknown-freebsd.tar.xz) = 78e1d31e86c29c21e4916446fa7cd91b3447bc373fb408b956f4801405fe94ad
-SIZE (rust/2022-08-11/rust-std-1.63.0-aarch64-unknown-freebsd.tar.xz) = 22765412
-SHA256 (rust/2022-08-11/cargo-1.63.0-aarch64-unknown-freebsd.tar.xz) = e59945a3f4ef26239c0f8f60868e4494ee871c31f7920eb94f42fc3c36dbee92
-SIZE (rust/2022-08-11/cargo-1.63.0-aarch64-unknown-freebsd.tar.xz) = 4919240
-SHA256 (rust/2022-08-11/rustc-1.63.0-x86_64-unknown-freebsd.tar.xz) = 008ff55adbbb31c9372fa0aec6eaed98ec34770465f48aa808792b8f6e252f9f
-SIZE (rust/2022-08-11/rustc-1.63.0-x86_64-unknown-freebsd.tar.xz) = 36548508
-SHA256 (rust/2022-08-11/rust-std-1.63.0-x86_64-unknown-freebsd.tar.xz) = 1a2169528c961a18f5ca74fb1dbf1c235c20fca7ae93501c9ebb6809eabf1458
-SIZE (rust/2022-08-11/rust-std-1.63.0-x86_64-unknown-freebsd.tar.xz) = 22974740
-SHA256 (rust/2022-08-11/cargo-1.63.0-x86_64-unknown-freebsd.tar.xz) = 0b9cd64adab2db79ef769f4d5e5d0c9eb73f763d070ff3ebb6aac054052271f8
-SIZE (rust/2022-08-11/cargo-1.63.0-x86_64-unknown-freebsd.tar.xz) = 5600964
-SHA256 (rust/2022-08-11/rustc-1.63.0-armv6-unknown-freebsd.tar.xz) = 1b0c64e6b9332880f4cb13e5573422bb5c730d664cc1b67587638e4e6fcf2984
-SIZE (rust/2022-08-11/rustc-1.63.0-armv6-unknown-freebsd.tar.xz) = 44750564
-SHA256 (rust/2022-08-11/rust-std-1.63.0-armv6-unknown-freebsd.tar.xz) = 75570d0febe68bd3f1a0a556f0503377e19437e87cd717d266fdab8d611019b5
-SIZE (rust/2022-08-11/rust-std-1.63.0-armv6-unknown-freebsd.tar.xz) = 21052752
-SHA256 (rust/2022-08-11/cargo-1.63.0-armv6-unknown-freebsd.tar.xz) = 5f174edaef7ab4182ed363a43f28d087c501b6cb3805ed4f64fdace6ac270938
-SIZE (rust/2022-08-11/cargo-1.63.0-armv6-unknown-freebsd.tar.xz) = 4847208
-SHA256 (rust/2022-08-11/rustc-1.63.0-armv7-unknown-freebsd.tar.xz) = c201d6e816470c883c4f0a1b66fb1e19f48f1dcc004743a565b195098d4b66ca
-SIZE (rust/2022-08-11/rustc-1.63.0-armv7-unknown-freebsd.tar.xz) = 44320768
-SHA256 (rust/2022-08-11/rust-std-1.63.0-armv7-unknown-freebsd.tar.xz) = 97190edeb0c969d3f3e8de4faf36a4fcd0c087519ce7fc385adc3f65f01bfb83
-SIZE (rust/2022-08-11/rust-std-1.63.0-armv7-unknown-freebsd.tar.xz) = 21983888
-SHA256 (rust/2022-08-11/cargo-1.63.0-armv7-unknown-freebsd.tar.xz) = 82a5ee5f55568e3322cd1ea54be8901c8c83cdb155b1997015cd94ab01223111
-SIZE (rust/2022-08-11/cargo-1.63.0-armv7-unknown-freebsd.tar.xz) = 4838568
-SHA256 (rust/2022-08-11/rustc-1.63.0-i686-unknown-freebsd.tar.xz) = 0fdfe83558fe5f4622fd3d7d8f9565fadbb64cc9ee809e804fbfc9d76ebac326
-SIZE (rust/2022-08-11/rustc-1.63.0-i686-unknown-freebsd.tar.xz) = 50476264
-SHA256 (rust/2022-08-11/rust-std-1.63.0-i686-unknown-freebsd.tar.xz) = c678c0f12c41e488dac5a299146236106f11b02b8a49c939f46c0c2c17af1799
-SIZE (rust/2022-08-11/rust-std-1.63.0-i686-unknown-freebsd.tar.xz) = 22824036
-SHA256 (rust/2022-08-11/cargo-1.63.0-i686-unknown-freebsd.tar.xz) = ab33fb3f9eec9c95c8f66c77b42726a0030f72c41a6ecc7a3f1fc33e315e447e
-SIZE (rust/2022-08-11/cargo-1.63.0-i686-unknown-freebsd.tar.xz) = 5786476
-SHA256 (rust/2022-08-11/rustc-1.63.0-powerpc-unknown-freebsd.tar.xz) = f3dee6f6053ecee8f418945ec8741ed9799023fba3157ec8a9d75e59285fc751
-SIZE (rust/2022-08-11/rustc-1.63.0-powerpc-unknown-freebsd.tar.xz) = 47201972
-SHA256 (rust/2022-08-11/rust-std-1.63.0-powerpc-unknown-freebsd.tar.xz) = d371d8e8229141842353e5aa19551a184cf0fc7ab8394928fbb6dec7f5d148e0
-SIZE (rust/2022-08-11/rust-std-1.63.0-powerpc-unknown-freebsd.tar.xz) = 20781712
-SHA256 (rust/2022-08-11/cargo-1.63.0-powerpc-unknown-freebsd.tar.xz) = 2df52ff2e480d413c880c1754b0bbb0150ae433572bc9be2c41e43b503901eb8
-SIZE (rust/2022-08-11/cargo-1.63.0-powerpc-unknown-freebsd.tar.xz) = 5343252
-SHA256 (rust/2022-08-11/rustc-1.63.0-powerpc64-unknown-freebsd-elfv1.tar.xz) = 72c48bdde2852829df3347152351b249a380e2b5e43091ee5be9b24000d61d30
-SIZE (rust/2022-08-11/rustc-1.63.0-powerpc64-unknown-freebsd-elfv1.tar.xz) = 53268828
-SHA256 (rust/2022-08-11/rust-std-1.63.0-powerpc64-unknown-freebsd-elfv1.tar.xz) = fd7bb4c565963a6d51acbf41cee998a1cde91b8063da54d9f13019ea55f8cf50
-SIZE (rust/2022-08-11/rust-std-1.63.0-powerpc64-unknown-freebsd-elfv1.tar.xz) = 21012080
-SHA256 (rust/2022-08-11/cargo-1.63.0-powerpc64-unknown-freebsd-elfv1.tar.xz) = b45994dffe978953c9ecd37bd311ef43fd55580c68cca417b25385a155b7313b
-SIZE (rust/2022-08-11/cargo-1.63.0-powerpc64-unknown-freebsd-elfv1.tar.xz) = 5474140
-SHA256 (rust/2022-08-11/rustc-1.63.0-powerpc64le-unknown-freebsd.tar.xz) = 31678cf0f14be702a0f4e61f3992fa3926b750db2d93d1ac68bc9d6ae77ca167
-SIZE (rust/2022-08-11/rustc-1.63.0-powerpc64le-unknown-freebsd.tar.xz) = 47596784
-SHA256 (rust/2022-08-11/rust-std-1.63.0-powerpc64le-unknown-freebsd.tar.xz) = 545ac36907a976b0b75eb26fc06fa40303a8208ba8b470c12b15de7a7a5d58da
-SIZE (rust/2022-08-11/rust-std-1.63.0-powerpc64le-unknown-freebsd.tar.xz) = 21332380
-SHA256 (rust/2022-08-11/cargo-1.63.0-powerpc64le-unknown-freebsd.tar.xz) = 0188a6a118f3b8cabe16676a4b6e27ea51d7f17e7c448eff880b7901cd3aa750
-SIZE (rust/2022-08-11/cargo-1.63.0-powerpc64le-unknown-freebsd.tar.xz) = 5388396
-SHA256 (rust/2022-08-11/rustc-1.63.0-riscv64gc-unknown-freebsd.tar.xz) = 419bb330037aefb874f43a71eecf3807563f0d957eaa86e001d95af663473baf
-SIZE (rust/2022-08-11/rustc-1.63.0-riscv64gc-unknown-freebsd.tar.xz) = 152031972
-SHA256 (rust/2022-08-11/rust-std-1.63.0-riscv64gc-unknown-freebsd.tar.xz) = 506e24108ab8b17966361d7e958fa3bc8283a0e6c293b567f9c9b2e41ea65fda
-SIZE (rust/2022-08-11/rust-std-1.63.0-riscv64gc-unknown-freebsd.tar.xz) = 28973524
-SHA256 (rust/2022-08-11/cargo-1.63.0-riscv64gc-unknown-freebsd.tar.xz) = d9b9b21d220b530480ff344234d45d94c5a4d1cf2eb11ab2b553fd497253cfc8
-SIZE (rust/2022-08-11/cargo-1.63.0-riscv64gc-unknown-freebsd.tar.xz) = 27678008
-SHA256 (rust/2022-08-11/rustc-1.63.0-powerpc64-unknown-freebsd-elfv2.tar.xz) = c97adb79018c810b188fd48b35ff8003ea57c4418ec073e3b32d85841551b8b1
-SIZE (rust/2022-08-11/rustc-1.63.0-powerpc64-unknown-freebsd-elfv2.tar.xz) = 45322212
-SHA256 (rust/2022-08-11/rust-std-1.63.0-powerpc64-unknown-freebsd-elfv2.tar.xz) = 64f703bda6d746b1e1413be54abca1c609a6d179ced17de5ee34676e8af4f559
-SIZE (rust/2022-08-11/rust-std-1.63.0-powerpc64-unknown-freebsd-elfv2.tar.xz) = 20914868
-SHA256 (rust/2022-08-11/cargo-1.63.0-powerpc64-unknown-freebsd-elfv2.tar.xz) = c48869e53170bf7d9c4faabf318cbb263bec9c6a0aab03755184c345cc540728
-SIZE (rust/2022-08-11/cargo-1.63.0-powerpc64-unknown-freebsd-elfv2.tar.xz) = 5072516
+TIMESTAMP = 1667843718
+SHA256 (rust/rustc-1.65.0-src.tar.xz) = 2d6aa2ea3fedd55acbbd65f78349385f9daa9c14e25db7a8df5d015588eee1cf
+SIZE (rust/rustc-1.65.0-src.tar.xz) = 139674928
+SHA256 (rust/2022-09-22/rustc-1.64.0-aarch64-unknown-freebsd.tar.xz) = 64a915fdf813cf4fab6dd478544065d0acd17efaf26ae51aa962b69f3e608359
+SIZE (rust/2022-09-22/rustc-1.64.0-aarch64-unknown-freebsd.tar.xz) = 39831680
+SHA256 (rust/2022-09-22/rust-std-1.64.0-aarch64-unknown-freebsd.tar.xz) = 2bc7213c81d450fd555ad856cbebb781745b1b54440533f52cf2ab2b2c5ad2d3
+SIZE (rust/2022-09-22/rust-std-1.64.0-aarch64-unknown-freebsd.tar.xz) = 23575452
+SHA256 (rust/2022-09-22/cargo-1.64.0-aarch64-unknown-freebsd.tar.xz) = 785e3a903f8c298786c27749324284b99900c9c39813e13f7c153e1ac94d55df
+SIZE (rust/2022-09-22/cargo-1.64.0-aarch64-unknown-freebsd.tar.xz) = 4902672
+SHA256 (rust/2022-09-22/rustc-1.64.0-x86_64-unknown-freebsd.tar.xz) = 9e64d79ce71ad37267085a2fa149173a3c87d08b512f1378afab9ca6ba96819e
+SIZE (rust/2022-09-22/rustc-1.64.0-x86_64-unknown-freebsd.tar.xz) = 37679508
+SHA256 (rust/2022-09-22/rust-std-1.64.0-x86_64-unknown-freebsd.tar.xz) = 9987d030b8e69b479148499354385c9483789506ae12ac967f07c70865780600
+SIZE (rust/2022-09-22/rust-std-1.64.0-x86_64-unknown-freebsd.tar.xz) = 23690272
+SHA256 (rust/2022-09-22/cargo-1.64.0-x86_64-unknown-freebsd.tar.xz) = 338342050768480f719d6e0aaabf466a21f80a6b3518377a84dcee56355ae716
+SIZE (rust/2022-09-22/cargo-1.64.0-x86_64-unknown-freebsd.tar.xz) = 5583476
+SHA256 (rust/2022-09-22/rustc-1.64.0-armv6-unknown-freebsd.tar.xz) = 8d77cfd10202a346289ae528469cf93d9ff30963483d57717978a8245e82e3f2
+SIZE (rust/2022-09-22/rustc-1.64.0-armv6-unknown-freebsd.tar.xz) = 39445136
+SHA256 (rust/2022-09-22/rust-std-1.64.0-armv6-unknown-freebsd.tar.xz) = c05911c41339d55b2f552d75383eb74bc931493846c2686be04f652efe9cde82
+SIZE (rust/2022-09-22/rust-std-1.64.0-armv6-unknown-freebsd.tar.xz) = 21619520
+SHA256 (rust/2022-09-22/cargo-1.64.0-armv6-unknown-freebsd.tar.xz) = ec926dea6290c1331c0dd90e02fa78fcf12cf9ffed3fbf2e8177fea8afd23e65
+SIZE (rust/2022-09-22/cargo-1.64.0-armv6-unknown-freebsd.tar.xz) = 4757504
+SHA256 (rust/2022-09-22/rustc-1.64.0-armv7-unknown-freebsd.tar.xz) = bb47f3361bdc5a0dedb2bb73f5c4e15fffe1435250573a96439fa9301cebaad7
+SIZE (rust/2022-09-22/rustc-1.64.0-armv7-unknown-freebsd.tar.xz) = 39359792
+SHA256 (rust/2022-09-22/rust-std-1.64.0-armv7-unknown-freebsd.tar.xz) = 6d64cac4bc26ad6deaf95039fe45ff8a1c37883338d108a6fe74b99d19f056c5
+SIZE (rust/2022-09-22/rust-std-1.64.0-armv7-unknown-freebsd.tar.xz) = 22665464
+SHA256 (rust/2022-09-22/cargo-1.64.0-armv7-unknown-freebsd.tar.xz) = 16e9490a8b3eaecc2ec40526ceea63bb844bc4b3916b912e9dc9750f8a3b278e
+SIZE (rust/2022-09-22/cargo-1.64.0-armv7-unknown-freebsd.tar.xz) = 4749416
+SHA256 (rust/2022-09-22/rustc-1.64.0-i686-unknown-freebsd.tar.xz) = 47b78273b732b08b8ceade5bbea366b7b8132816b522337ae3d22035fc9f14c5
+SIZE (rust/2022-09-22/rustc-1.64.0-i686-unknown-freebsd.tar.xz) = 44881268
+SHA256 (rust/2022-09-22/rust-std-1.64.0-i686-unknown-freebsd.tar.xz) = 37d5af1042565ae527cd08f8ce26ea363bb92f63edcdaf4d3d20fc8e632ff8e8
+SIZE (rust/2022-09-22/rust-std-1.64.0-i686-unknown-freebsd.tar.xz) = 23637640
+SHA256 (rust/2022-09-22/cargo-1.64.0-i686-unknown-freebsd.tar.xz) = 3d880b99295f8446cd354ff30fa02d60a98ae358402c335e6b0689f883688fc5
+SIZE (rust/2022-09-22/cargo-1.64.0-i686-unknown-freebsd.tar.xz) = 5755328
+SHA256 (rust/2022-09-22/rustc-1.64.0-powerpc-unknown-freebsd.tar.xz) = 658ff5791068d7a1dd3a42d14807a938bcabec3f8d33b65404ed0f0562d0d2ed
+SIZE (rust/2022-09-22/rustc-1.64.0-powerpc-unknown-freebsd.tar.xz) = 43819052
+SHA256 (rust/2022-09-22/rust-std-1.64.0-powerpc-unknown-freebsd.tar.xz) = 12a8806980f72a866b5b7aa658aec7310f2e4721a1fc202566b53d07b67dcc31
+SIZE (rust/2022-09-22/rust-std-1.64.0-powerpc-unknown-freebsd.tar.xz) = 21540180
+SHA256 (rust/2022-09-22/cargo-1.64.0-powerpc-unknown-freebsd.tar.xz) = c900d0130587b87cc0083507c646a6f2b483c99809ee3089773f0eb9605e7d0a
+SIZE (rust/2022-09-22/cargo-1.64.0-powerpc-unknown-freebsd.tar.xz) = 5328976
+SHA256 (rust/2022-09-22/rustc-1.64.0-powerpc64-unknown-freebsd-elfv1.tar.xz) = 89f01642df972a1548c0b1d9211572157bd1fef7ca593fea96816476c92c4532
+SIZE (rust/2022-09-22/rustc-1.64.0-powerpc64-unknown-freebsd-elfv1.tar.xz) = 48546092
+SHA256 (rust/2022-09-22/rust-std-1.64.0-powerpc64-unknown-freebsd-elfv1.tar.xz) = 9b09c410715215366018cb1d714331b1d940e77528e99967db9fff5bdbf52a0e
+SIZE (rust/2022-09-22/rust-std-1.64.0-powerpc64-unknown-freebsd-elfv1.tar.xz) = 21689464
+SHA256 (rust/2022-09-22/cargo-1.64.0-powerpc64-unknown-freebsd-elfv1.tar.xz) = 9c4fec48d0ddc80c0df95ed399326e0f3dcb40d8f7e1cee2a0f3d71d94ae989d
+SIZE (rust/2022-09-22/cargo-1.64.0-powerpc64-unknown-freebsd-elfv1.tar.xz) = 5440328
+SHA256 (rust/2022-09-22/rustc-1.64.0-powerpc64le-unknown-freebsd.tar.xz) = f0c1f6e3eb38e23ab5230a1ae44927f54ca9622ed4012f743e880fe7d3c2bf9d
+SIZE (rust/2022-09-22/rustc-1.64.0-powerpc64le-unknown-freebsd.tar.xz) = 42671812
+SHA256 (rust/2022-09-22/rust-std-1.64.0-powerpc64le-unknown-freebsd.tar.xz) = 1923be7f2726a951db807c4a4ceb41cf0269faddf51feef52d2232b042a3c9f5
+SIZE (rust/2022-09-22/rust-std-1.64.0-powerpc64le-unknown-freebsd.tar.xz) = 21959380
+SHA256 (rust/2022-09-22/cargo-1.64.0-powerpc64le-unknown-freebsd.tar.xz) = 28120839479f24b0f51676e68730fc29f2326fdfe08c36592001c529f9ae606d
+SIZE (rust/2022-09-22/cargo-1.64.0-powerpc64le-unknown-freebsd.tar.xz) = 5372248
+SHA256 (rust/2022-09-22/rustc-1.64.0-riscv64gc-unknown-freebsd.tar.xz) = 5c9e55a37426899f0619ad63fbddf3096d1517ad9dc4fa2c3348276e1afac802
+SIZE (rust/2022-09-22/rustc-1.64.0-riscv64gc-unknown-freebsd.tar.xz) = 158406968
+SHA256 (rust/2022-09-22/rust-std-1.64.0-riscv64gc-unknown-freebsd.tar.xz) = 28d21a8a90eea72bea9f739a58f4c3eafd8366f057bd2f37affdb825685f54b4
+SIZE (rust/2022-09-22/rust-std-1.64.0-riscv64gc-unknown-freebsd.tar.xz) = 30019748
+SHA256 (rust/2022-09-22/cargo-1.64.0-riscv64gc-unknown-freebsd.tar.xz) = 220af1fa9f267ad8f071f03b0b68560efe47cf112e7f252f31b1965802d3692c
+SIZE (rust/2022-09-22/cargo-1.64.0-riscv64gc-unknown-freebsd.tar.xz) = 27627880
+SHA256 (rust/2022-09-22/rustc-1.64.0-powerpc64-unknown-freebsd-elfv2.tar.xz) = 9df0d34b533a6fbc2cfbe2ec847e71effd9dd1e12b1605f54469bdf3b17f4d2d
+SIZE (rust/2022-09-22/rustc-1.64.0-powerpc64-unknown-freebsd-elfv2.tar.xz) = 40285088
+SHA256 (rust/2022-09-22/rust-std-1.64.0-powerpc64-unknown-freebsd-elfv2.tar.xz) = b12b92449006fe5f8d726f2fd6c38584b726f4ac972abab9bf0c75e0c01b66fa
+SIZE (rust/2022-09-22/rust-std-1.64.0-powerpc64-unknown-freebsd-elfv2.tar.xz) = 21681496
+SHA256 (rust/2022-09-22/cargo-1.64.0-powerpc64-unknown-freebsd-elfv2.tar.xz) = 6a28825d54609ffbb0aeece83343e7c0c93d0ef97dab51c3b71da0169e15ed71
+SIZE (rust/2022-09-22/cargo-1.64.0-powerpc64-unknown-freebsd-elfv2.tar.xz) = 5060196
diff --git a/lang/rust/files/patch-vendor_cc-1.0.69_src_lib.rs b/lang/rust/files/patch-vendor_cc-1.0.69_src_lib.rs
deleted file mode 100644
index 1027757e0c34..000000000000
--- a/lang/rust/files/patch-vendor_cc-1.0.69_src_lib.rs
+++ /dev/null
@@ -1,38 +0,0 @@
-When the compiler has "clang" in its name the cc crate will pass
-an LLVM target triple to it.  Rust uses a triple that lacks the OS
-version and LLVM will default to FreeBSD 9 behavior, i.e., it will
-default to libstdc++ which is no longer available in newer releases.
-
-To avoid this issue assume we have a GNU compatible toolchain instead
-until LLVM can be updated to use libc++ by default.
-
-https://reviews.llvm.org/D77776
-
---- vendor/cc-1.0.69/src/lib.rs.orig	2021-03-04 20:58:54 UTC
-+++ vendor/cc-1.0.69/src/lib.rs
-@@ -2659,24 +2659,7 @@ impl Tool {
-     }
- 
-     fn with_features(path: PathBuf, clang_driver: Option<&str>, cuda: bool) -> Self {
--        // Try to detect family of the tool from its name, falling back to Gnu.
--        let family = if let Some(fname) = path.file_name().and_then(|p| p.to_str()) {
--            if fname.contains("clang-cl") {
--                ToolFamily::Msvc { clang_cl: true }
--            } else if fname.ends_with("cl") || fname == "cl.exe" {
--                ToolFamily::Msvc { clang_cl: false }
--            } else if fname.contains("clang") {
--                match clang_driver {
--                    Some("cl") => ToolFamily::Msvc { clang_cl: true },
--                    _ => ToolFamily::Clang,
--                }
--            } else {
--                ToolFamily::Gnu
--            }
--        } else {
--            ToolFamily::Gnu
--        };
--
-+        let family = ToolFamily::Gnu;
-         Tool {
-             path: path,
-             cc_wrapper_path: None,
diff --git a/lang/rust/files/powerpc/patch-compiler_rustc__llvm_build.rs b/lang/rust/files/powerpc/patch-compiler_rustc__llvm_build.rs
new file mode 100644
index 000000000000..efe5542e0e1b
--- /dev/null
+++ b/lang/rust/files/powerpc/patch-compiler_rustc__llvm_build.rs
@@ -0,0 +1,29 @@
+--- compiler/rustc_llvm/build.rs.orig	2022-11-15 08:26:08.366900000 +0100
++++ compiler/rustc_llvm/build.rs	2022-11-15 08:29:07.101616000 +0100
+@@ -235,20 +235,18 @@ fn main() {
+     let mut cmd = Command::new(&llvm_config);
+     cmd.arg(llvm_link_arg).arg("--libs");
+ 
+-    if !is_crossed {
++    if target.starts_with("arm")
++        || target.starts_with("powerpc-")
++    {
++        println!("cargo:rustc-link-lib=atomic");
++        println!("cargo:rustc-link-lib=z");
++    } else if !is_crossed {
+         cmd.arg("--system-libs");
+     } else if target.contains("windows-gnu") {
+         println!("cargo:rustc-link-lib=shell32");
+         println!("cargo:rustc-link-lib=uuid");
+     } else if target.contains("netbsd") || target.contains("haiku") || target.contains("darwin") {
+         println!("cargo:rustc-link-lib=z");
+-    } else if target.starts_with("arm")
+-        || target.starts_with("mips-")
+-        || target.starts_with("mipsel-")
+-        || target.starts_with("powerpc-")
+-    {
+-        // 32-bit targets need to link libatomic.
+-        println!("cargo:rustc-link-lib=atomic");
+     }
+     cmd.args(&components);
+ 
diff --git a/lang/rust/files/riscv64/patch-vendor_cc-1.0.69_src_lib.rs b/lang/rust/files/riscv64/patch-vendor_cc-1.0.69_src_lib.rs
deleted file mode 100644
index be6399810851..000000000000
--- a/lang/rust/files/riscv64/patch-vendor_cc-1.0.69_src_lib.rs
+++ /dev/null
@@ -1,12 +0,0 @@
---- vendor/cc-1.0.69/src/lib.rs.orig	2021-10-18 11:05:53 UTC
-+++ vendor/cc-1.0.69/src/lib.rs
-@@ -1700,6 +1700,9 @@ impl Build {
-                         if target.contains("linux") && arch.starts_with("64") {
-                             cmd.args.push(("-march=rv64gc").into());
-                             cmd.args.push("-mabi=lp64d".into());
-+                        } 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("linux") && arch.starts_with("32") {
-                             cmd.args.push(("-march=rv32gc").into());
-                             cmd.args.push("-mabi=ilp32d".into());