aboutsummaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorRene Ladan <rene@FreeBSD.org>2026-11-01 09:50:48 +0000
committerRene Ladan <rene@FreeBSD.org>2026-11-01 09:50:48 +0000
commit2282e39ee6c9628bec240c47860bbb20f00ae583 (patch)
tree6ef067ff42df824ecc073593c438ab945a2dd43c
parentd60b31248c57f2add847166df84318e70896ae45 (diff)
lang/rust188: Remove expired port
2026-11-01 lang/rust188: Old version with several vulnerabilities
-rw-r--r--MOVED1
-rw-r--r--lang/Makefile1
-rw-r--r--lang/rust188/Makefile286
-rw-r--r--lang/rust188/distinfo51
-rw-r--r--lang/rust188/files/armv7/patch-compiler_rustc__driver__impl_src_signal__handler.rs28
-rw-r--r--lang/rust188/files/armv7/patch-compiler_rustc__target_src_spec_base_freebsd.rs11
-rw-r--r--lang/rust188/files/extra-patch-compiler_rustc__target_src_spec_targets_i686__unknown__freebsd.rs13
-rw-r--r--lang/rust188/files/patch-compiler_rustc__target_src_callconv_powerpc64.rs11
-rw-r--r--lang/rust188/files/patch-library_backtrace_src_backtrace_mod.rs10
-rw-r--r--lang/rust188/files/patch-src_bootstrap_src_core_build__steps_install.rs17
-rw-r--r--lang/rust188/files/patch-src_tools_cargo_src_cargo_sources_git_source.rs36
-rw-r--r--lang/rust188/files/patch-vendor_cc.rs75
-rw-r--r--lang/rust188/files/patch-vendor_git2-0.19.0_src_lib.rs18
-rw-r--r--lang/rust188/files/patch-vendor_libc-0.2.155745
-rw-r--r--lang/rust188/files/patch-vendor_openssl_crypto_threads__pthread.c27
-rw-r--r--lang/rust188/files/riscv64/patch-vendor_rustc__ap__rustc__target_src_spec_riscv64gc__unknown__freebsd.rs21
-rw-r--r--lang/rust188/pkg-descr12
-rw-r--r--lang/rust188/update.sh35
18 files changed, 1 insertions, 1397 deletions
diff --git a/MOVED b/MOVED
index 9625281be56f..2af06e3f27a2 100644
--- a/MOVED
+++ b/MOVED
@@ -5784,3 +5784,4 @@ net/java-beepcore||2026-10-31|Has expired: Unmaintained, unused, upstream is dor
devel/grantlee5||2026-10-31|Has expired: Depends on deprecated Qt5, has no consumers
devel/qconf||2026-10-31|Has expired: Not ported to Qt6, has no consumers
devel/tabby||2026-11-01|Has expired: Depends on expiring lang/rust188
+lang/rust188||2026-11-01|Has expired: Old version with several vulnerabilities
diff --git a/lang/Makefile b/lang/Makefile
index d9859ad4cd35..195c3d671395 100644
--- a/lang/Makefile
+++ b/lang/Makefile
@@ -346,7 +346,6 @@
SUBDIR += rust-bootstrap
SUBDIR += rust-nightly
SUBDIR += rust-nightly-bun
- SUBDIR += rust188
SUBDIR += rustpython
SUBDIR += s7
SUBDIR += s7-nrepl
diff --git a/lang/rust188/Makefile b/lang/rust188/Makefile
deleted file mode 100644
index d0dfe790b792..000000000000
--- a/lang/rust188/Makefile
+++ /dev/null
@@ -1,286 +0,0 @@
-PORTNAME= rust
-PORTVERSION?= 1.88.0
-PORTREVISION?= 1
-CATEGORIES= lang
-MASTER_SITES= https://static.rust-lang.org/dist/:src \
- https://dev-static.rust-lang.org/dist/:src \
- LOCAL/rust:bootstrap \
- https://static.rust-lang.org/dist/:bootstrap
-DISTNAME?= ${PORTNAME}c-${PORTVERSION}-src
-DISTFILES?= ${NIGHTLY_DATE:D${NIGHTLY_DATE}/}${DISTNAME}${EXTRACT_SUFX}:src \
- ${_RUSTC_BOOTSTRAP}${EXTRACT_SUFX}:bootstrap \
- ${_RUST_STD_BOOTSTRAP}${EXTRACT_SUFX}:bootstrap \
- ${_CARGO_BOOTSTRAP}${EXTRACT_SUFX}:bootstrap
-DIST_SUBDIR?= rust
-PKGNAMESUFFIX= 188
-
-MAINTAINER= rust@FreeBSD.org
-COMMENT= Language with a focus on memory safety and concurrency (deprecated 1.88.* series)
-WWW= https://www.rust-lang.org/
-
-LICENSE= APACHE20 MIT
-LICENSE_COMB= dual
-LICENSE_FILE_APACHE20= ${WRKSRC}/LICENSE-APACHE
-LICENSE_FILE_MIT= ${WRKSRC}/LICENSE-MIT
-
-DEPRECATED= Old version with several vulnerabilities
-EXPIRATION_DATE=2026-11-01
-
-ONLY_FOR_ARCHS= aarch64 amd64
-ONLY_FOR_ARCHS_REASON= unused by games/veloren-weekly
-
-LIB_DEPENDS= libcurl.so:ftp/curl
-
-USES= cmake:indirect cpe ninja:build pkgconfig python:build ssl tar:xz
-
-CPE_VENDOR= rust-lang
-
-MAKE_ENV= DESTDIR=${STAGEDIR} \
- LIBGIT2_NO_PKG_CONFIG=1 \
- OPENSSL_DIR="${OPENSSLBASE}"
-TEST_ENV= ${MAKE_ENV} \
- ALLOW_NONZERO_RLIMIT_CORE=1
-
-PORTSCOUT= limit:^1\.88\.
-CONFLICTS_INSTALL?= rust rust-nightly
-
-# rustc stashes intermediary files in TMPDIR (default /tmp) which
-# might cause issues for users that for some reason space limit
-# their /tmp. WRKDIR should have plenty of space.
-# ?= to allow users to still overwrite it in make.conf.
-TMPDIR?= ${WRKDIR}
-
-OPTIONS_DEFINE= DOCS GDB LTO PORT_LLVM SOURCES WASM
-OPTIONS_DEFAULT= SOURCES WASM
-OPTIONS_DEFINE_i386= SSE2
-OPTIONS_DEFAULT_i386= SSE2
-
-GDB_DESC= Install ports gdb (necessary for debugging rust programs)
-PORT_LLVM_DESC= Build against devel/llvm instead of bundled copy (experimental)
-SSE2_DESC= Enable SSE2 instructions
-SOURCES_DESC= Install source files
-WASM_DESC= Build the WebAssembly target (wasm32-unknown-unknown)
-
-SSE2_EXTRA_PATCHES_OFF+= ${FILESDIR}/extra-patch-compiler_rustc__target_src_spec_targets_i686__unknown__freebsd.rs
-
-DOCS_VARS= _RUST_BUILD_DOCS=true \
- _COMPONENTS+="rust-docs-${_PACKAGE_VERS}-${_RUST_TARGET} rust-docs-json-${_PACKAGE_VERS}-${_RUST_TARGET}"
-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"
-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-05-15
-RUST_BOOTSTRAP_VERSION?= 1.87.0
-
-CARGO_VENDOR_DIR?= ${WRKSRC}/vendor
-
-# Rust's target arch string might be different from *BSD arch strings
-_RUST_ARCH_amd64= x86_64
-_RUST_ARCH_i386= i686
-_RUST_ARCH_riscv64= riscv64gc
-_RUST_TARGET= ${_RUST_ARCH_${ARCH}:U${ARCH}}-unknown-${OPSYS:tl}
-_RUST_TARGETS= ${_RUST_TARGET}
-_RUST_TOOLS= analysis cargo clippy rust-analyzer rustdoc rustfmt
-
-_RUSTC_BOOTSTRAP= ${BOOTSTRAPS_DATE_${ARCH}:U${BOOTSTRAPS_DATE}}/rustc-${RUST_BOOTSTRAP_VERSION_${ARCH}:U${RUST_BOOTSTRAP_VERSION}}-${_RUST_TARGET}
-_RUST_STD_BOOTSTRAP= ${BOOTSTRAPS_DATE_${ARCH}:U${BOOTSTRAPS_DATE}}/rust-std-${RUST_BOOTSTRAP_VERSION_${ARCH}:U${RUST_BOOTSTRAP_VERSION}}-${_RUST_TARGET}
-_CARGO_BOOTSTRAP= ${BOOTSTRAPS_DATE_${ARCH}:U${BOOTSTRAPS_DATE}}/cargo-${RUST_BOOTSTRAP_VERSION_${ARCH}:U${RUST_BOOTSTRAP_VERSION}}-${_RUST_TARGET}
-
-_PACKAGE_VERS= ${NIGHTLY_DATE:?nightly:${PORTVERSION}}
-_COMPONENTS+= cargo-${_PACKAGE_VERS}-${_RUST_TARGET} \
- clippy-${_PACKAGE_VERS}-${_RUST_TARGET} \
- rustc-${_PACKAGE_VERS}-${_RUST_TARGET} \
- rustfmt-${_PACKAGE_VERS}-${_RUST_TARGET} \
- rust-analysis-${_PACKAGE_VERS}-${_RUST_TARGET} \
- rust-std-${_PACKAGE_VERS}-${_RUST_TARGET}
-
-.include <bsd.port.pre.mk>
-
-.if ${OPSYS} != FreeBSD
-IGNORE= is only for FreeBSD
-.endif
-
-.if ${ARCH} == powerpc
-LIB_DEPENDS+= libatomic.so:lang/gcc${GCC_DEFAULT}
-MAKE_ENV+= RUSTFLAGS="-L/usr/local/lib/gcc${GCC_DEFAULT}"
-.endif
-
-.if ${ARCH} != powerpc64le
-MAKE_ENV+= RUST_BACKTRACE=1
-.endif
-
-# per https://rust-lang.github.io/rustup/concepts/components.html
-# rustc-dev is only useful on nightly
-.if defined(NIGHTLY_DATE)
-_COMPONENTS+= rustc-dev-${_PACKAGE_VERS}-${_RUST_TARGET}
-.endif
-
-.if ${PORT_OPTIONS:MWASM} && ${PORT_OPTIONS:MDOCS}
-_COMPONENTS+= rust-docs-${_PACKAGE_VERS}-wasm32-unknown-unknown rust-docs-json-${_PACKAGE_VERS}-wasm32-unknown-unknown
-.endif
-
-.if exists(${PATCHDIR}/${ARCH}${BOOTSTRAPS_SUFFIX})
-EXTRA_PATCHES+= ${PATCHDIR}/${ARCH}${BOOTSTRAPS_SUFFIX}
-.endif
-
-.ifdef QEMU_EMULATING
-IGNORE= fails to build with qemu-user-static
-.endif
-
-.if make(makesum)
-DISTFILES:= ${DISTFILES:M*\:src} \
- ${ONLY_FOR_ARCHS:O:@_arch@${:!${MAKE} ARCH=${_arch} -V'DISTFILES:N*\:src'!}@}
-.endif
-
-post-patch:
- @${REINPLACE_CMD} 's,gdb,${LOCALBASE}/bin/gdb,' ${WRKSRC}/src/etc/rust-gdb
-.if defined(NIGHTLY_DATE)
- @${REINPLACE_CMD} '/rustfmt/d' ${WRKSRC}/src/stage0
-.endif
-# Disable vendor checksums
- @${REINPLACE_CMD} 's,"files":{[^}]*},"files":{},' \
- ${CARGO_VENDOR_DIR}/*/.cargo-checksum.json
-
-post-patch-PORT_LLVM-on:
-# WASM target hardcodes bundled lld
- @${REINPLACE_CMD} 's|"rust-lld"|"wasm-ld${LLVM_VERSION}"|' \
- ${WRKSRC}/compiler/rustc_target/src/spec/base/wasm.rs
-
-do-configure:
-# Check that the running kernel has COMPAT_FREEBSD11 required by lang/rust post-ino64
- @${SETENV} CC="${CC}" OPSYS="${OPSYS}" OSVERSION="${OSVERSION}" WRKDIR="${WRKDIR}" \
- ${SH} ${SCRIPTSDIR}/rust-compat11-canary.sh
-.for _component in cargo rust-std rustc
- @cd ${WRKDIR}/${_component}-*-${OPSYS:tl} && \
- ${SH} install.sh --prefix=${WRKDIR}/bootstrap --verbose
-.endfor
- @${ECHO_CMD} '[build]' >> ${WRKSRC}/config.toml
- @${ECHO_CMD} 'build-dir="${WRKDIR}/_build"' >> ${WRKSRC}/config.toml
- @${ECHO_CMD} 'build-stage=2' >> ${WRKSRC}/config.toml
- @${ECHO_CMD} 'doc-stage=2' >> ${WRKSRC}/config.toml
- @${ECHO_CMD} 'test-stage=2' >> ${WRKSRC}/config.toml
- @${ECHO_CMD} 'vendor=true' >> ${WRKSRC}/config.toml
- @${ECHO_CMD} 'extended=true' >> ${WRKSRC}/config.toml
- @${ECHO_CMD} 'python="${PYTHON_CMD}"' >> ${WRKSRC}/config.toml
- @${ECHO_CMD} 'docs=${_RUST_BUILD_DOCS}' >> ${WRKSRC}/config.toml
- @${ECHO_CMD} 'verbose=2' >> ${WRKSRC}/config.toml
-.if defined(NIGHTLY_DATE)
- @${ECHO_CMD} 'profiler=true' >> ${WRKSRC}/config.toml
-.endif
- @${ECHO_CMD} 'target=[${_RUST_TARGETS:@.target.@"${.target.}"@:ts,}]' >> ${WRKSRC}/config.toml
- @${ECHO_CMD} 'cargo="${WRKDIR}/bootstrap/bin/cargo"' >> ${WRKSRC}/config.toml
- @${ECHO_CMD} 'rustc="${WRKDIR}/bootstrap/bin/rustc"' >> ${WRKSRC}/config.toml
- @${ECHO_CMD} 'tools=[${_RUST_TOOLS:@.tool.@"${.tool.}"@:ts,}]' >> ${WRKSRC}/config.toml
- @${ECHO_CMD} '[install]' >> ${WRKSRC}/config.toml
- @${ECHO_CMD} 'prefix="${PREFIX}"' >> ${WRKSRC}/config.toml
- @${ECHO_CMD} 'sysconfdir="${PREFIX}/etc"' >> ${WRKSRC}/config.toml
- @${ECHO_CMD} '[rust]' >> ${WRKSRC}/config.toml
- @${ECHO_CMD} 'channel="stable"' >> ${WRKSRC}/config.toml
- @${ECHO_CMD} 'default-linker="${CC}"' >> ${WRKSRC}/config.toml
- @${ECHO_CMD} 'deny-warnings=false' >> ${WRKSRC}/config.toml
- @${ECHO_CMD} 'verbose-tests=true' >> ${WRKSRC}/config.toml
- @${ECHO_CMD} 'download-rustc=false' >> ${WRKSRC}/config.toml
-.if ${PORT_OPTIONS:MWASM} && !${PORT_OPTIONS:MPORT_LLVM}
- @${ECHO_CMD} 'lld=true' >> ${WRKSRC}/config.toml
-.else
- @${ECHO_CMD} 'lld=false' >> ${WRKSRC}/config.toml
-.endif
-.if ${PORT_OPTIONS:MLTO}
- @${ECHO_CMD} 'lto="thin"' >> ${WRKSRC}/config.toml
-.endif
- @${ECHO_CMD} 'remap-debuginfo=true' >> ${WRKSRC}/config.toml
- @${ECHO_CMD} '[llvm]' >> ${WRKSRC}/config.toml
- @${ECHO_CMD} 'download-ci-llvm=false' >> ${WRKSRC}/config.toml
-.if ${PORT_OPTIONS:MLTO}
- @${ECHO_CMD} 'thin-lto=true' >> ${WRKSRC}/config.toml
-.endif
-.if defined(WITH_CCACHE_BUILD) && !defined(NO_CCACHE)
- @${ECHO_CMD} 'ccache="${CCACHE_BIN}"' >> ${WRKSRC}/config.toml
-.else
- @${ECHO_CMD} 'ccache=false' >> ${WRKSRC}/config.toml
-.endif
- @${ECHO_CMD} 'ninja=true' >> ${WRKSRC}/config.toml
-.if ${ARCH} == powerpc
-# Rust doesn't call the system compiler with the full version of the target.
-# This makes powerpc miscompile due to the secure-plt ABI change.
-# Additionally, force using ld.bfd to work around a linking problem in rustc_mir
- @${PRINTF} '#!/bin/sh\nexec ${CC} "$$@" --target=powerpc-unknown-freebsd13.2' > ${WRKDIR}/cc-wrapper
- @${CHMOD} +x ${WRKDIR}/cc-wrapper
- @${PRINTF} '#!/bin/sh\nexec ${CXX} "$$@" --target=powerpc-unknown-freebsd13.2' > ${WRKDIR}/cxx-wrapper
- @${CHMOD} +x ${WRKDIR}/cxx-wrapper
-.endif
-.for _target in ${_RUST_TARGETS}
- @${ECHO_CMD} '[target.${_target}]' >> ${WRKSRC}/config.toml
- @${ECHO_CMD} 'ar="${AR}"' >> ${WRKSRC}/config.toml
-.if ${ARCH} == powerpc
- @${ECHO_CMD} 'cc="${WRKDIR}/cc-wrapper"' >> ${WRKSRC}/config.toml
- @${ECHO_CMD} 'cxx="${WRKDIR}/cxx-wrapper"' >> ${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
-.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} 'src-tarball=false' >> ${WRKSRC}/config.toml
-
-do-build:
- @cd ${WRKSRC} && \
- ${SETENV} ${MAKE_ENV} ${PYTHON_CMD} x.py dist --jobs=${MAKE_JOBS_NUMBER}
-
-do-install:
- ${RM} -r ${WRKDIR}/_extractdist
-.for _c in ${_COMPONENTS}
- ${MKDIR} ${WRKDIR}/_extractdist
- ${TAR} xf ${WRKDIR}/_build/dist/${_c}.tar.xz -C ${WRKDIR}/_extractdist
- cd ${WRKDIR}/_extractdist/${_c} && \
- ${SH} install.sh \
- --docdir="${STAGEDIR}${DOCSDIR}" \
- --mandir="${STAGEDIR}${PREFIX}/share/man" \
- --prefix="${STAGEDIR}${PREFIX}"
- ${RM} -r ${WRKDIR}/_extractdist
-.endfor
-
-# We autogenerate the plist file. We do that, instead of the
-# regular pkg-plist, because several libraries have a computed
-# filename based on the absolute path of the source files. As it
-# is user-specific, we cannot know their filename in advance.
- @${RM} ${STAGEDIR}${DOCSDIR}/*.old \
- ${STAGEDIR}${PREFIX}/lib/rustlib/components \
- ${STAGEDIR}${PREFIX}/lib/rustlib/install.log \
- ${STAGEDIR}${PREFIX}/lib/rustlib/manifest-* \
- ${STAGEDIR}${PREFIX}/lib/rustlib/rust-installer-version \
- ${STAGEDIR}${PREFIX}/lib/rustlib/uninstall.sh
- @${FIND} ${STAGEDIR}${PREFIX}/bin ${STAGEDIR}${PREFIX}/lib \
- ${STAGEDIR}${PREFIX}/libexec -exec ${FILE} -i {} + | \
- ${AWK} -F: '/executable|sharedlib/ { print $$1 }' | ${XARGS} ${STRIP_CMD}
- @${FIND} ${STAGEDIR}${PREFIX} -not -type d | \
- ${SED} -E -e 's,^${STAGEDIR}${PREFIX}/,,' \
- -e 's,(share/man/man[1-9]/.*\.[0-9]),\1.gz,' >> ${TMPPLIST}
-
-post-install-DOCS-on:
-# Ignore any left behind empty directories in case some docs fail
-# to build (failures are ignored due to deny-warnings=false).
- @${FIND} ${STAGEDIR}${DOCSDIR}/html -empty -type d | \
- ${SED} 's,^${STAGEDIR},@comment @dir ,' >> ${TMPPLIST}
-
-post-install-SOURCES-on:
-# Silence stage-qa warnings by sanitizing permissions on sources
- @${FIND} ${STAGEDIR}${PREFIX}/lib/rustlib/src -type f -exec ${CHMOD} \
- ${SHAREMODE} {} +
-
-# Note that make test does not work when rust is already installed.
-do-test:
- @cd ${WRKSRC} && \
- ${SETENV} ${TEST_ENV} ${PYTHON_CMD} x.py test --jobs=${MAKE_JOBS_NUMBER}
-
-.include <bsd.port.post.mk>
diff --git a/lang/rust188/distinfo b/lang/rust188/distinfo
deleted file mode 100644
index 833397cfa5cc..000000000000
--- a/lang/rust188/distinfo
+++ /dev/null
@@ -1,51 +0,0 @@
-TIMESTAMP = 1751532290
-SHA256 (rust/rustc-1.88.0-src.tar.xz) = 0c1dcbb4f762513d021e1a282c0ac58c0a423642b3a6bf581cafb5414df4193e
-SIZE (rust/rustc-1.88.0-src.tar.xz) = 283294344
-SHA256 (rust/2025-05-15/rustc-1.87.0-aarch64-unknown-freebsd.tar.xz) = 6d7a7fe409d84019a6681a7c5bbe804c2a71444dffa482c277f7303afbbac1bb
-SIZE (rust/2025-05-15/rustc-1.87.0-aarch64-unknown-freebsd.tar.xz) = 68494832
-SHA256 (rust/2025-05-15/rust-std-1.87.0-aarch64-unknown-freebsd.tar.xz) = 85fbfeab2bee94cddc8f237324de6ac0b65511b61427611bb600f589cd83269f
-SIZE (rust/2025-05-15/rust-std-1.87.0-aarch64-unknown-freebsd.tar.xz) = 25085332
-SHA256 (rust/2025-05-15/cargo-1.87.0-aarch64-unknown-freebsd.tar.xz) = f6fad164c4b3107c531036c9f4aea79f1d5b3138a9212839082068ec14e8069a
-SIZE (rust/2025-05-15/cargo-1.87.0-aarch64-unknown-freebsd.tar.xz) = 8864360
-SHA256 (rust/2025-05-15/rustc-1.87.0-x86_64-unknown-freebsd.tar.xz) = 37f413c5af70d678598844e206329f24c3047d38cc43f162a0c6db14b6a5de0c
-SIZE (rust/2025-05-15/rustc-1.87.0-x86_64-unknown-freebsd.tar.xz) = 63790236
-SHA256 (rust/2025-05-15/rust-std-1.87.0-x86_64-unknown-freebsd.tar.xz) = 037b982e3cdf2af304647a8dbaf83c310605cbd131b2fd2c436f0a4284581325
-SIZE (rust/2025-05-15/rust-std-1.87.0-x86_64-unknown-freebsd.tar.xz) = 26183840
-SHA256 (rust/2025-05-15/cargo-1.87.0-x86_64-unknown-freebsd.tar.xz) = 9cdffc039d2b449619b81dcd494c399180507faee2b7b5a18ff8fd59aa6215d3
-SIZE (rust/2025-05-15/cargo-1.87.0-x86_64-unknown-freebsd.tar.xz) = 10021928
-SHA256 (rust/2025-05-15/rustc-1.87.0-armv7-unknown-freebsd.tar.xz) = 0115525ad2c7df25ef25338a986e42a0c028ae53cf0c6dbf31a9313197c96832
-SIZE (rust/2025-05-15/rustc-1.87.0-armv7-unknown-freebsd.tar.xz) = 68671404
-SHA256 (rust/2025-05-15/rust-std-1.87.0-armv7-unknown-freebsd.tar.xz) = d37a4ede26f8334b96982321dfa94dbefe50da2cc39fae4ddbeae077e8aded1a
-SIZE (rust/2025-05-15/rust-std-1.87.0-armv7-unknown-freebsd.tar.xz) = 24274380
-SHA256 (rust/2025-05-15/cargo-1.87.0-armv7-unknown-freebsd.tar.xz) = 86a86b4661fbbd70ff9c052c4729c01132767785597599f818d6607dc6544b1c
-SIZE (rust/2025-05-15/cargo-1.87.0-armv7-unknown-freebsd.tar.xz) = 9116332
-SHA256 (rust/2025-05-15/rustc-1.87.0-i686-unknown-freebsd.tar.xz) = eda4511359f500204726fdca40bd88292c83144d2a4f566c083ac41f8121358a
-SIZE (rust/2025-05-15/rustc-1.87.0-i686-unknown-freebsd.tar.xz) = 76629816
-SHA256 (rust/2025-05-15/rust-std-1.87.0-i686-unknown-freebsd.tar.xz) = dfe0645c3913a1852561ab141f01dd90ec678080400d112361c5ade6b324fba2
-SIZE (rust/2025-05-15/rust-std-1.87.0-i686-unknown-freebsd.tar.xz) = 25965172
-SHA256 (rust/2025-05-15/cargo-1.87.0-i686-unknown-freebsd.tar.xz) = a536712e4fd1919b397a2427b5d2080f06d4e9d3f9ef96a4e0ffae8497a3cd6c
-SIZE (rust/2025-05-15/cargo-1.87.0-i686-unknown-freebsd.tar.xz) = 10599524
-SHA256 (rust/2025-05-15/rustc-1.87.0-powerpc-unknown-freebsd.tar.xz) = 55eb2f9e15ae7ef4ef8df383f578048e13d81f587ea3689bd708908bf9d4af97
-SIZE (rust/2025-05-15/rustc-1.87.0-powerpc-unknown-freebsd.tar.xz) = 69260664
-SHA256 (rust/2025-05-15/rust-std-1.87.0-powerpc-unknown-freebsd.tar.xz) = bdcaab8444e42a645815b92fe0ea9eb3718c63a42e15eba4f481a13996bb79d0
-SIZE (rust/2025-05-15/rust-std-1.87.0-powerpc-unknown-freebsd.tar.xz) = 23412632
-SHA256 (rust/2025-05-15/cargo-1.87.0-powerpc-unknown-freebsd.tar.xz) = c605ad5c7e73b38c575989796a4dca24bac92f3034703bbed5f4b5d954aa9739
-SIZE (rust/2025-05-15/cargo-1.87.0-powerpc-unknown-freebsd.tar.xz) = 9219908
-SHA256 (rust/2025-05-15/rustc-1.87.0-powerpc64-unknown-freebsd.tar.xz) = 04b22a1eacb30dc7d16d9751baca92a2cec72010c85fc4927267e3b42c0094d3
-SIZE (rust/2025-05-15/rustc-1.87.0-powerpc64-unknown-freebsd.tar.xz) = 67746940
-SHA256 (rust/2025-05-15/rust-std-1.87.0-powerpc64-unknown-freebsd.tar.xz) = a21922d860f19e0b4c642207274c588df1341c6ff622050a0653bb82be40bda6
-SIZE (rust/2025-05-15/rust-std-1.87.0-powerpc64-unknown-freebsd.tar.xz) = 23282608
-SHA256 (rust/2025-05-15/cargo-1.87.0-powerpc64-unknown-freebsd.tar.xz) = 07aca5c0e8dcc8aaea3b7b16751d6191373105d445f73e46139eb16066a146ca
-SIZE (rust/2025-05-15/cargo-1.87.0-powerpc64-unknown-freebsd.tar.xz) = 9295388
-SHA256 (rust/2025-05-15/rustc-1.87.0-powerpc64le-unknown-freebsd.tar.xz) = a99e6b9e9713c530337633a5e36d214ae687ba638b7f04c07a9cf659c245c781
-SIZE (rust/2025-05-15/rustc-1.87.0-powerpc64le-unknown-freebsd.tar.xz) = 71448916
-SHA256 (rust/2025-05-15/rust-std-1.87.0-powerpc64le-unknown-freebsd.tar.xz) = 8bd9ba04fe0cf194a1004abca0bc9420a47d0491131c4f6c0b0d8a89ad5b96ea
-SIZE (rust/2025-05-15/rust-std-1.87.0-powerpc64le-unknown-freebsd.tar.xz) = 23330908
-SHA256 (rust/2025-05-15/cargo-1.87.0-powerpc64le-unknown-freebsd.tar.xz) = 9a67120c2776d181c1f32e68f8e55a0d05543f439feeb08c1d8ce6d96a1771da
-SIZE (rust/2025-05-15/cargo-1.87.0-powerpc64le-unknown-freebsd.tar.xz) = 9794732
-SHA256 (rust/2025-05-15/rustc-1.87.0-riscv64gc-unknown-freebsd.tar.xz) = b4b5c71211e2873461b4fd3108668dfd108e220d7012ed9e2b962912d91a9f19
-SIZE (rust/2025-05-15/rustc-1.87.0-riscv64gc-unknown-freebsd.tar.xz) = 78845668
-SHA256 (rust/2025-05-15/rust-std-1.87.0-riscv64gc-unknown-freebsd.tar.xz) = e79ac7a4449f934b0b6d5699e3080aef3d2d665a128f701a786e847634dd8abf
-SIZE (rust/2025-05-15/rust-std-1.87.0-riscv64gc-unknown-freebsd.tar.xz) = 23480648
-SHA256 (rust/2025-05-15/cargo-1.87.0-riscv64gc-unknown-freebsd.tar.xz) = 316fac9c44a37d85ae18a40290f5ce3b064e5326fff3574119322ba191109205
-SIZE (rust/2025-05-15/cargo-1.87.0-riscv64gc-unknown-freebsd.tar.xz) = 11690508
diff --git a/lang/rust188/files/armv7/patch-compiler_rustc__driver__impl_src_signal__handler.rs b/lang/rust188/files/armv7/patch-compiler_rustc__driver__impl_src_signal__handler.rs
deleted file mode 100644
index 07a775d26727..000000000000
--- a/lang/rust188/files/armv7/patch-compiler_rustc__driver__impl_src_signal__handler.rs
+++ /dev/null
@@ -1,28 +0,0 @@
-error[E0308]: mismatched types
- --> compiler/rustc_driver_impl/src/signal_handler.rs:43:63
- |
-43 | let depth = libc::backtrace(STACK_TRACE.as_mut_ptr(), MAX_FRAMES as i32);
- | --------------- ^^^^^^^^^^^^^^^^^ expected `usize`, found `i32`
- | |
- | arguments to this function are incorrect
- |
-note: function defined here
- --> /wrkdirs/usr/ports/lang/rust-bootstrap/work-armv7/rustc-1.78.0-src/vendor/libc/src/unix/bsd/freebsdlike/mod.rs:1861:12
- |
-1861 | pub fn backtrace(addrlist: *mut *mut ::c_void, len: ::size_t) -> ::size_t;
- | ^^^^^^^^^
-help: you can convert an `i32` to a `usize` and panic if the converted value doesn't fit
- |
-43 | let depth = libc::backtrace(STACK_TRACE.as_mut_ptr(), (MAX_FRAMES as i32).try_into().unwrap());
-
---- compiler/rustc_driver_impl/src/signal_handler.rs.orig 2024-05-06 16:00:17 UTC
-+++ compiler/rustc_driver_impl/src/signal_handler.rs
-@@ -46,7 +46,7 @@ unsafe extern "C" fn print_stack_trace(_: libc::c_int)
- // in incredibly undesirable and unexpected ways due to e.g. the allocator deadlocking
- static mut STACK_TRACE: [*mut libc::c_void; MAX_FRAMES] = [ptr::null_mut(); MAX_FRAMES];
- // Collect return addresses
-- let depth = libc::backtrace(&raw mut STACK_TRACE as _, MAX_FRAMES as i32);
-+ let depth = libc::backtrace(&raw mut STACK_TRACE as _, (MAX_FRAMES as i32).try_into().unwrap());
- if depth == 0 {
- return;
- }
diff --git a/lang/rust188/files/armv7/patch-compiler_rustc__target_src_spec_base_freebsd.rs b/lang/rust188/files/armv7/patch-compiler_rustc__target_src_spec_base_freebsd.rs
deleted file mode 100644
index 6bbfec294be6..000000000000
--- a/lang/rust188/files/armv7/patch-compiler_rustc__target_src_spec_base_freebsd.rs
+++ /dev/null
@@ -1,11 +0,0 @@
---- compiler/rustc_target/src/spec/base/freebsd.rs.orig 2024-11-16 UTC
-+++ compiler/rustc_target/src/spec/base/freebsd.rs
-@@ -9,7 +9,7 @@ pub fn opts() -> TargetOptions {
- crt_static_respected: true,
- position_independent_executables: true,
- relro_level: RelroLevel::Full,
-- has_thread_local: true,
-+ has_thread_local: false,
- abi_return_struct_as_int: true,
- default_dwarf_version: 2,
- ..Default::default()
diff --git a/lang/rust188/files/extra-patch-compiler_rustc__target_src_spec_targets_i686__unknown__freebsd.rs b/lang/rust188/files/extra-patch-compiler_rustc__target_src_spec_targets_i686__unknown__freebsd.rs
deleted file mode 100644
index 45d479133343..000000000000
--- a/lang/rust188/files/extra-patch-compiler_rustc__target_src_spec_targets_i686__unknown__freebsd.rs
+++ /dev/null
@@ -1,13 +0,0 @@
-i386 should be pentiumpro (no SSE2, no ...)
-
---- compiler/rustc_target/src/spec/targets/i686_unknown_freebsd.rs.orig 2023-12-22 11:18:00 UTC
-+++ compiler/rustc_target/src/spec/targets/i686_unknown_freebsd.rs
-@@ -2,7 +2,7 @@ pub fn target() -> Target {
-
- pub fn target() -> Target {
- let mut base = base::freebsd::opts();
-- base.cpu = "pentium4".into();
-+ base.cpu = "pentiumpro".into();
- base.max_atomic_width = Some(64);
- base.add_pre_link_args(LinkerFlavor::Gnu(Cc::Yes, Lld::No), &["-m32", "-Wl,-znotext"]);
- base.stack_probes = StackProbeType::X86;
diff --git a/lang/rust188/files/patch-compiler_rustc__target_src_callconv_powerpc64.rs b/lang/rust188/files/patch-compiler_rustc__target_src_callconv_powerpc64.rs
deleted file mode 100644
index 9a31c92a74a7..000000000000
--- a/lang/rust188/files/patch-compiler_rustc__target_src_callconv_powerpc64.rs
+++ /dev/null
@@ -1,11 +0,0 @@
---- compiler/rustc_target/src/callconv/powerpc64.rs.orig 2020-03-09 22:11:17 UTC
-+++ compiler/rustc_target/src/callconv/powerpc64.rs
-@@ -95,7 +95,7 @@ where
- ELFv2
- } else {
- match cx.data_layout().endian {
-- Endian::Big => ELFv1,
-+ Endian::Big => ELFv2,
- Endian::Little => ELFv2,
- }
- };
diff --git a/lang/rust188/files/patch-library_backtrace_src_backtrace_mod.rs b/lang/rust188/files/patch-library_backtrace_src_backtrace_mod.rs
deleted file mode 100644
index f4f618ac6bf1..000000000000
--- a/lang/rust188/files/patch-library_backtrace_src_backtrace_mod.rs
+++ /dev/null
@@ -1,10 +0,0 @@
---- library/backtrace/src/backtrace/mod.rs.orig 2021-11-29 19:27:28 UTC
-+++ library/backtrace/src/backtrace/mod.rs
-@@ -176,6 +176,7 @@ cfg_if::cfg_if! {
- unix,
- not(target_os = "emscripten"),
- not(all(target_os = "ios", target_arch = "arm")),
-+ not(all(target_os = "freebsd", target_arch = "riscv64")),
- ),
- all(
- target_env = "sgx",
diff --git a/lang/rust188/files/patch-src_bootstrap_src_core_build__steps_install.rs b/lang/rust188/files/patch-src_bootstrap_src_core_build__steps_install.rs
deleted file mode 100644
index 6d7f6d612496..000000000000
--- a/lang/rust188/files/patch-src_bootstrap_src_core_build__steps_install.rs
+++ /dev/null
@@ -1,17 +0,0 @@
-Only install docs for the host target
-
-It otherwise wastes significant time (there are a lot of individual
-files) and stages host docs, wasm docs, which unstages the host
-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 {
- }
-
- install!((self, builder, _config),
-- Docs, path = "src/doc", _config.docs, only_hosts: false, {
-+ Docs, path = "src/doc", _config.docs, only_hosts: true, {
- let tarball = builder.ensure(dist::Docs { host: self.target }).expect("missing docs");
- install_sh(builder, "docs", self.compiler.stage, Some(self.target), &tarball);
- };
diff --git a/lang/rust188/files/patch-src_tools_cargo_src_cargo_sources_git_source.rs b/lang/rust188/files/patch-src_tools_cargo_src_cargo_sources_git_source.rs
deleted file mode 100644
index 3add18d71b22..000000000000
--- a/lang/rust188/files/patch-src_tools_cargo_src_cargo_sources_git_source.rs
+++ /dev/null
@@ -1,36 +0,0 @@
-We run cargo update during USES=cargo ports builds to update specific
-crates and patch Cargo.lock for us. For normal crates this is based
-on what's available in the vendor dir. For Git sources this pulls
-new changes from the net instead even if we replace the source with
-a static path in a patch section in the config file. Add a hack
-to skip this.
-
-This is for experimentation to solve [1]. For this to maybe be
-useful for USES=cargo, the patch-in-config feature also needs to
-be stabilized first. It will be available in Rust 1.56.
-
-[1] https://bugs.freebsd.org/bugzilla/show_bug.cgi?id=256581
-
---- 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
-@@ -205,6 +205,9 @@ impl<'cfg> Source for GitSource<'cfg> {
- kind: QueryKind,
- f: &mut dyn FnMut(IndexSummary),
- ) -> Poll<CargoResult<()>> {
-+ if std::env::var("CARGO_FREEBSD_PORTS_SKIP_GIT_UPDATE").is_ok() {
-+ return Poll::Ready(Ok(()));
-+ }
- if let Some(src) = self.path_source.as_mut() {
- src.query(dep, kind, f)
- } else {
-@@ -228,6 +231,10 @@ impl<'cfg> Source for GitSource<'cfg> {
- if self.path_source.is_some() {
- self.mark_used(None)?;
- return Ok(());
-+ }
-+
-+ if std::env::var("CARGO_FREEBSD_PORTS_SKIP_GIT_UPDATE").is_ok() {
-+ return Ok(());
- }
-
- let git_fs = self.config.git_path();
diff --git a/lang/rust188/files/patch-vendor_cc.rs b/lang/rust188/files/patch-vendor_cc.rs
deleted file mode 100644
index dbcbe5771fdd..000000000000
--- a/lang/rust188/files/patch-vendor_cc.rs
+++ /dev/null
@@ -1,75 +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.99/src/tool.rs.orig 2024-05-09 18:20:47 UTC
-+++ vendor/cc-1.0.99/src/tool.rs
-@@ -151,9 +151,7 @@ impl Tool {
-
- match (clang, accepts_cl_style_flags, gcc) {
- (clang_cl, true, _) => Ok(ToolFamily::Msvc { clang_cl }),
-- (true, false, _) => Ok(ToolFamily::Clang {
-- zig_cc: is_zig_cc(path, cargo_output),
-- }),
-+ (true, false, _) => Ok(ToolFamily::Gnu),
- (false, false, true) => Ok(ToolFamily::Gnu),
- (false, false, false) => {
- cargo_output.print_warning(&"Compiler family detection failed since it does not define `__clang__`, `__GNUC__` or `_MSC_VER`, fallback to treating it as GNU");
---- vendor/cc-1.2.0/src/tool.rs.orig 2024-05-09 18:20:47 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.16/src/tool.rs.orig 2024-05-09 18:20:47 UTC
-+++ vendor/cc-1.2.16/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.17/src/tool.rs.orig 2024-05-09 18:20:47 UTC
-+++ vendor/cc-1.2.17/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.21/src/tool.rs.orig 2024-05-09 18:20:47 UTC
-+++ vendor/cc-1.2.21/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");
diff --git a/lang/rust188/files/patch-vendor_git2-0.19.0_src_lib.rs b/lang/rust188/files/patch-vendor_git2-0.19.0_src_lib.rs
deleted file mode 100644
index 1676f0c23188..000000000000
--- a/lang/rust188/files/patch-vendor_git2-0.19.0_src_lib.rs
+++ /dev/null
@@ -1,18 +0,0 @@
---- vendor/git2-0.20.0/src/lib.rs.orig 2025-02-21 20:02:44 UTC
-+++ vendor/git2-0.20.0/src/lib.rs
-@@ -759,6 +759,7 @@ fn init() {
- unix,
- not(target_os = "macos"),
- not(target_os = "ios"),
-+ not(target_os = "freebsd"),
- feature = "https"
- ))]
- fn openssl_env_init() {
-@@ -880,6 +881,7 @@ fn openssl_env_init() {
- windows,
- target_os = "macos",
- target_os = "ios",
-+ target_os = "freebsd",
- not(feature = "https")
- ))]
- fn openssl_env_init() {}
diff --git a/lang/rust188/files/patch-vendor_libc-0.2.155 b/lang/rust188/files/patch-vendor_libc-0.2.155
deleted file mode 100644
index 69c2a03f7062..000000000000
--- a/lang/rust188/files/patch-vendor_libc-0.2.155
+++ /dev/null
@@ -1,745 +0,0 @@
-https://github.com/rust-lang/rust/issues/130677
-
-From 9049542fabce9eea669d1fe3d4d973931c9d7d23 Mon Sep 17 00:00:00 2001
-From: Alan Somers <asomers@gmail.com>
-Date: Mon, 23 Sep 2024 10:22:32 -0600
-Subject: [PATCH] Fix the definition of ino_t on 32-bit FreeBSD 12+
-
-Commit 7437d0a6f1 erroneously defined it as "ulong" instead of u64.
-Nobody noticed the mistake, probably because it was only tested on
-64-bit architectures, where those are equivalent. But it's a problem
-now, after #3723 , which switched the standard library to a FreeBSD 12
-ABI.
-
-Issue https://github.com/rust-lang/rust/issues/130677
----
- src/unix/bsd/freebsdlike/freebsd/freebsd11/mod.rs | 2 +-
- src/unix/bsd/freebsdlike/freebsd/freebsd12/mod.rs | 2 +-
- src/unix/bsd/freebsdlike/freebsd/freebsd13/mod.rs | 2 +-
- src/unix/bsd/freebsdlike/freebsd/freebsd14/mod.rs | 2 +-
- src/unix/bsd/freebsdlike/freebsd/freebsd15/mod.rs | 2 +-
- 5 files changed, 5 insertions(+), 5 deletions(-)
-
-diff --git a/src/unix/bsd/freebsdlike/freebsd/freebsd11/mod.rs b/src/unix/bsd/freebsdlike/freebsd/freebsd11/mod.rs
-index de34069eabdf2..68a8364194607 100644
---- vendor/libc-0.2.155/src/unix/bsd/freebsdlike/freebsd/freebsd11/mod.rs
-+++ vendor/libc-0.2.155/src/unix/bsd/freebsdlike/freebsd/freebsd11/mod.rs
-@@ -4,7 +4,7 @@
- pub type nlink_t = u16;
- // Type of `dev_t` changed from `u32` to `u64` in FreeBSD 12:
- pub type dev_t = u32;
--// Type of `ino_t` changed from `unsigned int` to `unsigned long` in FreeBSD 12:
-+// Type of `ino_t` changed from `__uint32_t` to `__uint64_t` in FreeBSD 12:
- pub type ino_t = u32;
-
- s! {
-diff --git a/src/unix/bsd/freebsdlike/freebsd/freebsd12/mod.rs b/src/unix/bsd/freebsdlike/freebsd/freebsd12/mod.rs
-index 10fcaa03a4ef6..197400ffb4e28 100644
---- vendor/libc-0.2.155/src/unix/bsd/freebsdlike/freebsd/freebsd12/mod.rs
-+++ vendor/libc-0.2.155/src/unix/bsd/freebsdlike/freebsd/freebsd12/mod.rs
-@@ -2,7 +2,7 @@
-
- pub type nlink_t = u64;
- pub type dev_t = u64;
--pub type ino_t = ::c_ulong;
-+pub type ino_t = u64;
- pub type shmatt_t = ::c_uint;
-
- s! {
-diff --git a/src/unix/bsd/freebsdlike/freebsd/freebsd13/mod.rs b/src/unix/bsd/freebsdlike/freebsd/freebsd13/mod.rs
-index ec6bce2a03091..d3a77d03c48d0 100644
---- vendor/libc-0.2.155/src/unix/bsd/freebsdlike/freebsd/freebsd13/mod.rs
-+++ vendor/libc-0.2.155/src/unix/bsd/freebsdlike/freebsd/freebsd13/mod.rs
-@@ -2,7 +2,7 @@
-
- pub type nlink_t = u64;
- pub type dev_t = u64;
--pub type ino_t = ::c_ulong;
-+pub type ino_t = u64;
- pub type shmatt_t = ::c_uint;
- pub type kpaddr_t = u64;
- pub type kssize_t = i64;
-diff --git a/src/unix/bsd/freebsdlike/freebsd/freebsd14/mod.rs b/src/unix/bsd/freebsdlike/freebsd/freebsd14/mod.rs
-index 160a4baae481b..9d65317d29cb4 100644
---- vendor/libc-0.2.155/src/unix/bsd/freebsdlike/freebsd/freebsd14/mod.rs
-+++ vendor/libc-0.2.155/src/unix/bsd/freebsdlike/freebsd/freebsd14/mod.rs
-@@ -2,7 +2,7 @@
-
- pub type nlink_t = u64;
- pub type dev_t = u64;
--pub type ino_t = ::c_ulong;
-+pub type ino_t = u64;
- pub type shmatt_t = ::c_uint;
- pub type kpaddr_t = u64;
- pub type kssize_t = i64;
-diff --git a/src/unix/bsd/freebsdlike/freebsd/freebsd15/mod.rs b/src/unix/bsd/freebsdlike/freebsd/freebsd15/mod.rs
-index d73215a68ec33..f76208400f324 100644
---- vendor/libc-0.2.155/src/unix/bsd/freebsdlike/freebsd/freebsd15/mod.rs
-+++ vendor/libc-0.2.155/src/unix/bsd/freebsdlike/freebsd/freebsd15/mod.rs
-@@ -2,7 +2,7 @@
-
- pub type nlink_t = u64;
- pub type dev_t = u64;
--pub type ino_t = ::c_ulong;
-+pub type ino_t = u64;
- pub type shmatt_t = ::c_uint;
- pub type kpaddr_t = u64;
- pub type kssize_t = i64;
-
-
-From 8aca9c0126f3aa5a7dce1ad7fc016b4a0d6af70a Mon Sep 17 00:00:00 2001
-From: Alan Somers <asomers@gmail.com>
-Date: Mon, 23 Sep 2024 10:44:13 -0600
-Subject: [PATCH] Fix the definition of "struct stat" on 32-bit FreeBSD 12+
-
-The original definitions were never correct. But nobody noticed because
-we don't do CI on 32-bit FreeBSD. The problem is apparent now due to
- #3723 , which caused the nightly toolchain to switch to a FreeBSD 12
-ABI.
-
-Fixes https://github.com/rust-lang/rust/issues/130677
----
- .../{freebsd12/b64.rs => freebsd11/b32.rs} | 13 +++---
- .../bsd/freebsdlike/freebsd/freebsd11/mod.rs | 7 +--
- .../bsd/freebsdlike/freebsd/freebsd12/mod.rs | 43 +++++++++++++++----
- .../bsd/freebsdlike/freebsd/freebsd13/b64.rs | 34 ---------------
- .../bsd/freebsdlike/freebsd/freebsd13/mod.rs | 43 +++++++++++++++----
- .../bsd/freebsdlike/freebsd/freebsd14/b64.rs | 34 ---------------
- .../bsd/freebsdlike/freebsd/freebsd14/mod.rs | 43 +++++++++++++++----
- .../bsd/freebsdlike/freebsd/freebsd15/b64.rs | 34 ---------------
- .../bsd/freebsdlike/freebsd/freebsd15/mod.rs | 43 +++++++++++++++----
- src/unix/bsd/freebsdlike/freebsd/x86.rs | 25 -----------
- 10 files changed, 146 insertions(+), 173 deletions(-)
- rename src/unix/bsd/freebsdlike/freebsd/{freebsd12/b64.rs => freebsd11/b32.rs} (89%)
- delete mode 100644 src/unix/bsd/freebsdlike/freebsd/freebsd13/b64.rs
- delete mode 100644 src/unix/bsd/freebsdlike/freebsd/freebsd14/b64.rs
- delete mode 100644 src/unix/bsd/freebsdlike/freebsd/freebsd15/b64.rs
-
-diff --git a/src/unix/bsd/freebsdlike/freebsd/freebsd12/b64.rs b/src/unix/bsd/freebsdlike/freebsd/freebsd11/b32.rs
-similarity index 89%
-rename from src/unix/bsd/freebsdlike/freebsd/freebsd12/b64.rs
-rename to src/unix/bsd/freebsdlike/freebsd/freebsd11/b32.rs
-
---- vendor/libc-0.2.155/src/unix/bsd/freebsdlike/freebsd/freebsd11/b32.rs.orig 2024-10-24 17:21:07.154172000 +0200
-+++ vendor/libc-0.2.155/src/unix/bsd/freebsdlike/freebsd/freebsd11/b32.rs 2024-10-24 17:21:02.029962000 +0200
-@@ -0,0 +1,34 @@
-+#[repr(C)]
-+#[cfg_attr(feature = "extra_traits", derive(Debug, Eq, Hash, PartialEq))]
-+pub struct stat {
-+ pub st_dev: ::dev_t,
-+ pub st_ino: ::ino_t,
-+ pub st_nlink: ::nlink_t,
-+ pub st_mode: ::mode_t,
-+ st_padding0: i16,
-+ pub st_uid: ::uid_t,
-+ pub st_gid: ::gid_t,
-+ st_padding1: i32,
-+ pub st_rdev: ::dev_t,
-+ pub st_atime: ::time_t,
-+ pub st_atime_nsec: ::c_long,
-+ pub st_mtime: ::time_t,
-+ pub st_mtime_nsec: ::c_long,
-+ pub st_ctime: ::time_t,
-+ pub st_ctime_nsec: ::c_long,
-+ pub st_birthtime: ::time_t,
-+ pub st_birthtime_nsec: ::c_long,
-+ pub st_size: ::off_t,
-+ pub st_blocks: ::blkcnt_t,
-+ pub st_blksize: ::blksize_t,
-+ pub st_flags: ::fflags_t,
-+ pub st_gen: u64,
-+ pub st_spare: [u64; 10],
-+}
-+
-+impl ::Copy for ::stat {}
-+impl ::Clone for ::stat {
-+ fn clone(&self) -> ::stat {
-+ *self
-+ }
-+}
-
-
-index 80c6fa1684530..5c1156581fd61 100644
---- vendor/libc-0.2.155/src/unix/bsd/freebsdlike/freebsd/freebsd12/b64.rs
-+++ vendor/libc-0.2.155/src/unix/bsd/freebsdlike/freebsd/freebsd11/b32.rs
-@@ -3,12 +3,10 @@
- pub struct stat {
- pub st_dev: ::dev_t,
- pub st_ino: ::ino_t,
-- pub st_nlink: ::nlink_t,
- pub st_mode: ::mode_t,
-- st_padding0: i16,
-+ pub st_nlink: ::nlink_t,
- pub st_uid: ::uid_t,
- pub st_gid: ::gid_t,
-- st_padding1: i32,
- pub st_rdev: ::dev_t,
- pub st_atime: ::time_t,
- pub st_atime_nsec: ::c_long,
-@@ -16,14 +14,15 @@ pub struct stat {
- pub st_mtime_nsec: ::c_long,
- pub st_ctime: ::time_t,
- pub st_ctime_nsec: ::c_long,
-- pub st_birthtime: ::time_t,
-- pub st_birthtime_nsec: ::c_long,
- pub st_size: ::off_t,
- pub st_blocks: ::blkcnt_t,
- pub st_blksize: ::blksize_t,
- pub st_flags: ::fflags_t,
-- pub st_gen: u64,
-- pub st_spare: [u64; 10],
-+ pub st_gen: u32,
-+ pub st_lspare: i32,
-+ pub st_birthtime: ::time_t,
-+ pub st_birthtime_nsec: ::c_long,
-+ __unused: [u8; 8],
- }
-
- impl ::Copy for ::stat {}
-diff --git a/src/unix/bsd/freebsdlike/freebsd/freebsd11/mod.rs b/src/unix/bsd/freebsdlike/freebsd/freebsd11/mod.rs
-index 68a8364194607..e416ebf745841 100644
---- vendor/libc-0.2.155/src/unix/bsd/freebsdlike/freebsd/freebsd11/mod.rs
-+++ vendor/libc-0.2.155/src/unix/bsd/freebsdlike/freebsd/freebsd11/mod.rs
-@@ -479,10 +479,11 @@ extern "C" {
- }
-
- cfg_if! {
-- if #[cfg(any(target_arch = "x86_64",
-- target_arch = "aarch64",
-- target_arch = "riscv64"))] {
-+ if #[cfg(target_pointer_width = "64")] {
- mod b64;
- pub use self::b64::*;
-+ } else {
-+ mod b32;
-+ pub use self::b32::*;
- }
- }
-diff --git a/src/unix/bsd/freebsdlike/freebsd/freebsd12/mod.rs b/src/unix/bsd/freebsdlike/freebsd/freebsd12/mod.rs
-index 197400ffb4e28..c4431a6458e8f 100644
---- vendor/libc-0.2.155/src/unix/bsd/freebsdlike/freebsd/freebsd12/mod.rs
-+++ vendor/libc-0.2.155/src/unix/bsd/freebsdlike/freebsd/freebsd12/mod.rs
-@@ -218,6 +218,40 @@ s! {
- /// kthread flag.
- pub ki_tdflags: ::c_long,
- }
-+
-+ pub struct stat {
-+ pub st_dev: ::dev_t,
-+ pub st_ino: ::ino_t,
-+ pub st_nlink: ::nlink_t,
-+ pub st_mode: ::mode_t,
-+ st_padding0: i16,
-+ pub st_uid: ::uid_t,
-+ pub st_gid: ::gid_t,
-+ st_padding1: i32,
-+ pub st_rdev: ::dev_t,
-+ #[cfg(target_arch = "x86")]
-+ st_atim_ext: i32,
-+ pub st_atime: ::time_t,
-+ pub st_atime_nsec: ::c_long,
-+ #[cfg(target_arch = "x86")]
-+ st_mtim_ext: i32,
-+ pub st_mtime: ::time_t,
-+ pub st_mtime_nsec: ::c_long,
-+ #[cfg(target_arch = "x86")]
-+ st_ctim_ext: i32,
-+ pub st_ctime: ::time_t,
-+ pub st_ctime_nsec: ::c_long,
-+ #[cfg(target_arch = "x86")]
-+ st_btim_ext: i32,
-+ pub st_birthtime: ::time_t,
-+ pub st_birthtime_nsec: ::c_long,
-+ pub st_size: ::off_t,
-+ pub st_blocks: ::blkcnt_t,
-+ pub st_blksize: ::blksize_t,
-+ pub st_flags: ::fflags_t,
-+ pub st_gen: u64,
-+ pub st_spare: [u64; 10],
-+ }
- }
-
- s_no_extra_traits! {
-@@ -488,15 +522,6 @@ extern "C" {
- pub fn basename(path: *mut ::c_char) -> *mut ::c_char;
- }
-
--cfg_if! {
-- if #[cfg(any(target_arch = "x86_64",
-- target_arch = "aarch64",
-- target_arch = "riscv64"))] {
-- mod b64;
-- pub use self::b64::*;
-- }
--}
--
- cfg_if! {
- if #[cfg(target_arch = "x86_64")] {
- mod x86_64;
-diff --git a/src/unix/bsd/freebsdlike/freebsd/freebsd13/b64.rs b/src/unix/bsd/freebsdlike/freebsd/freebsd13/b64.rs
-deleted file mode 100644
-index 80c6fa1684530..0000000000000
---- vendor/libc-0.2.155/src/unix/bsd/freebsdlike/freebsd/freebsd13/b64.rs
-+++ /dev/null
-@@ -1,34 +0,0 @@
--#[repr(C)]
--#[cfg_attr(feature = "extra_traits", derive(Debug, Eq, Hash, PartialEq))]
--pub struct stat {
-- pub st_dev: ::dev_t,
-- pub st_ino: ::ino_t,
-- pub st_nlink: ::nlink_t,
-- pub st_mode: ::mode_t,
-- st_padding0: i16,
-- pub st_uid: ::uid_t,
-- pub st_gid: ::gid_t,
-- st_padding1: i32,
-- pub st_rdev: ::dev_t,
-- pub st_atime: ::time_t,
-- pub st_atime_nsec: ::c_long,
-- pub st_mtime: ::time_t,
-- pub st_mtime_nsec: ::c_long,
-- pub st_ctime: ::time_t,
-- pub st_ctime_nsec: ::c_long,
-- pub st_birthtime: ::time_t,
-- pub st_birthtime_nsec: ::c_long,
-- pub st_size: ::off_t,
-- pub st_blocks: ::blkcnt_t,
-- pub st_blksize: ::blksize_t,
-- pub st_flags: ::fflags_t,
-- pub st_gen: u64,
-- pub st_spare: [u64; 10],
--}
--
--impl ::Copy for ::stat {}
--impl ::Clone for ::stat {
-- fn clone(&self) -> ::stat {
-- *self
-- }
--}
-diff --git a/src/unix/bsd/freebsdlike/freebsd/freebsd13/mod.rs b/src/unix/bsd/freebsdlike/freebsd/freebsd13/mod.rs
-index d3a77d03c48d0..118404e8b089b 100644
---- vendor/libc-0.2.155/src/unix/bsd/freebsdlike/freebsd/freebsd13/mod.rs
-+++ vendor/libc-0.2.155/src/unix/bsd/freebsdlike/freebsd/freebsd13/mod.rs
-@@ -228,6 +228,40 @@ s! {
- /// kthread flag.
- pub ki_tdflags: ::c_long,
- }
-+
-+ pub struct stat {
-+ pub st_dev: ::dev_t,
-+ pub st_ino: ::ino_t,
-+ pub st_nlink: ::nlink_t,
-+ pub st_mode: ::mode_t,
-+ st_padding0: i16,
-+ pub st_uid: ::uid_t,
-+ pub st_gid: ::gid_t,
-+ st_padding1: i32,
-+ pub st_rdev: ::dev_t,
-+ #[cfg(target_arch = "x86")]
-+ st_atim_ext: i32,
-+ pub st_atime: ::time_t,
-+ pub st_atime_nsec: ::c_long,
-+ #[cfg(target_arch = "x86")]
-+ st_mtim_ext: i32,
-+ pub st_mtime: ::time_t,
-+ pub st_mtime_nsec: ::c_long,
-+ #[cfg(target_arch = "x86")]
-+ st_ctim_ext: i32,
-+ pub st_ctime: ::time_t,
-+ pub st_ctime_nsec: ::c_long,
-+ #[cfg(target_arch = "x86")]
-+ st_btim_ext: i32,
-+ pub st_birthtime: ::time_t,
-+ pub st_birthtime_nsec: ::c_long,
-+ pub st_size: ::off_t,
-+ pub st_blocks: ::blkcnt_t,
-+ pub st_blksize: ::blksize_t,
-+ pub st_flags: ::fflags_t,
-+ pub st_gen: u64,
-+ pub st_spare: [u64; 10],
-+ }
- }
-
- s_no_extra_traits! {
-@@ -529,15 +563,6 @@ extern "C" {
- pub fn kvm_kerndisp(kd: *mut ::kvm_t) -> ::kssize_t;
- }
-
--cfg_if! {
-- if #[cfg(any(target_arch = "x86_64",
-- target_arch = "aarch64",
-- target_arch = "riscv64"))] {
-- mod b64;
-- pub use self::b64::*;
-- }
--}
--
- cfg_if! {
- if #[cfg(target_arch = "x86_64")] {
- mod x86_64;
-diff --git a/src/unix/bsd/freebsdlike/freebsd/freebsd14/b64.rs b/src/unix/bsd/freebsdlike/freebsd/freebsd14/b64.rs
-deleted file mode 100644
-index 80c6fa1684530..0000000000000
---- vendor/libc-0.2.155/src/unix/bsd/freebsdlike/freebsd/freebsd14/b64.rs
-+++ /dev/null
-@@ -1,34 +0,0 @@
--#[repr(C)]
--#[cfg_attr(feature = "extra_traits", derive(Debug, Eq, Hash, PartialEq))]
--pub struct stat {
-- pub st_dev: ::dev_t,
-- pub st_ino: ::ino_t,
-- pub st_nlink: ::nlink_t,
-- pub st_mode: ::mode_t,
-- st_padding0: i16,
-- pub st_uid: ::uid_t,
-- pub st_gid: ::gid_t,
-- st_padding1: i32,
-- pub st_rdev: ::dev_t,
-- pub st_atime: ::time_t,
-- pub st_atime_nsec: ::c_long,
-- pub st_mtime: ::time_t,
-- pub st_mtime_nsec: ::c_long,
-- pub st_ctime: ::time_t,
-- pub st_ctime_nsec: ::c_long,
-- pub st_birthtime: ::time_t,
-- pub st_birthtime_nsec: ::c_long,
-- pub st_size: ::off_t,
-- pub st_blocks: ::blkcnt_t,
-- pub st_blksize: ::blksize_t,
-- pub st_flags: ::fflags_t,
-- pub st_gen: u64,
-- pub st_spare: [u64; 10],
--}
--
--impl ::Copy for ::stat {}
--impl ::Clone for ::stat {
-- fn clone(&self) -> ::stat {
-- *self
-- }
--}
-diff --git a/src/unix/bsd/freebsdlike/freebsd/freebsd14/mod.rs b/src/unix/bsd/freebsdlike/freebsd/freebsd14/mod.rs
-index 9d65317d29cb4..e624dd7201b0a 100644
---- vendor/libc-0.2.155/src/unix/bsd/freebsdlike/freebsd/freebsd14/mod.rs
-+++ vendor/libc-0.2.155/src/unix/bsd/freebsdlike/freebsd/freebsd14/mod.rs
-@@ -228,6 +228,40 @@ s! {
- /// kthread flag.
- pub ki_tdflags: ::c_long,
- }
-+
-+ pub struct stat {
-+ pub st_dev: ::dev_t,
-+ pub st_ino: ::ino_t,
-+ pub st_nlink: ::nlink_t,
-+ pub st_mode: ::mode_t,
-+ st_padding0: i16,
-+ pub st_uid: ::uid_t,
-+ pub st_gid: ::gid_t,
-+ st_padding1: i32,
-+ pub st_rdev: ::dev_t,
-+ #[cfg(target_arch = "x86")]
-+ st_atim_ext: i32,
-+ pub st_atime: ::time_t,
-+ pub st_atime_nsec: ::c_long,
-+ #[cfg(target_arch = "x86")]
-+ st_mtim_ext: i32,
-+ pub st_mtime: ::time_t,
-+ pub st_mtime_nsec: ::c_long,
-+ #[cfg(target_arch = "x86")]
-+ st_ctim_ext: i32,
-+ pub st_ctime: ::time_t,
-+ pub st_ctime_nsec: ::c_long,
-+ #[cfg(target_arch = "x86")]
-+ st_btim_ext: i32,
-+ pub st_birthtime: ::time_t,
-+ pub st_birthtime_nsec: ::c_long,
-+ pub st_size: ::off_t,
-+ pub st_blocks: ::blkcnt_t,
-+ pub st_blksize: ::blksize_t,
-+ pub st_flags: ::fflags_t,
-+ pub st_gen: u64,
-+ pub st_spare: [u64; 10],
-+ }
- }
-
- s_no_extra_traits! {
-@@ -529,15 +563,6 @@ extern "C" {
- pub fn kvm_kerndisp(kd: *mut ::kvm_t) -> ::kssize_t;
- }
-
--cfg_if! {
-- if #[cfg(any(target_arch = "x86_64",
-- target_arch = "aarch64",
-- target_arch = "riscv64"))] {
-- mod b64;
-- pub use self::b64::*;
-- }
--}
--
- cfg_if! {
- if #[cfg(target_arch = "x86_64")] {
- mod x86_64;
-diff --git a/src/unix/bsd/freebsdlike/freebsd/freebsd15/b64.rs b/src/unix/bsd/freebsdlike/freebsd/freebsd15/b64.rs
-deleted file mode 100644
-index 80c6fa1684530..0000000000000
---- vendor/libc-0.2.155/src/unix/bsd/freebsdlike/freebsd/freebsd15/b64.rs
-+++ /dev/null
-@@ -1,34 +0,0 @@
--#[repr(C)]
--#[cfg_attr(feature = "extra_traits", derive(Debug, Eq, Hash, PartialEq))]
--pub struct stat {
-- pub st_dev: ::dev_t,
-- pub st_ino: ::ino_t,
-- pub st_nlink: ::nlink_t,
-- pub st_mode: ::mode_t,
-- st_padding0: i16,
-- pub st_uid: ::uid_t,
-- pub st_gid: ::gid_t,
-- st_padding1: i32,
-- pub st_rdev: ::dev_t,
-- pub st_atime: ::time_t,
-- pub st_atime_nsec: ::c_long,
-- pub st_mtime: ::time_t,
-- pub st_mtime_nsec: ::c_long,
-- pub st_ctime: ::time_t,
-- pub st_ctime_nsec: ::c_long,
-- pub st_birthtime: ::time_t,
-- pub st_birthtime_nsec: ::c_long,
-- pub st_size: ::off_t,
-- pub st_blocks: ::blkcnt_t,
-- pub st_blksize: ::blksize_t,
-- pub st_flags: ::fflags_t,
-- pub st_gen: u64,
-- pub st_spare: [u64; 10],
--}
--
--impl ::Copy for ::stat {}
--impl ::Clone for ::stat {
-- fn clone(&self) -> ::stat {
-- *self
-- }
--}
-diff --git a/src/unix/bsd/freebsdlike/freebsd/freebsd15/mod.rs b/src/unix/bsd/freebsdlike/freebsd/freebsd15/mod.rs
-index f76208400f324..a299af7d5d53e 100644
---- vendor/libc-0.2.155/src/unix/bsd/freebsdlike/freebsd/freebsd15/mod.rs
-+++ vendor/libc-0.2.155/src/unix/bsd/freebsdlike/freebsd/freebsd15/mod.rs
-@@ -228,6 +228,40 @@ s! {
- /// kthread flag.
- pub ki_tdflags: ::c_long,
- }
-+
-+ pub struct stat {
-+ pub st_dev: ::dev_t,
-+ pub st_ino: ::ino_t,
-+ pub st_nlink: ::nlink_t,
-+ pub st_mode: ::mode_t,
-+ st_padding0: i16,
-+ pub st_uid: ::uid_t,
-+ pub st_gid: ::gid_t,
-+ st_padding1: i32,
-+ pub st_rdev: ::dev_t,
-+ #[cfg(target_arch = "x86")]
-+ st_atim_ext: i32,
-+ pub st_atime: ::time_t,
-+ pub st_atime_nsec: ::c_long,
-+ #[cfg(target_arch = "x86")]
-+ st_mtim_ext: i32,
-+ pub st_mtime: ::time_t,
-+ pub st_mtime_nsec: ::c_long,
-+ #[cfg(target_arch = "x86")]
-+ st_ctim_ext: i32,
-+ pub st_ctime: ::time_t,
-+ pub st_ctime_nsec: ::c_long,
-+ #[cfg(target_arch = "x86")]
-+ st_btim_ext: i32,
-+ pub st_birthtime: ::time_t,
-+ pub st_birthtime_nsec: ::c_long,
-+ pub st_size: ::off_t,
-+ pub st_blocks: ::blkcnt_t,
-+ pub st_blksize: ::blksize_t,
-+ pub st_flags: ::fflags_t,
-+ pub st_gen: u64,
-+ pub st_spare: [u64; 10],
-+ }
- }
-
- s_no_extra_traits! {
-@@ -529,15 +563,6 @@ extern "C" {
- pub fn kvm_kerndisp(kd: *mut ::kvm_t) -> ::kssize_t;
- }
-
--cfg_if! {
-- if #[cfg(any(target_arch = "x86_64",
-- target_arch = "aarch64",
-- target_arch = "riscv64"))] {
-- mod b64;
-- pub use self::b64::*;
-- }
--}
--
- cfg_if! {
- if #[cfg(target_arch = "x86_64")] {
- mod x86_64;
-diff --git a/src/unix/bsd/freebsdlike/freebsd/x86.rs b/src/unix/bsd/freebsdlike/freebsd/x86.rs
-index c3c576ed66681..31a660e7d0a22 100644
---- vendor/libc-0.2.155/src/unix/bsd/freebsdlike/freebsd/x86.rs
-+++ vendor/libc-0.2.155/src/unix/bsd/freebsdlike/freebsd/x86.rs
-@@ -42,31 +42,6 @@ s_no_extra_traits! {
- }
-
- s! {
-- pub struct stat {
-- pub st_dev: ::dev_t,
-- pub st_ino: ::ino_t,
-- pub st_mode: ::mode_t,
-- pub st_nlink: ::nlink_t,
-- pub st_uid: ::uid_t,
-- pub st_gid: ::gid_t,
-- pub st_rdev: ::dev_t,
-- pub st_atime: ::time_t,
-- pub st_atime_nsec: ::c_long,
-- pub st_mtime: ::time_t,
-- pub st_mtime_nsec: ::c_long,
-- pub st_ctime: ::time_t,
-- pub st_ctime_nsec: ::c_long,
-- pub st_size: ::off_t,
-- pub st_blocks: ::blkcnt_t,
-- pub st_blksize: ::blksize_t,
-- pub st_flags: ::fflags_t,
-- pub st_gen: u32,
-- pub st_lspare: i32,
-- pub st_birthtime: ::time_t,
-- pub st_birthtime_nsec: ::c_long,
-- __unused: [u8; 8],
-- }
--
- pub struct ucontext_t {
- pub uc_sigmask: ::sigset_t,
- pub uc_mcontext: ::mcontext_t,
-
-
-From f381e010b2439579c9f548ef86fb06409c2c55d2 Mon Sep 17 00:00:00 2001
-From: Alan Somers <asomers@gmail.com>
-Date: Mon, 23 Sep 2024 16:03:48 -0600
-Subject: [PATCH] fixup: fix build on powerpc, powerpc64, and arm
-
----
- src/unix/bsd/freebsdlike/freebsd/arm.rs | 30 -------------------
- src/unix/bsd/freebsdlike/freebsd/powerpc.rs | 26 ----------------
- src/unix/bsd/freebsdlike/freebsd/powerpc64.rs | 26 ----------------
- 3 files changed, 82 deletions(-)
-
-diff --git a/src/unix/bsd/freebsdlike/freebsd/arm.rs b/src/unix/bsd/freebsdlike/freebsd/arm.rs
-index 300b3dd45ca9d..8ff500c65981c 100644
---- vendor/libc-0.2.155/src/unix/bsd/freebsdlike/freebsd/arm.rs
-+++ vendor/libc-0.2.155/src/unix/bsd/freebsdlike/freebsd/arm.rs
-@@ -6,36 +6,6 @@ pub type time_t = i64;
- pub type suseconds_t = i32;
- pub type register_t = i32;
-
--s! {
-- pub struct stat {
-- pub st_dev: ::dev_t,
-- pub st_ino: ::ino_t,
-- pub st_mode: ::mode_t,
-- pub st_nlink: ::nlink_t,
-- pub st_uid: ::uid_t,
-- pub st_gid: ::gid_t,
-- pub st_rdev: ::dev_t,
-- pub st_atime: ::time_t,
-- pub st_atime_nsec: ::c_long,
-- pub st_atime_pad: ::c_long,
-- pub st_mtime: ::time_t,
-- pub st_mtime_nsec: ::c_long,
-- pub st_mtime_pad: ::c_long,
-- pub st_ctime: ::time_t,
-- pub st_ctime_nsec: ::c_long,
-- pub st_ctime_pad: ::c_long,
-- pub st_size: ::off_t,
-- pub st_blocks: ::blkcnt_t,
-- pub st_blksize: ::blksize_t,
-- pub st_flags: ::fflags_t,
-- pub st_gen: u32,
-- pub st_lspare: i32,
-- pub st_birthtime: ::time_t,
-- pub st_birthtime_nsec: ::c_long,
-- pub st_birthtime_pad: ::c_long,
-- }
--}
--
- // should be pub(crate), but that requires Rust 1.18.0
- cfg_if! {
- if #[cfg(libc_const_size_of)] {
-diff --git a/src/unix/bsd/freebsdlike/freebsd/powerpc.rs b/src/unix/bsd/freebsdlike/freebsd/powerpc.rs
-index a0120c337e0ad..f84062ba34b93 100644
---- vendor/libc-0.2.155/src/unix/bsd/freebsdlike/freebsd/powerpc.rs
-+++ vendor/libc-0.2.155/src/unix/bsd/freebsdlike/freebsd/powerpc.rs
-@@ -6,32 +6,6 @@ pub type time_t = i64;
- pub type suseconds_t = i32;
- pub type register_t = i32;
-
--s! {
-- pub struct stat {
-- pub st_dev: ::dev_t,
-- pub st_ino: ::ino_t,
-- pub st_mode: ::mode_t,
-- pub st_nlink: ::nlink_t,
-- pub st_uid: ::uid_t,
-- pub st_gid: ::gid_t,
-- pub st_rdev: ::dev_t,
-- pub st_atime: ::time_t,
-- pub st_atime_nsec: ::c_long,
-- pub st_mtime: ::time_t,
-- pub st_mtime_nsec: ::c_long,
-- pub st_ctime: ::time_t,
-- pub st_ctime_nsec: ::c_long,
-- pub st_size: ::off_t,
-- pub st_blocks: ::blkcnt_t,
-- pub st_blksize: ::blksize_t,
-- pub st_flags: ::fflags_t,
-- pub st_gen: u32,
-- pub st_lspare: i32,
-- pub st_birthtime: ::time_t,
-- pub st_birthtime_nsec: ::c_long,
-- }
--}
--
- // should be pub(crate), but that requires Rust 1.18.0
- cfg_if! {
- if #[cfg(libc_const_size_of)] {
-diff --git a/src/unix/bsd/freebsdlike/freebsd/powerpc64.rs b/src/unix/bsd/freebsdlike/freebsd/powerpc64.rs
-index 7f5b9752264e3..69cf4c5fc88c7 100644
---- vendor/libc-0.2.155/src/unix/bsd/freebsdlike/freebsd/powerpc64.rs
-+++ vendor/libc-0.2.155/src/unix/bsd/freebsdlike/freebsd/powerpc64.rs
-@@ -6,32 +6,6 @@ pub type time_t = i64;
- pub type suseconds_t = i64;
- pub type register_t = i64;
-
--s! {
-- pub struct stat {
-- pub st_dev: ::dev_t,
-- pub st_ino: ::ino_t,
-- pub st_mode: ::mode_t,
-- pub st_nlink: ::nlink_t,
-- pub st_uid: ::uid_t,
-- pub st_gid: ::gid_t,
-- pub st_rdev: ::dev_t,
-- pub st_atime: ::time_t,
-- pub st_atime_nsec: ::c_long,
-- pub st_mtime: ::time_t,
-- pub st_mtime_nsec: ::c_long,
-- pub st_ctime: ::time_t,
-- pub st_ctime_nsec: ::c_long,
-- pub st_size: ::off_t,
-- pub st_blocks: ::blkcnt_t,
-- pub st_blksize: ::blksize_t,
-- pub st_flags: ::fflags_t,
-- pub st_gen: u32,
-- pub st_lspare: i32,
-- pub st_birthtime: ::time_t,
-- pub st_birthtime_nsec: ::c_long,
-- }
--}
--
- // should be pub(crate), but that requires Rust 1.18.0
- cfg_if! {
- if #[cfg(libc_const_size_of)] {
diff --git a/lang/rust188/files/patch-vendor_openssl_crypto_threads__pthread.c b/lang/rust188/files/patch-vendor_openssl_crypto_threads__pthread.c
deleted file mode 100644
index 87c398a91538..000000000000
--- a/lang/rust188/files/patch-vendor_openssl_crypto_threads__pthread.c
+++ /dev/null
@@ -1,27 +0,0 @@
-/usr/ports/security/openssl34/files/patch-crypto_threads__pthread.c
-+ fix dup IMPL_fallback_atomic_exchange_n (this code was removed in
-https://github.com/openssl/openssl/commit/65787e2dc219685c30539c6f60eb6b64b890bf6f)
-
---- vendor/openssl-src-300.4.2+3.4.1/openssl/crypto/threads_pthread.c.orig 2025-05-09 22:37:37.000000000 +0200
-+++ vendor/openssl-src-300.4.2+3.4.1/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)
-@@ -210,8 +214,7 @@ IMPL_fallback_atomic_exchange_n(prcu_cb_item)
- pthread_mutex_unlock(&atomic_sim_lock); \
- return ret; \
- }
--
--IMPL_fallback_atomic_exchange_n(uint64_t)
-+IMPL_fallback_atomic_compare_exchange_n(uint64_t)
-
- # define ATOMIC_COMPARE_EXCHANGE_N(t, p, e, d, s, f) fallback_atomic_compare_exchange_n_##t(p, e, d, s, f)
-
diff --git a/lang/rust188/files/riscv64/patch-vendor_rustc__ap__rustc__target_src_spec_riscv64gc__unknown__freebsd.rs b/lang/rust188/files/riscv64/patch-vendor_rustc__ap__rustc__target_src_spec_riscv64gc__unknown__freebsd.rs
deleted file mode 100644
index 5faf5e2aacf8..000000000000
--- a/lang/rust188/files/riscv64/patch-vendor_rustc__ap__rustc__target_src_spec_riscv64gc__unknown__freebsd.rs
+++ /dev/null
@@ -1,21 +0,0 @@
---- vendor/rustc-ap-rustc_target/src/spec/riscv64gc_unknown_freebsd.rs.orig 2021-11-04 11:22:10 UTC
-+++ vendor/rustc-ap-rustc_target/src/spec/riscv64gc_unknown_freebsd.rs
-@@ -0,0 +1,18 @@
-+use crate::spec::{CodeModel, Target, TargetOptions};
-+
-+pub fn target() -> Target {
-+ Target {
-+ llvm_target: "riscv64-unknown-freebsd".to_string(),
-+ pointer_width: 64,
-+ data_layout: "e-m:e-p:64:64-i64:64-i128:128-n64-S128".to_string(),
-+ arch: "riscv64".to_string(),
-+ options: TargetOptions {
-+ code_model: Some(CodeModel::Medium),
-+ cpu: "generic-rv64".to_string(),
-+ features: "+m,+a,+f,+d,+c".to_string(),
-+ llvm_abiname: "lp64d".to_string(),
-+ max_atomic_width: Some(64),
-+ ..super::freebsd_base::opts()
-+ },
-+ }
-+}
diff --git a/lang/rust188/pkg-descr b/lang/rust188/pkg-descr
deleted file mode 100644
index 828174df19f7..000000000000
--- a/lang/rust188/pkg-descr
+++ /dev/null
@@ -1,12 +0,0 @@
-Rust is an open-source systems programming language that runs blazingly
-fast, prevents almost all crashes, and eliminates data races.
-Some of its features:
-
- - Algebraic data types, type inference
- - Pattern matching and closures
- - Concurrency without data races
- - Guaranteed memory safety
- - Optional garbage collection
- - Zero-cost abstractions
- - Minimal runtime
- - Efficient C bindings
diff --git a/lang/rust188/update.sh b/lang/rust188/update.sh
deleted file mode 100644
index f169891c53d7..000000000000
--- a/lang/rust188/update.sh
+++ /dev/null
@@ -1,35 +0,0 @@
-#!/bin/sh
-# Requires: pkg install portfmt yq
-# Run in lang/rust
-set -eu
-
-fetch -qo /tmp/channel-rust-stable.toml https://dev-static.rust-lang.org/dist/channel-rust-stable.toml
-version=$(</tmp/channel-rust-stable.toml tomlq -r '.pkg.rustc.version | split(" ")[0]')
-new_commit=$(</tmp/channel-rust-stable.toml tomlq -r '.pkg.rustc.git_commit_hash')
-rm /tmp/channel-rust-stable.toml
-
-fetch -qo /tmp/stage0 https://raw.githubusercontent.com/rust-lang/rust/${new_commit}/src/stage0
-BOOTSTRAPS_DATE=$(awk -F "=" /^compiler_date/'{print $2}' /tmp/stage0)
-RUST_BOOTSTRAP_VERSION=$(awk -F "=" /^compiler_version/'{print $2}' /tmp/stage0)
-echo "BOOTSTRAPS_DATE=${BOOTSTRAPS_DATE}" | portedit merge -i .
-echo "RUST_BOOTSTRAP_VERSION=${RUST_BOOTSTRAP_VERSION}" | portedit merge -i .
-
-cat <<EOF | sed -i '' -E -f - ../../Mk/Uses/cargo.mk ../../Mk/bsd.gecko.mk
-1,/\\$\\{RUST_DEFAULT\\}>=/ {
- s,(\\$\\{RUST_DEFAULT\\}>=).*(:lang/\\$\\{RUST_DEFAULT\\}),\\1${version}\\2,
-}
-EOF
-
-portedit set-version -i "${version}" .
-portedit set-version -i "${version}" ../rust-bootstrap
-
-make makesum
-make -C ../rust-bootstrap makesum
-
-echo "lang/rust: Update to ${version}
-
-https://blog.rust-lang.org/FIXME/Rust-${version}.html
-
-PR: FIXME
-Exp-run by: antoine
-Differential Revision: FIXME" >rust.msg