git: 2252f9df9da7 - main - lang/rust: Update to 1.76.0

From: Mikael Urankar <mikael_at_FreeBSD.org>
Date: Mon, 19 Feb 2024 11:59:44 UTC
The branch main has been updated by mikael:

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

commit 2252f9df9da7248c59affb1010124d8afe5a907e
Author:     Mikael Urankar <mikael@FreeBSD.org>
AuthorDate: 2024-02-08 16:19:15 +0000
Commit:     Mikael Urankar <mikael@FreeBSD.org>
CommitDate: 2024-02-19 11:59:01 +0000

    lang/rust: Update to 1.76.0
    
    Announce:       https://blog.rust-lang.org/2024/02/08/Rust-1.76.0.html
    ChangeLog:      https://github.com/rust-lang/rust/releases/tag/1.76.0
    
    PR:             276920
    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                                 |  21 +----
 lang/rust/distinfo                                 | 102 ++++++++++-----------
 .../files/no-hardlinks/patch-src_bootstrap_lib.rs  |  43 ---------
 ...src_tools_cargo_src_cargo_sources_git_source.rs |  14 +--
 8 files changed, 67 insertions(+), 125 deletions(-)

diff --git a/Mk/Uses/cargo.mk b/Mk/Uses/cargo.mk
index 728bfffa62f4..ea012141d66b 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.75.0:lang/${RUST_DEFAULT}
+BUILD_DEPENDS+=	${RUST_DEFAULT}>=1.76.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 824e726c493b..d85925014ead 100644
--- a/Mk/bsd.gecko.mk
+++ b/Mk/bsd.gecko.mk
@@ -74,7 +74,7 @@ BINARY_ALIAS+=	python3=${PYTHON_CMD}
 BUNDLE_LIBS=	yes
 
 BUILD_DEPENDS+=	rust-cbindgen>=0.26.0:devel/rust-cbindgen \
-				${RUST_DEFAULT}>=1.75.0:lang/${RUST_DEFAULT} \
+				${RUST_DEFAULT}>=1.76.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 225d0fa20f25..b77ef54b9534 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.75.0
+PORTVERSION=	1.76.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 f60df17b5992..795890aa47e6 100644
--- a/lang/rust-bootstrap/distinfo
+++ b/lang/rust-bootstrap/distinfo
@@ -1,3 +1,3 @@
-TIMESTAMP = 1703234390
-SHA256 (rust/rustc-1.75.0-src.tar.xz) = 4526f786d673e4859ff2afa0bab2ba13c918b796519a25c1acce06dba9542340
-SIZE (rust/rustc-1.75.0-src.tar.xz) = 159624388
+TIMESTAMP = 1707409055
+SHA256 (rust/rustc-1.76.0-src.tar.xz) = 805482b436442a6786d270cacbab8f00529e06141b27b7fb01909b97ce4f3464
+SIZE (rust/rustc-1.76.0-src.tar.xz) = 162267908
diff --git a/lang/rust/Makefile b/lang/rust/Makefile
index 2b5cba0e1ae8..999c15d165f5 100644
--- a/lang/rust/Makefile
+++ b/lang/rust/Makefile
@@ -1,5 +1,5 @@
 PORTNAME=	rust
-PORTVERSION?=	1.75.0
+PORTVERSION?=	1.76.0
 PORTREVISION?=	0
 CATEGORIES=	lang
 MASTER_SITES=	https://static.rust-lang.org/dist/:src \
@@ -68,8 +68,8 @@ WASM_VARS=		_COMPONENTS+="rust-analysis-${_PACKAGE_VERS}-wasm32-unknown-unknown
 			_RUST_TARGETS+=wasm32-unknown-unknown
 
 # See WRKSRC/src/stage0.json for the date and version values
-BOOTSTRAPS_DATE?=		2023-11-16
-RUST_BOOTSTRAP_VERSION?=	1.74.0
+BOOTSTRAPS_DATE?=		2023-12-28
+RUST_BOOTSTRAP_VERSION?=	1.75.0
 
 CARGO_VENDOR_DIR?=		${WRKSRC}/vendor
 
