aboutsummaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorMikael Urankar <mikael@FreeBSD.org>2025-11-01 11:51:12 +0000
committerMikael Urankar <mikael@FreeBSD.org>2025-11-11 11:07:49 +0000
commit1a1ef8585f5aa1151486a2f8f13d50c6294b1deb (patch)
tree82809b0ae4d28eaa9a8d73d31570d5392b346c1e
parenta01365ba22179d5ceabec53c65586012b75b4dab (diff)
lang/rust: Update to 1.91.1
- Drop WASM option as it requires llvm from ports it was probably broken since it was introduced and no one noticed / used it Announce: https://blog.rust-lang.org/2025/10/30/Rust-1.91.0/ https://blog.rust-lang.org/2025/11/10/Rust-1.91.1/ ChangeLog: https://github.com/rust-lang/rust/releases/tag/1.91.0 https://github.com/rust-lang/rust/releases/tag/1.91.1 PR: 290816 Tested by: mikael,pkubaj
-rw-r--r--Mk/Uses/cargo.mk2
-rw-r--r--Mk/bsd.gecko.mk2
-rw-r--r--lang/rust-bootstrap/Makefile7
-rw-r--r--lang/rust-bootstrap/distinfo6
-rw-r--r--lang/rust/Makefile22
-rw-r--r--lang/rust/distinfo102
-rw-r--r--lang/rust/files/patch-src_bootstrap_src_core_build__steps_install.rs8
-rw-r--r--lang/rust/files/patch-vendor_cc.rs140
-rw-r--r--lang/rust/files/patch-vendor_openssl_crypto_threads__pthread.c13
9 files changed, 95 insertions, 207 deletions
diff --git a/Mk/Uses/cargo.mk b/Mk/Uses/cargo.mk
index c4ef05268ef6..a92ba1e13c3b 100644
--- a/Mk/Uses/cargo.mk
+++ b/Mk/Uses/cargo.mk
@@ -109,7 +109,7 @@ WRKSRC_crate_${_crate}= ${WRKDIR}/${_wrksrc}
CARGO_BUILDDEP?= yes
. if ${CARGO_BUILDDEP:tl} == "yes"
-BUILD_DEPENDS+= ${RUST_DEFAULT}>=1.90.0:lang/${RUST_DEFAULT}
+BUILD_DEPENDS+= ${RUST_DEFAULT}>=1.91.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 59c6721fb7bd..fbe4182122ea 100644
--- a/Mk/bsd.gecko.mk
+++ b/Mk/bsd.gecko.mk
@@ -77,7 +77,7 @@ ELF_FEATURES+= +wxneeded:dist/bin/${MOZILLA} +wxneeded:dist/bin/${MOZILLA}-bin
BUNDLE_LIBS= yes
BUILD_DEPENDS+= rust-cbindgen>=0.28.0:devel/rust-cbindgen \
- ${RUST_DEFAULT}>=1.90.0:lang/${RUST_DEFAULT}
+ ${RUST_DEFAULT}>=1.91.0:lang/${RUST_DEFAULT}
LIB_DEPENDS+= libdrm.so:graphics/libdrm
RUN_DEPENDS+= ${LOCALBASE}/lib/libpci.so:devel/libpci
LIB_DEPENDS+= libepoll-shim.so:devel/libepoll-shim
diff --git a/lang/rust-bootstrap/Makefile b/lang/rust-bootstrap/Makefile
index 51f2ef1ce1a1..4fea2885270f 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.90.0
+PORTVERSION= 1.91.0
CATEGORIES= lang
MASTER_SITES= https://static.rust-lang.org/dist/
PKGNAMEPREFIX= ${FLAVOR:S/_/-/g}-
@@ -82,6 +82,7 @@ do-configure:
@${ECHO_CMD} '# https://github.com/rust-lang/rust/issues/135358 (bug #947897)' >> ${WRKSRC}/config.toml
@${ECHO_CMD} 'profile="dist"' >> ${WRKSRC}/config.toml
@${ECHO_CMD} '[build]' >> ${WRKSRC}/config.toml
+ @${ECHO_CMD} 'tools = ["cargo"]' >> ${WRKSRC}/config.toml
@${ECHO_CMD} 'build-dir="${WRKDIR}/_build"' >> ${WRKSRC}/config.toml
@${ECHO_CMD} 'vendor=true' >> ${WRKSRC}/config.toml
@${ECHO_CMD} 'extended=true' >> ${WRKSRC}/config.toml
@@ -127,6 +128,7 @@ do-configure:
@${ECHO_CMD} 'linker="${CC}"' >> ${WRKSRC}/config.toml
.endif
@${ECHO_CMD} '[dist]' >> ${WRKSRC}/config.toml
+ @${ECHO_CMD} 'compression-formats=["xz"]' >> ${WRKSRC}/config.toml
@${ECHO_CMD} 'src-tarball=false' >> ${WRKSRC}/config.toml
do-build:
@@ -137,6 +139,9 @@ do-install:
@${MKDIR} ${STAGEDIR}${PREFIX}/rust-bootstrap/${FLAVOR}
${INSTALL_DATA} ${WRKDIR}/_build/dist/*-${_RUST_ARCH_${FLAVOR}:U${FLAVOR}}-unknown-${OPSYS:tl}${EXTRACT_SUFX} \
${STAGEDIR}${PREFIX}/rust-bootstrap/${FLAVOR}
+ # we only need rustc, std and cargo
+ ${RM} ${STAGEDIR}${PREFIX}/rust-bootstrap/${FLAVOR}/rust-${PORTVERSION}-* \
+ ${STAGEDIR}${PREFIX}/rust-bootstrap/${FLAVOR}/rust*dev*
@cd ${STAGEDIR}${PREFIX} && \
${FIND} rust-bootstrap -type f >> ${TMPPLIST}
diff --git a/lang/rust-bootstrap/distinfo b/lang/rust-bootstrap/distinfo
index 6cc1de78d0c9..4a89d6c71a4e 100644
--- a/lang/rust-bootstrap/distinfo
+++ b/lang/rust-bootstrap/distinfo
@@ -1,3 +1,3 @@
-TIMESTAMP = 1758279892
-SHA256 (rust/rustc-1.90.0-src.tar.xz) = 6bfeaddd90ffda2f063492b092bfed925c4b8c701579baf4b1316e021470daac
-SIZE (rust/rustc-1.90.0-src.tar.xz) = 272348992
+TIMESTAMP = 1761898188
+SHA256 (rust/rustc-1.91.0-src.tar.xz) = 9b94161dba3aa32192e0e75f7891912d98095ffb86087b07a05af35a0265a938
+SIZE (rust/rustc-1.91.0-src.tar.xz) = 270987196
diff --git a/lang/rust/Makefile b/lang/rust/Makefile
index 065b5cacb80f..9978297780a5 100644
--- a/lang/rust/Makefile
+++ b/lang/rust/Makefile
@@ -1,6 +1,6 @@
PORTNAME= rust
-PORTVERSION?= 1.90.0
-PORTREVISION?= 2
+PORTVERSION?= 1.91.0
+PORTREVISION?= 0
CATEGORIES= lang
MASTER_SITES= https://static.rust-lang.org/dist/:src \
https://dev-static.rust-lang.org/dist/:src \
@@ -47,7 +47,7 @@ CONFLICTS_INSTALL?= rust-nightly rust188
TMPDIR?= ${WRKDIR}
OPTIONS_DEFINE= DOCS GDB LTO PORT_LLVM SOURCES WASM
-OPTIONS_DEFAULT= DOCS SOURCES WASM
+OPTIONS_DEFAULT= DOCS SOURCES
OPTIONS_DEFINE_i386= SSE2
OPTIONS_DEFAULT_i386= SSE2
@@ -65,14 +65,15 @@ DOCS_VARS_OFF= _RUST_BUILD_DOCS=false
GDB_RUN_DEPENDS= ${LOCALBASE}/bin/gdb:devel/gdb
PORT_LLVM_USES= llvm:min=19,lib,noexport
PORT_LLVM_MAKE_ENV= RUSTFLAGS="-Lnative=${LOCALBASE}/lib"
+WASM_USES= llvm:min=19,lib,noexport
SOURCES_VARS= _COMPONENTS+=rust-src-${_PACKAGE_VERS} \
_RUST_TOOLS+=src
WASM_VARS= _COMPONENTS+="rust-analysis-${_PACKAGE_VERS}-wasm32-unknown-unknown rust-std-${_PACKAGE_VERS}-wasm32-unknown-unknown" \
_RUST_TARGETS+=wasm32-unknown-unknown
# See WRKSRC/src/stage0 for the date and version values
-BOOTSTRAPS_DATE?= 2025-08-07
-RUST_BOOTSTRAP_VERSION?= 1.89.0
+BOOTSTRAPS_DATE?= 2025-09-18
+RUST_BOOTSTRAP_VERSION?= 1.90.0
CARGO_VENDOR_DIR?= ${WRKSRC}/vendor
@@ -217,16 +218,25 @@ do-configure:
.if ${ARCH} == powerpc
@${ECHO_CMD} 'cc="${WRKDIR}/cc-wrapper"' >> ${WRKSRC}/config.toml
@${ECHO_CMD} 'cxx="${WRKDIR}/cxx-wrapper"' >> ${WRKSRC}/config.toml
+ @${ECHO_CMD} 'linker="${CC}"' >> ${WRKSRC}/config.toml
+.else
+# base clang doesn't support wasm32-unknown-unknown, use llvm from ports
+.if ${_target} == "wasm32-unknown-unknown"
+ @${ECHO_CMD} 'cc="${LOCALBASE}/bin/clang${LLVM_VERSION}"' >> ${WRKSRC}/config.toml
+ @${ECHO_CMD} 'cxx="${LOCALBASE}/bin/clang++${LLVM_VERSION}"' >> ${WRKSRC}/config.toml
+ @${ECHO_CMD} 'linker="${LOCALBASE}/bin/clang${LLVM_VERSION}"' >> ${WRKSRC}/config.toml
.else
@${ECHO_CMD} 'cc="${CC}"' >> ${WRKSRC}/config.toml
@${ECHO_CMD} 'cxx="${CXX}"' >> ${WRKSRC}/config.toml
-.endif
@${ECHO_CMD} 'linker="${CC}"' >> ${WRKSRC}/config.toml
+.endif
+.endif # powerpc
.if ${PORT_OPTIONS:MPORT_LLVM}
@${ECHO_CMD} 'llvm-config="${LOCALBASE}/bin/${LLVM_CONFIG}"' >> ${WRKSRC}/config.toml
.endif
.endfor
@${ECHO_CMD} '[dist]' >> ${WRKSRC}/config.toml
+ @${ECHO_CMD} 'compression-formats=["xz"]' >> ${WRKSRC}/config.toml
@${ECHO_CMD} 'src-tarball=false' >> ${WRKSRC}/config.toml
do-build:
diff --git a/lang/rust/distinfo b/lang/rust/distinfo
index 8c6822309183..263e6d4db52b 100644
--- a/lang/rust/distinfo
+++ b/lang/rust/distinfo
@@ -1,51 +1,51 @@
-TIMESTAMP = 1758279891
-SHA256 (rust/rustc-1.90.0-src.tar.xz) = 6bfeaddd90ffda2f063492b092bfed925c4b8c701579baf4b1316e021470daac
-SIZE (rust/rustc-1.90.0-src.tar.xz) = 272348992
-SHA256 (rust/2025-08-07/rustc-1.89.0-aarch64-unknown-freebsd.tar.xz) = 4a086c11e9a5dc990b188af55bb002ec57ac385541a67609bae3e869284ba53f
-SIZE (rust/2025-08-07/rustc-1.89.0-aarch64-unknown-freebsd.tar.xz) = 67602196
-SHA256 (rust/2025-08-07/rust-std-1.89.0-aarch64-unknown-freebsd.tar.xz) = 2a47dc1fd48b51fc4aa45eb81b1e541d1dacc622ae8eb8ee94362802cc034a66
-SIZE (rust/2025-08-07/rust-std-1.89.0-aarch64-unknown-freebsd.tar.xz) = 25691400
-SHA256 (rust/2025-08-07/cargo-1.89.0-aarch64-unknown-freebsd.tar.xz) = 7d646378c7a69a6d5ece88c6b8e68086d197fe8a7eca78d3467145b19818b6ff
-SIZE (rust/2025-08-07/cargo-1.89.0-aarch64-unknown-freebsd.tar.xz) = 9062076
-SHA256 (rust/2025-08-07/rustc-1.89.0-x86_64-unknown-freebsd.tar.xz) = 5c3df8a9843d8e9270f26727be280b1f355829353fe5baf4780199110d63a6e6
-SIZE (rust/2025-08-07/rustc-1.89.0-x86_64-unknown-freebsd.tar.xz) = 64150560
-SHA256 (rust/2025-08-07/rust-std-1.89.0-x86_64-unknown-freebsd.tar.xz) = f442d9c402dbda73213c10c1678d08ed2bb9762ef1d7c12f1200861537502d82
-SIZE (rust/2025-08-07/rust-std-1.89.0-x86_64-unknown-freebsd.tar.xz) = 26904092
-SHA256 (rust/2025-08-07/cargo-1.89.0-x86_64-unknown-freebsd.tar.xz) = ab78e988c68e7202914ff2236a4b91f71b3a1537fd566ed789cb9e696ca53abc
-SIZE (rust/2025-08-07/cargo-1.89.0-x86_64-unknown-freebsd.tar.xz) = 10283492
-SHA256 (rust/2025-08-07/rustc-1.89.0-armv7-unknown-freebsd.tar.xz) = 77381d25519c740b833da7172de5881436053d776cba51f0c408382c13ff8cd4
-SIZE (rust/2025-08-07/rustc-1.89.0-armv7-unknown-freebsd.tar.xz) = 68299912
-SHA256 (rust/2025-08-07/rust-std-1.89.0-armv7-unknown-freebsd.tar.xz) = 65f98526286808e43ba0ca9e8d9e13d83db3d46e3b1bb7d2587419d9b928b3a5
-SIZE (rust/2025-08-07/rust-std-1.89.0-armv7-unknown-freebsd.tar.xz) = 24813500
-SHA256 (rust/2025-08-07/cargo-1.89.0-armv7-unknown-freebsd.tar.xz) = 42ec41ea270d2e593f21b1f0a64bfeed2555c373fe8d2177b153b8656a6731be
-SIZE (rust/2025-08-07/cargo-1.89.0-armv7-unknown-freebsd.tar.xz) = 9362148
-SHA256 (rust/2025-08-07/rustc-1.89.0-i686-unknown-freebsd.tar.xz) = fb1428241dc52025134d4e594fb96739d756cf600c6f3d8d75ec69cc2f0fca6c
-SIZE (rust/2025-08-07/rustc-1.89.0-i686-unknown-freebsd.tar.xz) = 76760916
-SHA256 (rust/2025-08-07/rust-std-1.89.0-i686-unknown-freebsd.tar.xz) = 2dd63ef00cf51c88ee2d0772f23b2ba1668696458594ab20c7f8f4b3f6751357
-SIZE (rust/2025-08-07/rust-std-1.89.0-i686-unknown-freebsd.tar.xz) = 26413304
-SHA256 (rust/2025-08-07/cargo-1.89.0-i686-unknown-freebsd.tar.xz) = 71b8701b5577389a57bd600c0cca57d5aa25c70bef2b3e7bf279092a6d7e306d
-SIZE (rust/2025-08-07/cargo-1.89.0-i686-unknown-freebsd.tar.xz) = 10921212
-SHA256 (rust/2025-08-07/rustc-1.89.0-powerpc-unknown-freebsd.tar.xz) = 7c72192b3000cfe972a82bb609f26348986138f68dcfd552a00224dddc25d5b3
-SIZE (rust/2025-08-07/rustc-1.89.0-powerpc-unknown-freebsd.tar.xz) = 69255712
-SHA256 (rust/2025-08-07/rust-std-1.89.0-powerpc-unknown-freebsd.tar.xz) = ef912d59278c02cbdf672f1db936f7705def9aa6b85a6091e7d19278ed546738
-SIZE (rust/2025-08-07/rust-std-1.89.0-powerpc-unknown-freebsd.tar.xz) = 23834180
-SHA256 (rust/2025-08-07/cargo-1.89.0-powerpc-unknown-freebsd.tar.xz) = 3b436178e9b6930b318f26edde7ab5e156186c79f64f363f9fe501fd58a684d9
-SIZE (rust/2025-08-07/cargo-1.89.0-powerpc-unknown-freebsd.tar.xz) = 9464180
-SHA256 (rust/2025-08-07/rustc-1.89.0-powerpc64-unknown-freebsd.tar.xz) = 49304519e51e4c3c6d568c97c5c070ebcde7f8644225b2157353e71a7b6ef95b
-SIZE (rust/2025-08-07/rustc-1.89.0-powerpc64-unknown-freebsd.tar.xz) = 67763500
-SHA256 (rust/2025-08-07/rust-std-1.89.0-powerpc64-unknown-freebsd.tar.xz) = f1f984b84376947bb04ec839e74c2f7f5b743c82f198404deb6e86289aba02f3
-SIZE (rust/2025-08-07/rust-std-1.89.0-powerpc64-unknown-freebsd.tar.xz) = 23920604
-SHA256 (rust/2025-08-07/cargo-1.89.0-powerpc64-unknown-freebsd.tar.xz) = 22d0f60452ceafa56f2bdb85c4f3bf314566cfa060e72eb3df8e165c869e62c9
-SIZE (rust/2025-08-07/cargo-1.89.0-powerpc64-unknown-freebsd.tar.xz) = 9556796
-SHA256 (rust/2025-08-07/rustc-1.89.0-powerpc64le-unknown-freebsd.tar.xz) = 40e9b696df5e9df27bd8c81e66459471897153acb23fd36196ebbce178a73d3b
-SIZE (rust/2025-08-07/rustc-1.89.0-powerpc64le-unknown-freebsd.tar.xz) = 70629540
-SHA256 (rust/2025-08-07/rust-std-1.89.0-powerpc64le-unknown-freebsd.tar.xz) = a151c5791d50dc11477813b7caf2e9f46c7c9c7d4fcbe36b6fefbc98009c0c33
-SIZE (rust/2025-08-07/rust-std-1.89.0-powerpc64le-unknown-freebsd.tar.xz) = 24048396
-SHA256 (rust/2025-08-07/cargo-1.89.0-powerpc64le-unknown-freebsd.tar.xz) = 322a22b6675b12370262fbc47e694decf4145204f2e7853c5385dcaf9711b36a
-SIZE (rust/2025-08-07/cargo-1.89.0-powerpc64le-unknown-freebsd.tar.xz) = 10073080
-SHA256 (rust/2025-08-07/rustc-1.89.0-riscv64gc-unknown-freebsd.tar.xz) = 798654915a94869723254d9e064b831b6908fefe16bf85aa7cbddf90bf98cd54
-SIZE (rust/2025-08-07/rustc-1.89.0-riscv64gc-unknown-freebsd.tar.xz) = 77423140
-SHA256 (rust/2025-08-07/rust-std-1.89.0-riscv64gc-unknown-freebsd.tar.xz) = e998d809d2b8568bcbe963c91233c7cac3bdfd0ca9f81e3926d540366d80d3c4
-SIZE (rust/2025-08-07/rust-std-1.89.0-riscv64gc-unknown-freebsd.tar.xz) = 24224064
-SHA256 (rust/2025-08-07/cargo-1.89.0-riscv64gc-unknown-freebsd.tar.xz) = 5d96c6aacacdbe29932088495b3c2e274b435b57360e9f4291c09d5953a62499
-SIZE (rust/2025-08-07/cargo-1.89.0-riscv64gc-unknown-freebsd.tar.xz) = 11784364
+TIMESTAMP = 1761898186
+SHA256 (rust/rustc-1.91.0-src.tar.xz) = 9b94161dba3aa32192e0e75f7891912d98095ffb86087b07a05af35a0265a938
+SIZE (rust/rustc-1.91.0-src.tar.xz) = 270987196
+SHA256 (rust/2025-09-18/rustc-1.90.0-aarch64-unknown-freebsd.tar.xz) = a2309a06485b18ba8fa7d2bc70363b5d0e609dfa229c08d174e0dda1df7f7c6c
+SIZE (rust/2025-09-18/rustc-1.90.0-aarch64-unknown-freebsd.tar.xz) = 51922812
+SHA256 (rust/2025-09-18/rust-std-1.90.0-aarch64-unknown-freebsd.tar.xz) = d4886646c149e6c1947af9af086a27dac4bb91ae3a6732ddc8a4ecf7a89d0031
+SIZE (rust/2025-09-18/rust-std-1.90.0-aarch64-unknown-freebsd.tar.xz) = 25737340
+SHA256 (rust/2025-09-18/cargo-1.90.0-aarch64-unknown-freebsd.tar.xz) = 24a32547e1416ebf8d4dc52695150ec314b3aad990ab8983770a59ca1e1da78a
+SIZE (rust/2025-09-18/cargo-1.90.0-aarch64-unknown-freebsd.tar.xz) = 9662808
+SHA256 (rust/2025-09-18/rustc-1.90.0-x86_64-unknown-freebsd.tar.xz) = 28bc004ab6841693ffc02f19a9f9da120a275cdde916a2e9e28437960a0d95c7
+SIZE (rust/2025-09-18/rustc-1.90.0-x86_64-unknown-freebsd.tar.xz) = 47615700
+SHA256 (rust/2025-09-18/rust-std-1.90.0-x86_64-unknown-freebsd.tar.xz) = 3115acf7d011067afd9b899b251e90d125190f4c664747eb1eafa6b36881c036
+SIZE (rust/2025-09-18/rust-std-1.90.0-x86_64-unknown-freebsd.tar.xz) = 26727916
+SHA256 (rust/2025-09-18/cargo-1.90.0-x86_64-unknown-freebsd.tar.xz) = 21c4ab33cebadcb0c81c3bd91aacb0d5851d1a34e7032c3190ffd939ac823880
+SIZE (rust/2025-09-18/cargo-1.90.0-x86_64-unknown-freebsd.tar.xz) = 10981908
+SHA256 (rust/2025-09-18/rustc-1.90.0-armv7-unknown-freebsd.tar.xz) = 6677b3e02c017f5661342dea089f002f39a7646c3092e429daac49c6db5b3c5c
+SIZE (rust/2025-09-18/rustc-1.90.0-armv7-unknown-freebsd.tar.xz) = 51933284
+SHA256 (rust/2025-09-18/rust-std-1.90.0-armv7-unknown-freebsd.tar.xz) = db33d92e16acc889339c9119aa405a483667dac8c0767fa7f8d037cbe3cebac8
+SIZE (rust/2025-09-18/rust-std-1.90.0-armv7-unknown-freebsd.tar.xz) = 24912324
+SHA256 (rust/2025-09-18/cargo-1.90.0-armv7-unknown-freebsd.tar.xz) = 9231f46b590579a0780c4e9ca07e4e3039dacb10fe07ded148d819c72bfe68d8
+SIZE (rust/2025-09-18/cargo-1.90.0-armv7-unknown-freebsd.tar.xz) = 9999704
+SHA256 (rust/2025-09-18/rustc-1.90.0-i686-unknown-freebsd.tar.xz) = ae4fb58e00e2996cf11390eb17096300c04ac0ca6ba7168688e70275de915e54
+SIZE (rust/2025-09-18/rustc-1.90.0-i686-unknown-freebsd.tar.xz) = 59013056
+SHA256 (rust/2025-09-18/rust-std-1.90.0-i686-unknown-freebsd.tar.xz) = ff18a19226ffca459a2d1fbd029ed022e048d6c80bffcb8bf0e7b2e181045d96
+SIZE (rust/2025-09-18/rust-std-1.90.0-i686-unknown-freebsd.tar.xz) = 26528240
+SHA256 (rust/2025-09-18/cargo-1.90.0-i686-unknown-freebsd.tar.xz) = b26dc3676ab36893a95e3b544acdf40b8fbb51fed589d8e4197adcaafb618aa4
+SIZE (rust/2025-09-18/cargo-1.90.0-i686-unknown-freebsd.tar.xz) = 11624984
+SHA256 (rust/2025-09-18/rustc-1.90.0-powerpc-unknown-freebsd.tar.xz) = a0c7255137ce84c9ab0ebb94d9dd35e53eca412cffd0f155298b83da91ecc890
+SIZE (rust/2025-09-18/rustc-1.90.0-powerpc-unknown-freebsd.tar.xz) = 52852384
+SHA256 (rust/2025-09-18/rust-std-1.90.0-powerpc-unknown-freebsd.tar.xz) = 6e4cb4a1ff7a1ee63f5b57ee22daa297137ac2e08bb7ac3163702f49ce661be8
+SIZE (rust/2025-09-18/rust-std-1.90.0-powerpc-unknown-freebsd.tar.xz) = 23820420
+SHA256 (rust/2025-09-18/cargo-1.90.0-powerpc-unknown-freebsd.tar.xz) = ac58aa3c7f4d18ad6f2bc3420aae0ce3abab3fc52f6f838c0129e664933ae05e
+SIZE (rust/2025-09-18/cargo-1.90.0-powerpc-unknown-freebsd.tar.xz) = 10065824
+SHA256 (rust/2025-09-18/rustc-1.90.0-powerpc64-unknown-freebsd.tar.xz) = d1357bd141a8f68655a12056059e4bd1c6af8c8420ba579bf9908793ba8936ed
+SIZE (rust/2025-09-18/rustc-1.90.0-powerpc64-unknown-freebsd.tar.xz) = 52207452
+SHA256 (rust/2025-09-18/rust-std-1.90.0-powerpc64-unknown-freebsd.tar.xz) = 78095956c2bc08177dc6c38b096faf64fddf8d70526c491bada7ea7c934badcc
+SIZE (rust/2025-09-18/rust-std-1.90.0-powerpc64-unknown-freebsd.tar.xz) = 23804160
+SHA256 (rust/2025-09-18/cargo-1.90.0-powerpc64-unknown-freebsd.tar.xz) = 9fa65616166d8534b5438441cc6eeb319be2581173389bf0f7fcdd11b3df0ea4
+SIZE (rust/2025-09-18/cargo-1.90.0-powerpc64-unknown-freebsd.tar.xz) = 10181856
+SHA256 (rust/2025-09-18/rustc-1.90.0-powerpc64le-unknown-freebsd.tar.xz) = 5bfe9c7c224420c647c23855379887c425834a51b521197dbf7232d7311aa618
+SIZE (rust/2025-09-18/rustc-1.90.0-powerpc64le-unknown-freebsd.tar.xz) = 54859868
+SHA256 (rust/2025-09-18/rust-std-1.90.0-powerpc64le-unknown-freebsd.tar.xz) = 3df7248efbb7d1768015435324acd48ac998ced0b11c83a9923ddb8cfbf1bc96
+SIZE (rust/2025-09-18/rust-std-1.90.0-powerpc64le-unknown-freebsd.tar.xz) = 23930892
+SHA256 (rust/2025-09-18/cargo-1.90.0-powerpc64le-unknown-freebsd.tar.xz) = 7d9d0c5fe1d438731a13578cbce021d37618b575ba5e866bcf8a7141c99d5682
+SIZE (rust/2025-09-18/cargo-1.90.0-powerpc64le-unknown-freebsd.tar.xz) = 10758944
+SHA256 (rust/2025-09-18/rustc-1.90.0-riscv64gc-unknown-freebsd.tar.xz) = 9fe439641e95be416c0e43226a69a0665fa2349ce39390a30f98ff3707365c53
+SIZE (rust/2025-09-18/rustc-1.90.0-riscv64gc-unknown-freebsd.tar.xz) = 60870560
+SHA256 (rust/2025-09-18/rust-std-1.90.0-riscv64gc-unknown-freebsd.tar.xz) = 9e65e2bb709a5d6b07f7643ae909352948913bb907304c47b29a9ff45d02a421
+SIZE (rust/2025-09-18/rust-std-1.90.0-riscv64gc-unknown-freebsd.tar.xz) = 24241224
+SHA256 (rust/2025-09-18/cargo-1.90.0-riscv64gc-unknown-freebsd.tar.xz) = 872cd083f7a4a4a622084a6d6cfb36d3acd28a381df8c705a284bbc055ab73f4
+SIZE (rust/2025-09-18/cargo-1.90.0-riscv64gc-unknown-freebsd.tar.xz) = 12337788
diff --git a/lang/rust/files/patch-src_bootstrap_src_core_build__steps_install.rs b/lang/rust/files/patch-src_bootstrap_src_core_build__steps_install.rs
index 6d7f6d612496..5cfec3ce509c 100644
--- a/lang/rust/files/patch-src_bootstrap_src_core_build__steps_install.rs
+++ b/lang/rust/files/patch-src_bootstrap_src_core_build__steps_install.rs
@@ -6,12 +6,12 @@ docs first.
--- src/bootstrap/src/core/build_steps/install.rs.orig 2022-05-01 20:28:31 UTC
+++ src/bootstrap/src/core/build_steps/install.rs
-@@ -138,7 +138,7 @@ macro_rules! install {
+@@ -204,7 +204,7 @@ install!((self, builder, _config),
}
install!((self, builder, _config),
-- Docs, path = "src/doc", _config.docs, only_hosts: false, {
-+ Docs, path = "src/doc", _config.docs, only_hosts: true, {
+- Docs, path = "src/doc", _config.docs, IS_HOST: false, {
++ Docs, path = "src/doc", _config.docs, IS_HOST: true, {
let tarball = builder.ensure(dist::Docs { host: self.target }).expect("missing docs");
- install_sh(builder, "docs", self.compiler.stage, Some(self.target), &tarball);
+ install_sh(builder, "docs", self.build_compiler, Some(self.target), &tarball);
};
diff --git a/lang/rust/files/patch-vendor_cc.rs b/lang/rust/files/patch-vendor_cc.rs
deleted file mode 100644
index ef0ac3dc5c04..000000000000
--- a/lang/rust/files/patch-vendor_cc.rs
+++ /dev/null
@@ -1,140 +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.1.18/src/tool.rs.orig 2025-06-08 20:17:28 UTC
-+++ vendor/cc-1.1.18/src/tool.rs
-@@ -174,9 +174,7 @@ impl Tool {
-
- match (clang, accepts_cl_style_flags, gcc, emscripten, vxworks) {
- (clang_cl, true, _, false, false) => Ok(ToolFamily::Msvc { clang_cl }),
-- (true, _, _, _, false) | (_, _, _, true, false) => Ok(ToolFamily::Clang {
-- zig_cc: is_zig_cc(path, cargo_output),
-- }),
-+ (true, _, _, _, false) | (_, _, _, true, false) => Ok(ToolFamily::Gnu),
- (false, false, true, _, false) | (_, _, _, _, true) => Ok(ToolFamily::Gnu),
- (false, false, false, false, false) => {
- cargo_output.print_warning(&"Compiler family detection failed since it does not define `__clang__`, `__GNUC__`, `__EMSCRIPTEN__` or `__VXWORKS__`, also does not accept cl style flag `-?`, fallback to treating it as GNU");
---- vendor/cc-1.2.0/src/tool.rs.orig 2024-12-10 13:16:09 UTC
-+++ vendor/cc-1.2.0/src/tool.rs
-@@ -174,9 +174,7 @@ impl Tool {
-
- match (clang, accepts_cl_style_flags, gcc, emscripten, vxworks) {
- (clang_cl, true, _, false, false) => Ok(ToolFamily::Msvc { clang_cl }),
-- (true, _, _, _, false) | (_, _, _, true, false) => Ok(ToolFamily::Clang {
-- zig_cc: is_zig_cc(path, cargo_output),
-- }),
-+ (true, _, _, _, false) | (_, _, _, true, false) => Ok(ToolFamily::Gnu),
- (false, false, true, _, false) | (_, _, _, _, true) => Ok(ToolFamily::Gnu),
- (false, false, false, false, false) => {
- cargo_output.print_warning(&"Compiler family detection failed since it does not define `__clang__`, `__GNUC__`, `__EMSCRIPTEN__` or `__VXWORKS__`, also does not accept cl style flag `-?`, fallback to treating it as GNU");
---- vendor/cc-1.2.13/src/tool.rs.orig 2025-04-01 18:22:03 UTC
-+++ vendor/cc-1.2.13/src/tool.rs
-@@ -141,9 +141,7 @@ impl Tool {
-
- match (clang, accepts_cl_style_flags, gcc, emscripten, vxworks) {
- (clang_cl, true, _, false, false) => Ok(ToolFamily::Msvc { clang_cl }),
-- (true, _, _, _, false) | (_, _, _, true, false) => Ok(ToolFamily::Clang {
-- zig_cc: is_zig_cc(path, cargo_output),
-- }),
-+ (true, _, _, _, false) | (_, _, _, true, false) => Ok(ToolFamily::Gnu),
- (false, false, true, _, false) | (_, _, _, _, true) => Ok(ToolFamily::Gnu),
- (false, false, false, false, false) => {
- cargo_output.print_warning(&"Compiler family detection failed since it does not define `__clang__`, `__GNUC__`, `__EMSCRIPTEN__` or `__VXWORKS__`, also does not accept cl style flag `-?`, fallback to treating it as GNU");
---- vendor/cc-1.2.16/src/tool.rs.orig 2025-04-01 18:22:03 UTC
-+++ vendor/cc-1.2.16/src/tool.rs
-@@ -141,9 +141,7 @@ impl Tool {
-
- match (clang, accepts_cl_style_flags, gcc, emscripten, vxworks) {
- (clang_cl, true, _, false, false) => Ok(ToolFamily::Msvc { clang_cl }),
-- (true, _, _, _, false) | (_, _, _, true, false) => Ok(ToolFamily::Clang {
-- zig_cc: is_zig_cc(path, cargo_output),
-- }),
-+ (true, _, _, _, false) | (_, _, _, true, false) => Ok(ToolFamily::Gnu),
- (false, false, true, _, false) | (_, _, _, _, true) => Ok(ToolFamily::Gnu),
- (false, false, false, false, false) => {
- cargo_output.print_warning(&"Compiler family detection failed since it does not define `__clang__`, `__GNUC__`, `__EMSCRIPTEN__` or `__VXWORKS__`, also does not accept cl style flag `-?`, fallback to treating it as GNU");
---- vendor/cc-1.2.19/src/tool.rs.orig 2025-04-01 18:22:03 UTC
-+++ vendor/cc-1.2.19/src/tool.rs
-@@ -141,9 +141,7 @@ impl Tool {
-
- match (clang, accepts_cl_style_flags, gcc, emscripten, vxworks) {
- (clang_cl, true, _, false, false) => Ok(ToolFamily::Msvc { clang_cl }),
-- (true, _, _, _, false) | (_, _, _, true, false) => Ok(ToolFamily::Clang {
-- zig_cc: is_zig_cc(path, cargo_output),
-- }),
-+ (true, _, _, _, false) | (_, _, _, true, false) => Ok(ToolFamily::Gnu),
- (false, false, true, _, false) | (_, _, _, _, true) => Ok(ToolFamily::Gnu),
- (false, false, false, false, false) => {
- cargo_output.print_warning(&"Compiler family detection failed since it does not define `__clang__`, `__GNUC__`, `__EMSCRIPTEN__` or `__VXWORKS__`, also does not accept cl style flag `-?`, fallback to treating it as GNU");
---- vendor/cc-1.2.20/src/tool.rs.orig 2025-04-01 18:22:03 UTC
-+++ vendor/cc-1.2.20/src/tool.rs
-@@ -141,9 +141,7 @@ impl Tool {
-
- match (clang, accepts_cl_style_flags, gcc, emscripten, vxworks) {
- (clang_cl, true, _, false, false) => Ok(ToolFamily::Msvc { clang_cl }),
-- (true, _, _, _, false) | (_, _, _, true, false) => Ok(ToolFamily::Clang {
-- zig_cc: is_zig_cc(path, cargo_output),
-- }),
-+ (true, _, _, _, false) | (_, _, _, true, false) => Ok(ToolFamily::Gnu),
- (false, false, true, _, false) | (_, _, _, _, true) => Ok(ToolFamily::Gnu),
- (false, false, false, false, false) => {
- cargo_output.print_warning(&"Compiler family detection failed since it does not define `__clang__`, `__GNUC__`, `__EMSCRIPTEN__` or `__VXWORKS__`, also does not accept cl style flag `-?`, fallback to treating it as GNU");
---- vendor/cc-1.2.23/src/tool.rs.orig 2025-04-01 18:22:03 UTC
-+++ vendor/cc-1.2.23/src/tool.rs
-@@ -141,9 +141,7 @@ impl Tool {
-
- match (clang, accepts_cl_style_flags, gcc, emscripten, vxworks) {
- (clang_cl, true, _, false, false) => Ok(ToolFamily::Msvc { clang_cl }),
-- (true, _, _, _, false) | (_, _, _, true, false) => Ok(ToolFamily::Clang {
-- zig_cc: is_zig_cc(path, cargo_output),
-- }),
-+ (true, _, _, _, false) | (_, _, _, true, false) => Ok(ToolFamily::Gnu),
- (false, false, true, _, false) | (_, _, _, _, true) => Ok(ToolFamily::Gnu),
- (false, false, false, false, false) => {
- cargo_output.print_warning(&"Compiler family detection failed since it does not define `__clang__`, `__GNUC__`, `__EMSCRIPTEN__` or `__VXWORKS__`, also does not accept cl style flag `-?`, fallback to treating it as GNU");
---- vendor/cc-1.2.26/src/tool.rs.orig 2025-04-01 18:22:03 UTC
-+++ vendor/cc-1.2.26/src/tool.rs
-@@ -141,9 +141,7 @@ impl Tool {
-
- match (clang, accepts_cl_style_flags, gcc, emscripten, vxworks) {
- (clang_cl, true, _, false, false) => Ok(ToolFamily::Msvc { clang_cl }),
-- (true, _, _, _, false) | (_, _, _, true, false) => Ok(ToolFamily::Clang {
-- zig_cc: is_zig_cc(path, cargo_output),
-- }),
-+ (true, _, _, _, false) | (_, _, _, true, false) => Ok(ToolFamily::Gnu),
- (false, false, true, _, false) | (_, _, _, _, true) => Ok(ToolFamily::Gnu),
- (false, false, false, false, false) => {
- cargo_output.print_warning(&"Compiler family detection failed since it does not define `__clang__`, `__GNUC__`, `__EMSCRIPTEN__` or `__VXWORKS__`, also does not accept cl style flag `-?`, fallback to treating it as GNU");
---- vendor/cc-1.2.27/src/tool.rs.orig 2025-04-01 18:22:03 UTC
-+++ vendor/cc-1.2.27/src/tool.rs
-@@ -141,9 +141,7 @@ impl Tool {
-
- match (clang, accepts_cl_style_flags, gcc, emscripten, vxworks) {
- (clang_cl, true, _, false, false) => Ok(ToolFamily::Msvc { clang_cl }),
-- (true, _, _, _, false) | (_, _, _, true, false) => Ok(ToolFamily::Clang {
-- zig_cc: is_zig_cc(path, cargo_output),
-- }),
-+ (true, _, _, _, false) | (_, _, _, true, false) => Ok(ToolFamily::Gnu),
- (false, false, true, _, false) | (_, _, _, _, true) => Ok(ToolFamily::Gnu),
- (false, false, false, false, false) => {
- cargo_output.print_warning(&"Compiler family detection failed since it does not define `__clang__`, `__GNUC__`, `__EMSCRIPTEN__` or `__VXWORKS__`, also does not accept cl style flag `-?`, fallback to treating it as GNU");
---- vendor/cc-1.2.30/src/tool.rs.orig 2025-04-01 18:22:03 UTC
-+++ vendor/cc-1.2.30/src/tool.rs
-@@ -141,9 +141,7 @@ impl Tool {
-
- match (clang, accepts_cl_style_flags, gcc, emscripten, vxworks) {
- (clang_cl, true, _, false, false) => Ok(ToolFamily::Msvc { clang_cl }),
-- (true, _, _, _, false) | (_, _, _, true, false) => Ok(ToolFamily::Clang {
-- zig_cc: is_zig_cc(path, cargo_output),
-- }),
-+ (true, _, _, _, false) | (_, _, _, true, false) => Ok(ToolFamily::Gnu),
- (false, false, true, _, false) | (_, _, _, _, true) => Ok(ToolFamily::Gnu),
- (false, false, false, false, false) => {
- cargo_output.print_warning(&"Compiler family detection failed since it does not define `__clang__`, `__GNUC__`, `__EMSCRIPTEN__` or `__VXWORKS__`, also does not accept cl style flag `-?`, fallback to treating it as GNU");
diff --git a/lang/rust/files/patch-vendor_openssl_crypto_threads__pthread.c b/lang/rust/files/patch-vendor_openssl_crypto_threads__pthread.c
index 03afdc6902f8..e8ade04d557a 100644
--- a/lang/rust/files/patch-vendor_openssl_crypto_threads__pthread.c
+++ b/lang/rust/files/patch-vendor_openssl_crypto_threads__pthread.c
@@ -13,3 +13,16 @@
#if defined(OPENSSL_THREADS) && !defined(CRYPTO_TDEBUG) && !defined(OPENSSL_SYS_WINDOWS)
# if defined(OPENSSL_SYS_UNIX)
+--- vendor/openssl-src-300.5.2+3.5.2/openssl/crypto/threads_pthread.c.orig 2025-05-09 22:37:37.000000000 +0200
++++ vendor/openssl-src-300.5.2+3.5.2/openssl/crypto/threads_pthread.c 2025-05-21 14:44:18.563852000 +0200
+@@ -50,6 +50,10 @@ __tsan_mutex_post_lock((x), 0, 0)
+ # define BROKEN_CLANG_ATOMICS
+ #endif
+
++#if defined(__FreeBSD__) && (defined(__i386__) || (defined(__powerpc__) && defined(__ILP32__)))
++#define BROKEN_CLANG_ATOMICS
++#endif
++
+ #if defined(OPENSSL_THREADS) && !defined(CRYPTO_TDEBUG) && !defined(OPENSSL_SYS_WINDOWS)
+
+ # if defined(OPENSSL_SYS_UNIX)