@@ -123,21 +123,6 @@ _COMPONENTS+=	rustc-dev-${_PACKAGE_VERS}-${_RUST_TARGET}
 _COMPONENTS+=	rust-docs-${_PACKAGE_VERS}-wasm32-unknown-unknown rust-docs-json-${_PACKAGE_VERS}-wasm32-unknown-unknown
 .endif
 
-# If the kernel does not return sane kern.proc.pathname values
-# for hardlinks then disable hardlinks in the build to avoid
-# intermittent "can't find crate for `std`" build failures,
-# c.f. PR248184
-#
-# XXX: Avoiding OSVERSION since it is derived from userland but
-# the running kernel might still be newer with sane behavior
-# anyway...
-.if exists(${PATCHDIR}/no-hardlinks)
-_KERN_OSRELDATE!=	${SYSCTL} -n kern.osreldate 2>/dev/null || echo 0
-.  if ${_KERN_OSRELDATE} < 1300521
-EXTRA_PATCHES+=		${PATCHDIR}/no-hardlinks
-.  endif
-.endif
-
 .ifdef QEMU_EMULATING
 IGNORE=	fails to build with qemu-user-static
 .endif
diff --git a/lang/rust/distinfo b/lang/rust/distinfo
index 0573e1e5fb4c..cddd11defd3f 100644
--- a/lang/rust/distinfo
+++ b/lang/rust/distinfo
@@ -1,51 +1,51 @@
-TIMESTAMP = 1703234389
-SHA256 (rust/rustc-1.75.0-src.tar.xz) = 4526f786d673e4859ff2afa0bab2ba13c918b796519a25c1acce06dba9542340
-SIZE (rust/rustc-1.75.0-src.tar.xz) = 159624388
-SHA256 (rust/2023-11-16/rustc-1.74.0-aarch64-unknown-freebsd.tar.xz) = fe01779b2d6c78425213f2c019999da38465ecbcf1fa2ae0be4830054c8aafaa
-SIZE (rust/2023-11-16/rustc-1.74.0-aarch64-unknown-freebsd.tar.xz) = 56893376
-SHA256 (rust/2023-11-16/rust-std-1.74.0-aarch64-unknown-freebsd.tar.xz) = cd227beb38185dea4194f3e1801d91c2f7a74ec5846b9aacf64d62bcc515558f
-SIZE (rust/2023-11-16/rust-std-1.74.0-aarch64-unknown-freebsd.tar.xz) = 25388508
-SHA256 (rust/2023-11-16/cargo-1.74.0-aarch64-unknown-freebsd.tar.xz) = b87baaa92fa634b0e251c75fc4d1f8028d002022871e021d0c1823024ac3f354
-SIZE (rust/2023-11-16/cargo-1.74.0-aarch64-unknown-freebsd.tar.xz) = 8380592
-SHA256 (rust/2023-11-16/rustc-1.74.0-x86_64-unknown-freebsd.tar.xz) = fcd04fc6528fd00df91f702d7bbe58d7c85c27120ef6198d60ed8ba8f86934d7
-SIZE (rust/2023-11-16/rustc-1.74.0-x86_64-unknown-freebsd.tar.xz) = 45919420
-SHA256 (rust/2023-11-16/rust-std-1.74.0-x86_64-unknown-freebsd.tar.xz) = ed498ff7be7726ab51f24f966a108db6670cc6a9bdb7f14a33220ef5198d4d63
-SIZE (rust/2023-11-16/rust-std-1.74.0-x86_64-unknown-freebsd.tar.xz) = 25975848
-SHA256 (rust/2023-11-16/cargo-1.74.0-x86_64-unknown-freebsd.tar.xz) = f2f05af65bf3e095ecf5c1f54c2cc4ea7fecb9d5f908b79b3fe5888503560076
-SIZE (rust/2023-11-16/cargo-1.74.0-x86_64-unknown-freebsd.tar.xz) = 9220016
-SHA256 (rust/2023-11-16/rustc-1.74.0-armv7-unknown-freebsd.tar.xz) = 9ea6c6f148e17ecb71a33ef7b98a764e1b53b5859cac0c5e719a04890252a07b
-SIZE (rust/2023-11-16/rustc-1.74.0-armv7-unknown-freebsd.tar.xz) = 56925484
-SHA256 (rust/2023-11-16/rust-std-1.74.0-armv7-unknown-freebsd.tar.xz) = 964dbcf7e58f00991e198b92ca157078a56fd41d09a22b6742942515d700660a
-SIZE (rust/2023-11-16/rust-std-1.74.0-armv7-unknown-freebsd.tar.xz) = 24752972
-SHA256 (rust/2023-11-16/cargo-1.74.0-armv7-unknown-freebsd.tar.xz) = 7870e633a5d5881a985db77b9b9db8fe4547ce6f0dadaeeec3ea12b8128c5876
-SIZE (rust/2023-11-16/cargo-1.74.0-armv7-unknown-freebsd.tar.xz) = 8279660
-SHA256 (rust/2023-11-16/rustc-1.74.0-i686-unknown-freebsd.tar.xz) = be102a4d208eb37327a2449b3037888a7d950dad81107acf2d9b7e4def6ce7eb
-SIZE (rust/2023-11-16/rustc-1.74.0-i686-unknown-freebsd.tar.xz) = 63690404
-SHA256 (rust/2023-11-16/rust-std-1.74.0-i686-unknown-freebsd.tar.xz) = da05b3990663fd58100fec56dbc8c18136c9d3d3b6ed2103dc70f741c8b77fbe
-SIZE (rust/2023-11-16/rust-std-1.74.0-i686-unknown-freebsd.tar.xz) = 25888756
-SHA256 (rust/2023-11-16/cargo-1.74.0-i686-unknown-freebsd.tar.xz) = 320242c8962b2f3637673a4cccce0177377de6e2c00745b8241ac45a572ba121
-SIZE (rust/2023-11-16/cargo-1.74.0-i686-unknown-freebsd.tar.xz) = 9560444
-SHA256 (rust/2023-11-16/rustc-1.74.0-powerpc-unknown-freebsd.tar.xz) = b9cb8ddeff8a35c3f2ac09cf2247ddd728845dc4b84107c5eb15196f67f37f89
-SIZE (rust/2023-11-16/rustc-1.74.0-powerpc-unknown-freebsd.tar.xz) = 63153412
-SHA256 (rust/2023-11-16/rust-std-1.74.0-powerpc-unknown-freebsd.tar.xz) = 4a4084056182a224cbaf48dc76509b33dcb4d855253b5fa1c017b51d0d81d20f
-SIZE (rust/2023-11-16/rust-std-1.74.0-powerpc-unknown-freebsd.tar.xz) = 23776296
-SHA256 (rust/2023-11-16/cargo-1.74.0-powerpc-unknown-freebsd.tar.xz) = fb3da81351c04fd71559ffca1e971a216f52cb2a15354a9c454809e108dbb2bf
-SIZE (rust/2023-11-16/cargo-1.74.0-powerpc-unknown-freebsd.tar.xz) = 9989564
-SHA256 (rust/2023-11-16/rustc-1.74.0-powerpc64-unknown-freebsd.tar.xz) = 2391abc91392f95bf4cee84a83d511723c0ac92971b64061450172011b7579b0
-SIZE (rust/2023-11-16/rustc-1.74.0-powerpc64-unknown-freebsd.tar.xz) = 60695088
-SHA256 (rust/2023-11-16/rust-std-1.74.0-powerpc64-unknown-freebsd.tar.xz) = 3cab1582e1aee6ee0c2e4ef1095c0f4e44b7b4db24ee2a8f5fdd1a0763dc69b2
-SIZE (rust/2023-11-16/rust-std-1.74.0-powerpc64-unknown-freebsd.tar.xz) = 23815204
-SHA256 (rust/2023-11-16/cargo-1.74.0-powerpc64-unknown-freebsd.tar.xz) = 201b2fce30fd67080c86542895f456ca1e0191e98c1d03f6b3063887b1c70f84
-SIZE (rust/2023-11-16/cargo-1.74.0-powerpc64-unknown-freebsd.tar.xz) = 9490336
-SHA256 (rust/2023-11-16/rustc-1.74.0-powerpc64le-unknown-freebsd.tar.xz) = bfd17eb45e715e7d567b624b12976bab745761499bf6f6bd0affbdef625af6b9
-SIZE (rust/2023-11-16/rustc-1.74.0-powerpc64le-unknown-freebsd.tar.xz) = 62511012
-SHA256 (rust/2023-11-16/rust-std-1.74.0-powerpc64le-unknown-freebsd.tar.xz) = 5f777a1570fd5560b108d64abcb610ecbd7fc67452c3eb5d29300f3d84b2aba1
-SIZE (rust/2023-11-16/rust-std-1.74.0-powerpc64le-unknown-freebsd.tar.xz) = 23935072
-SHA256 (rust/2023-11-16/cargo-1.74.0-powerpc64le-unknown-freebsd.tar.xz) = 61c69c43e37c46f1730f6c0d490f043d5170e95c3183bb9297343a849799fb30
-SIZE (rust/2023-11-16/cargo-1.74.0-powerpc64le-unknown-freebsd.tar.xz) = 9745192
-SHA256 (rust/2023-11-16/rustc-1.74.0-riscv64gc-unknown-freebsd.tar.xz) = ece9e09e255e0018b807b3d8daae875ae562cdb82b97944ada8266b590e882fe
-SIZE (rust/2023-11-16/rustc-1.74.0-riscv64gc-unknown-freebsd.tar.xz) = 72605232
-SHA256 (rust/2023-11-16/rust-std-1.74.0-riscv64gc-unknown-freebsd.tar.xz) = 163dc2e3588be65bb4575c40218d98a8638d9615401392ad9f708fc98ef2d9c7
-SIZE (rust/2023-11-16/rust-std-1.74.0-riscv64gc-unknown-freebsd.tar.xz) = 23923712
-SHA256 (rust/2023-11-16/cargo-1.74.0-riscv64gc-unknown-freebsd.tar.xz) = 50e0b763ed2a37dee3befad3b8ad2b32449b49228dd4f299b3602eb034cb9201
-SIZE (rust/2023-11-16/cargo-1.74.0-riscv64gc-unknown-freebsd.tar.xz) = 12095040
+TIMESTAMP = 1707409054
+SHA256 (rust/rustc-1.76.0-src.tar.xz) = 805482b436442a6786d270cacbab8f00529e06141b27b7fb01909b97ce4f3464
+SIZE (rust/rustc-1.76.0-src.tar.xz) = 162267908
+SHA256 (rust/2023-12-28/rustc-1.75.0-aarch64-unknown-freebsd.tar.xz) = d7a896745b510085cbb9935d1853fea3d87989a69fa7f4b52c581434d8f1f58e
+SIZE (rust/2023-12-28/rustc-1.75.0-aarch64-unknown-freebsd.tar.xz) = 56442784
+SHA256 (rust/2023-12-28/rust-std-1.75.0-aarch64-unknown-freebsd.tar.xz) = 99de222255290e1b15fa9b50517c747122b424115ddbeb6c0ca401952429a826
+SIZE (rust/2023-12-28/rust-std-1.75.0-aarch64-unknown-freebsd.tar.xz) = 24948104
+SHA256 (rust/2023-12-28/cargo-1.75.0-aarch64-unknown-freebsd.tar.xz) = cb2387f4c6f71922d0683bbd2d8012da5f43f4aae8d9d510399d82b145b9e414
+SIZE (rust/2023-12-28/cargo-1.75.0-aarch64-unknown-freebsd.tar.xz) = 8172316
+SHA256 (rust/2023-12-28/rustc-1.75.0-x86_64-unknown-freebsd.tar.xz) = dd765ded0541027d8803d5f5b5d9948fff1819d45e73ecbc04c56968b9ca06ad
+SIZE (rust/2023-12-28/rustc-1.75.0-x86_64-unknown-freebsd.tar.xz) = 45474452
+SHA256 (rust/2023-12-28/rust-std-1.75.0-x86_64-unknown-freebsd.tar.xz) = 7bc35d9286ba14c050f65d6cf6253a018d64d47bae62f6502bddcaf3078602ba
+SIZE (rust/2023-12-28/rust-std-1.75.0-x86_64-unknown-freebsd.tar.xz) = 25567132
+SHA256 (rust/2023-12-28/cargo-1.75.0-x86_64-unknown-freebsd.tar.xz) = 6d6bc069f0fa25980be5d3654f49209e920b8bb0f1396031aef29c290b93c7ea
+SIZE (rust/2023-12-28/cargo-1.75.0-x86_64-unknown-freebsd.tar.xz) = 9030472
+SHA256 (rust/2023-12-28/rustc-1.75.0-armv7-unknown-freebsd.tar.xz) = 6e64be8554f9aea7abdb0f1d512c6948347eaf03b416dc2a85b91a772668d844
+SIZE (rust/2023-12-28/rustc-1.75.0-armv7-unknown-freebsd.tar.xz) = 56720164
+SHA256 (rust/2023-12-28/rust-std-1.75.0-armv7-unknown-freebsd.tar.xz) = d8d8eead83421b248fbf1bb272cf4df9dfadd1bbf6263a67e4688e1645532b0e
+SIZE (rust/2023-12-28/rust-std-1.75.0-armv7-unknown-freebsd.tar.xz) = 24335228
+SHA256 (rust/2023-12-28/cargo-1.75.0-armv7-unknown-freebsd.tar.xz) = 36b819cf9667f21dfc82fa4542c14939d45bdbe10076624e2ffd7a1a6172d304
+SIZE (rust/2023-12-28/cargo-1.75.0-armv7-unknown-freebsd.tar.xz) = 8172896
+SHA256 (rust/2023-12-28/rustc-1.75.0-i686-unknown-freebsd.tar.xz) = 565f838b5c7d746ac390c241e2bc0cc70c5fcbc4de409d17ee4a24c883464bae
+SIZE (rust/2023-12-28/rustc-1.75.0-i686-unknown-freebsd.tar.xz) = 63297584
+SHA256 (rust/2023-12-28/rust-std-1.75.0-i686-unknown-freebsd.tar.xz) = a6d33d5382d5e08307bad99cdaac2efc122b859a040cc59d6bd2d4154964fe86
+SIZE (rust/2023-12-28/rust-std-1.75.0-i686-unknown-freebsd.tar.xz) = 25503984
+SHA256 (rust/2023-12-28/cargo-1.75.0-i686-unknown-freebsd.tar.xz) = 328f8103af3edf70a64740203ebe7fcd01096cb5a75b13c73f14cc847093332f
+SIZE (rust/2023-12-28/cargo-1.75.0-i686-unknown-freebsd.tar.xz) = 9406204
+SHA256 (rust/2023-12-28/rustc-1.75.0-powerpc-unknown-freebsd.tar.xz) = cc6cfc7bf3e2c97b69352d3b44d39de05d20642b28cee4618be062c3d8b62595
+SIZE (rust/2023-12-28/rustc-1.75.0-powerpc-unknown-freebsd.tar.xz) = 60967708
+SHA256 (rust/2023-12-28/rust-std-1.75.0-powerpc-unknown-freebsd.tar.xz) = 602db9f267735f2d56d7bed535f5c45af33ceb87a6b4c52b97c4f72653db2a9e
+SIZE (rust/2023-12-28/rust-std-1.75.0-powerpc-unknown-freebsd.tar.xz) = 23475244
+SHA256 (rust/2023-12-28/cargo-1.75.0-powerpc-unknown-freebsd.tar.xz) = 4d2e6a1f0029960aa203fae360c0ab3a486fdb2fae900c6c8509539c0a1319d2
+SIZE (rust/2023-12-28/cargo-1.75.0-powerpc-unknown-freebsd.tar.xz) = 9383356
+SHA256 (rust/2023-12-28/rustc-1.75.0-powerpc64-unknown-freebsd.tar.xz) = 150f8e1adced452caae1f9e964b674ce9857be5c0a45dfeed29cac57129d5ef8
+SIZE (rust/2023-12-28/rustc-1.75.0-powerpc64-unknown-freebsd.tar.xz) = 59768944
+SHA256 (rust/2023-12-28/rust-std-1.75.0-powerpc64-unknown-freebsd.tar.xz) = f650a305a601f8ee0d4f190f793099767b102a6588e12e96c13b1d4e337d2299
+SIZE (rust/2023-12-28/rust-std-1.75.0-powerpc64-unknown-freebsd.tar.xz) = 23461800
+SHA256 (rust/2023-12-28/cargo-1.75.0-powerpc64-unknown-freebsd.tar.xz) = e96e442b6febce9285d9d0b1440c32a102327e1c72a4c4443a22161fccd85486
+SIZE (rust/2023-12-28/cargo-1.75.0-powerpc64-unknown-freebsd.tar.xz) = 9050496
+SHA256 (rust/2023-12-28/rustc-1.75.0-powerpc64le-unknown-freebsd.tar.xz) = 4ecc932c1a5e31aeda8965d6c7cc62685a570d5f79602d40db9fc8d3ccc74c5b
+SIZE (rust/2023-12-28/rustc-1.75.0-powerpc64le-unknown-freebsd.tar.xz) = 61505160
+SHA256 (rust/2023-12-28/rust-std-1.75.0-powerpc64le-unknown-freebsd.tar.xz) = 90d5b3b237406be47213d23c0300ddb6c38a2fea7a13018f2c0f4abf90078851
+SIZE (rust/2023-12-28/rust-std-1.75.0-powerpc64le-unknown-freebsd.tar.xz) = 23606636
+SHA256 (rust/2023-12-28/cargo-1.75.0-powerpc64le-unknown-freebsd.tar.xz) = 17e65d013ccfbc126756bf3d11df0e8378f3850ff3485d37efdbea398db1910d
+SIZE (rust/2023-12-28/cargo-1.75.0-powerpc64le-unknown-freebsd.tar.xz) = 9345472
+SHA256 (rust/2023-12-28/rustc-1.75.0-riscv64gc-unknown-freebsd.tar.xz) = b37f32501f83c4cb5fd3b35334c3198802be3cacccfcc1812049de65a369f3b8
+SIZE (rust/2023-12-28/rustc-1.75.0-riscv64gc-unknown-freebsd.tar.xz) = 71656164
+SHA256 (rust/2023-12-28/rust-std-1.75.0-riscv64gc-unknown-freebsd.tar.xz) = c31ac0ea1a25517b3162191e01cd2c9033740fa9dd7d1697b75d9f1165cc2965
+SIZE (rust/2023-12-28/rust-std-1.75.0-riscv64gc-unknown-freebsd.tar.xz) = 23575792
+SHA256 (rust/2023-12-28/cargo-1.75.0-riscv64gc-unknown-freebsd.tar.xz) = 6a64c7c06b18514d9abdc9aa4e86f8db8b884481ea6c7540f899336db45c0d4a
+SIZE (rust/2023-12-28/cargo-1.75.0-riscv64gc-unknown-freebsd.tar.xz) = 11699372
diff --git a/lang/rust/files/no-hardlinks/patch-src_bootstrap_lib.rs b/lang/rust/files/no-hardlinks/patch-src_bootstrap_lib.rs
deleted file mode 100644
index 03a24563bf05..000000000000
--- a/lang/rust/files/no-hardlinks/patch-src_bootstrap_lib.rs
+++ /dev/null
@@ -1,43 +0,0 @@
-Attempt to fix intermittent "can't find crate for `std`" build failures
-
-The location of rustc (found via env::current_exe()) is used to
-find the right libstd.  However it might have been "copied" by
-creating a hard link to the new location instead.  Like /proc/curproc/file,
-KERN_PROC_PATHNAME (used internally by current_exe()) can return
-any of the file's multiple paths.  Most of the time it returns the
-right rustc path and the build will succeed but occasionally it
-will return the "wrong" path and the build fails with:
-
-    error[E0463]: can't find crate for `std`
-
-If this is right a viable workaround should be to never create hard
-links during the build, so let's try that.
-
---- src/bootstrap/lib.rs.orig	2020-07-23 20:16:43 UTC
-+++ src/bootstrap/lib.rs
-@@ -1450,19 +1450,13 @@ impl Build {
-                 return;
-             }
-         }
--        if let Ok(()) = fs::hard_link(&src, dst) {
--            // Attempt to "easy copy" by creating a hard link
--            // (symlinks don't work on windows), but if that fails
--            // just fall back to a slow `copy` operation.
--        } else {
--            if let Err(e) = fs::copy(&src, dst) {
--                panic!("failed to copy `{}` to `{}`: {}", src.display(), dst.display(), e)
--            }
--            t!(fs::set_permissions(dst, metadata.permissions()));
--            let atime = FileTime::from_last_access_time(&metadata);
--            let mtime = FileTime::from_last_modification_time(&metadata);
--            t!(filetime::set_file_times(dst, atime, mtime));
-+        if let Err(e) = fs::copy(&src, dst) {
-+            panic!("failed to copy `{}` to `{}`: {}", src.display(), dst.display(), e)
-         }
-+        t!(fs::set_permissions(dst, metadata.permissions()));
-+        let atime = FileTime::from_last_access_time(&metadata);
-+        let mtime = FileTime::from_last_modification_time(&metadata);
-+        t!(filetime::set_file_times(dst, atime, mtime));
-     }
- 
-     /// Copies the `src` directory recursively to `dst`. Both are assumed to exist
diff --git a/lang/rust/files/patch-src_tools_cargo_src_cargo_sources_git_source.rs b/lang/rust/files/patch-src_tools_cargo_src_cargo_sources_git_source.rs
index f1f4ffd179c7..3add18d71b22 100644
--- a/lang/rust/files/patch-src_tools_cargo_src_cargo_sources_git_source.rs
+++ b/lang/rust/files/patch-src_tools_cargo_src_cargo_sources_git_source.rs
@@ -13,9 +13,9 @@ be stabilized first.  It will be available in Rust 1.56.
 
 --- src/tools/cargo/src/cargo/sources/git/source.rs.orig	2021-10-04 20:59:57 UTC
 +++ src/tools/cargo/src/cargo/sources/git/source.rs
-@@ -92,6 +92,9 @@ impl<'cfg> Source for GitSource<'cfg> {
+@@ -205,6 +205,9 @@ impl<'cfg> Source for GitSource<'cfg> {
          kind: QueryKind,
-         f: &mut dyn FnMut(Summary),
+         f: &mut dyn FnMut(IndexSummary),
      ) -> Poll<CargoResult<()>> {
 +        if std::env::var("CARGO_FREEBSD_PORTS_SKIP_GIT_UPDATE").is_ok() {
 +            return Poll::Ready(Ok(()));
@@ -23,14 +23,14 @@ be stabilized first.  It will be available in Rust 1.56.
          if let Some(src) = self.path_source.as_mut() {
              src.query(dep, kind, f)
          } else {
-@@ -113,6 +116,10 @@ impl<'cfg> Source for GitSource<'cfg> {
- 
-     fn block_until_ready(&mut self) -> CargoResult<()> {
+@@ -228,6 +231,10 @@ impl<'cfg> Source for GitSource<'cfg> {
          if self.path_source.is_some() {
-+            return Ok(());
+             self.mark_used(None)?;
+             return Ok(());
 +        }
 +
 +        if std::env::var("CARGO_FREEBSD_PORTS_SKIP_GIT_UPDATE").is_ok() {
-             return Ok(());
++             return Ok(());
          }
  
+         let git_fs = self.config.git_path();