pkgsrc-Changes archive

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

CVS commit: pkgsrc/lang/rust



Module Name:    pkgsrc
Committed By:   he
Date:           Sun Oct 13 19:04:40 UTC 2024

Modified Files:
        pkgsrc/lang/rust: Makefile distinfo do-cross.mk options.mk
        pkgsrc/lang/rust/patches:
            patch-library_backtrace_src_symbolize_gimli.rs
            patch-vendor_cc-1.0.73_src_lib.rs
Added Files:
        pkgsrc/lang/rust/patches:
            patch-compiler_rustc__target_src_spec_targets_mipsel__unknown__netbsd.rs
            patch-tools_rust-analyzer_lib_line-index-src_lib.rs
            patch-vendor_aho-corasick-1.1.2_src_packed_teddy_builder.rs
            patch-vendor_aho-corasick-1.1.2_src_packed_vector.rs
            patch-vendor_bytecount-0.6.8_src_lib.rs
            patch-vendor_libc-0.2.153_src_unix_solarish_mod.rs
            patch-vendor_libc-0.2.154_src_unix_solarish_mod.rs
            patch-vendor_libc-0.2.155_src_unix_solarish_mod.rs
            patch-vendor_memchr-2.7.1_src_arch_aarch64_memchr.rs
            patch-vendor_memchr-2.7.1_src_arch_aarch64_mod.rs
            patch-vendor_memchr-2.7.1_src_memchr.rs
            patch-vendor_memchr-2.7.1_src_memmem_searcher.rs
            patch-vendor_memchr-2.7.1_src_vector.rs
            patch-vendor_memchr-2.7.2_src_arch_aarch64_memchr.rs
            patch-vendor_memchr-2.7.2_src_arch_aarch64_mod.rs
            patch-vendor_memchr-2.7.2_src_memchr.rs
            patch-vendor_memchr-2.7.2_src_memmem_searcher.rs
            patch-vendor_memchr-2.7.2_src_vector.rs
            patch-vendor_openssl-src-111.28.2+1.1.1w_openssl_Configurations_10-main.conf
            patch-vendor_openssl-src-111.28.2+1.1.1w_src_lib.rs
            patch-vendor_zerocopy-0.7.32_src_lib.rs
            patch-vendor_zerocopy-0.7.34_src_lib.rs
Removed Files:
        pkgsrc/lang/rust/patches:
            patch-library_std_src_sys_pal_unix_thread__parking_netbsd.rs
            patch-vendor_libc-0.2.151_src_unix_solarish_mod.rs
            patch-vendor_openssl-src-111.28.1+1.1.1w_openssl_Configurations_10-main.conf
            patch-vendor_openssl-src-111.28.1+1.1.1w_src_lib.rs

Log Message:
lang/rust: update to version 1.80.1.

This is based on the pkgsrc-wip rust180 package, retaining
the main pkgsrc changes as best as I could.

Pkgsrc changes:
 * Adapt checksums and patches.
 * Make this work again on big-endian aarch64 (at least on NetBSD).
 * Make the choice of GCC = 12 work for sparc64 by testing options
   after options.mk is included (which is required...).  Makes this
   work on NetBSD/sparc64 10.0 again.

Upstream chnages:

Version 1.80.1 (2024-08-08)
===========================

- [Fix miscompilation in the jump threading MIR optimization when
  comparing floats]
  (https://github.com/rust-lang/rust/pull/128271)
- [Revert changes to the `dead_code` lint from 1.80.0]
  (https://github.com/rust-lang/rust/pull/128618)

Version 1.80.0 (2024-07-25)
==========================

Language
--------
- [Document maximum allocation size]
  (https://github.com/rust-lang/rust/pull/116675/)
- [Allow zero-byte offsets and ZST read/writes on arbitrary pointers]
  (https://github.com/rust-lang/rust/pull/117329/)
- [Support C23's variadics without a named parameter]
  (https://github.com/rust-lang/rust/pull/124048/)
- [Stabilize `exclusive_range_pattern` feature]
  (https://github.com/rust-lang/rust/pull/124459/)
- [Guarantee layout and ABI of `Result` in some scenarios]
  (https://github.com/rust-lang/rust/pull/124870)

Compiler
--------
- [Update cc crate to v1.0.97 allowing additional spectre mitigations
  on MSVC targets]
  (https://github.com/rust-lang/rust/pull/124892/)
- [Allow field reordering on types marked `repr(packed(1))`]
  (https://github.com/rust-lang/rust/pull/125360/)
- [Add a lint against never type fallback affecting unsafe code]
  (https://github.com/rust-lang/rust/pull/123939/)
- [Disallow cast with trailing braced macro in let-else]
  (https://github.com/rust-lang/rust/pull/125049/)
- [Expand `for_loops_over_fallibles` lint to lint on fallibles
  behind references.]
  (https://github.com/rust-lang/rust/pull/125156/)
- [self-contained linker: retry linking without `-fuse-ld=lld` on
  CCs that don't support it]
  (https://github.com/rust-lang/rust/pull/125417/)
- [Do not parse CVarArgs (`...`) as a type in trait bounds]
  (https://github.com/rust-lang/rust/pull/125863/)
- Improvements to LLDB formatting [#124458]
  (https://github.com/rust-lang/rust/pull/124458) [#124500]
  (https://github.com/rust-lang/rust/pull/124500)
- [For the wasm32-wasip2 target default to PIC and do not use `-fuse-ld=lld`]
  (https://github.com/rust-lang/rust/pull/124858/)
- [Add x86_64-unknown-linux-none as a tier 3 target]
  (https://github.com/rust-lang/rust/pull/125023/)
- [Lint on `foo.into_iter()` resolving to `&Box<[T]>: IntoIterator`]
  (https://github.com/rust-lang/rust/pull/124097/)

Libraries
---------
- [Add `size_of` and `size_of_val` and `align_of` and `align_of_val`
  to the prelude]
  (https://github.com/rust-lang/rust/pull/123168/)
- [Abort a process when FD ownership is violated]
  (https://github.com/rust-lang/rust/pull/124210/)
- [io::Write::write_fmt: panic if the formatter fails when the
  stream does not fail]
  (https://github.com/rust-lang/rust/pull/125012/)
- [Panic if `PathBuf::set_extension` would add a path separator]
  (https://github.com/rust-lang/rust/pull/125070/)
- [Add assert_unsafe_precondition to unchecked_{add,sub,neg,mul,shl,shr}
  methods] (https://github.com/rust-lang/rust/pull/121571/)
- [Update `c_char` on AIX to use the correct type]
  (https://github.com/rust-lang/rust/pull/122986/)
- [`offset_of!` no longer returns a temporary]
  (https://github.com/rust-lang/rust/pull/124484/)
- [Handle sigma in `str.to_lowercase` correctly]
  (https://github.com/rust-lang/rust/pull/124773/)
- [Raise `DEFAULT_MIN_STACK_SIZE` to at least 64KiB]
  (https://github.com/rust-lang/rust/pull/126059/)

Stabilized APIs
---------------
- [`impl Default for Rc<CStr>`]
  (https://doc.rust-lang.org/beta/alloc/rc/struct.Rc.html#impl-Default-for-Rc%3CCStr%3E)
- [`impl Default for Rc<str>`]
  (https://doc.rust-lang.org/beta/alloc/rc/struct.Rc.html#impl-Default-for-Rc%3Cstr%3E)
- [`impl Default for Rc<[T]>`]
  (https://doc.rust-lang.org/beta/alloc/rc/struct.Rc.html#impl-Default-for-Rc%3C%5BT%5D%3E)
- [`impl Default for Arc<str>`]
  (https://doc.rust-lang.org/beta/alloc/sync/struct.Arc.html#impl-Default-for-Arc%3Cstr%3E)
- [`impl Default for Arc<CStr>`]
  (https://doc.rust-lang.org/beta/alloc/sync/struct.Arc.html#impl-Default-for-Arc%3CCStr%3E)
- [`impl Default for Arc<[T]>`]
  (https://doc.rust-lang.org/beta/alloc/sync/struct.Arc.html#impl-Default-for-Arc%3C%5BT%5D%3E)
- [`impl IntoIterator for Box<[T]>`]
  (https://doc.rust-lang.org/beta/alloc/boxed/struct.Box.html#impl-IntoIterator-for-Box%3C%5BI%5D,+A%3E)
- [`impl FromIterator<String> for Box<str>`]
  (https://doc.rust-lang.org/beta/alloc/boxed/struct.Box.html#impl-FromIterator%3CString%3E-for-Box%3Cstr%3E)
- [`impl FromIterator<char> for Box<str>`]
  (https://doc.rust-lang.org/beta/alloc/boxed/struct.Box.html#impl-FromIterator%3Cchar%3E-for-Box%3Cstr%3E)
- [`LazyCell`]
  (https://doc.rust-lang.org/beta/core/cell/struct.LazyCell.html)
- [`LazyLock`]
  (https://doc.rust-lang.org/beta/std/sync/struct.LazyLock.html)
- [`Duration::div_duration_f32`]
  (https://doc.rust-lang.org/beta/std/time/struct.Duration.html#method.div_duration_f32)
- [`Duration::div_duration_f64`]
  (https://doc.rust-lang.org/beta/std/time/struct.Duration.html#method.div_duration_f64)
- [`Option::take_if`]
  (https://doc.rust-lang.org/beta/std/option/enum.Option.html#method.take_if)
- [`Seek::seek_relative`]
  (https://doc.rust-lang.org/beta/std/io/trait.Seek.html#method.seek_relative)
- [`BinaryHeap::as_slice`]
  (https://doc.rust-lang.org/beta/std/collections/struct.BinaryHeap.html#method.as_slice)
- [`NonNull::offset`]
  (https://doc.rust-lang.org/beta/std/ptr/struct.NonNull.html#method.offset)
- [`NonNull::byte_offset`]
  (https://doc.rust-lang.org/beta/std/ptr/struct.NonNull.html#method.byte_offset)
- [`NonNull::add`]
  (https://doc.rust-lang.org/beta/std/ptr/struct.NonNull.html#method.add)
- [`NonNull::byte_add`]
  (https://doc.rust-lang.org/beta/std/ptr/struct.NonNull.html#method.byte_add)
- [`NonNull::sub`]
  (https://doc.rust-lang.org/beta/std/ptr/struct.NonNull.html#method.sub)
- [`NonNull::byte_sub`]
  (https://doc.rust-lang.org/beta/std/ptr/struct.NonNull.html#method.byte_sub)
- [`NonNull::offset_from`]
  (https://doc.rust-lang.org/beta/std/ptr/struct.NonNull.html#method.offset_from)
- [`NonNull::byte_offset_from`]
  (https://doc.rust-lang.org/beta/std/ptr/struct.NonNull.html#method.byte_offset_from)
- [`NonNull::read`]
  (https://doc.rust-lang.org/beta/std/ptr/struct.NonNull.html#method.read)
- [`NonNull::read_volatile`]
  (https://doc.rust-lang.org/beta/std/ptr/struct.NonNull.html#method.read_volatile)
- [`NonNull::read_unaligned`]
  (https://doc.rust-lang.org/beta/std/ptr/struct.NonNull.html#method.read_unaligned)
- [`NonNull::write`]
  (https://doc.rust-lang.org/beta/std/ptr/struct.NonNull.html#method.write)
- [`NonNull::write_volatile`]
  (https://doc.rust-lang.org/beta/std/ptr/struct.NonNull.html#method.write_volatile)
- [`NonNull::write_unaligned`]
  (https://doc.rust-lang.org/beta/std/ptr/struct.NonNull.html#method.write_unaligned)
- [`NonNull::write_bytes`]
  (https://doc.rust-lang.org/beta/std/ptr/struct.NonNull.html#method.write_bytes)
- [`NonNull::copy_to`]
  (https://doc.rust-lang.org/beta/std/ptr/struct.NonNull.html#method.copy_to)
- [`NonNull::copy_to_nonoverlapping`]
  (https://doc.rust-lang.org/beta/std/ptr/struct.NonNull.html#method.copy_to_nonoverlapping)
- [`NonNull::copy_from`]
  (https://doc.rust-lang.org/beta/std/ptr/struct.NonNull.html#method.copy_from)
- [`NonNull::copy_from_nonoverlapping`]
  (https://doc.rust-lang.org/beta/std/ptr/struct.NonNull.html#method.copy_from_nonoverlapping)
- [`NonNull::replace`]
  (https://doc.rust-lang.org/beta/std/ptr/struct.NonNull.html#method.replace)
- [`NonNull::swap`]
  (https://doc.rust-lang.org/beta/std/ptr/struct.NonNull.html#method.swap)
- [`NonNull::drop_in_place`]
  (https://doc.rust-lang.org/beta/std/ptr/struct.NonNull.html#method.drop_in_place)
- [`NonNull::align_offset`]
  (https://doc.rust-lang.org/beta/std/ptr/struct.NonNull.html#method.align_offset)
- [`<[T]>::split_at_checked`]
  (https://doc.rust-lang.org/beta/std/primitive.slice.html#method.split_at_checked)
- [`<[T]>::split_at_mut_checked`]
  (https://doc.rust-lang.org/beta/std/primitive.slice.html#method.split_at_mut_checked)
- [`str::split_at_checked`]
  (https://doc.rust-lang.org/beta/std/primitive.str.html#method.split_at_checked)
- [`str::split_at_mut_checked`]
  (https://doc.rust-lang.org/beta/std/primitive.str.html#method.split_at_mut_checked)
- [`str::trim_ascii`]
  (https://doc.rust-lang.org/beta/std/primitive.str.html#method.trim_ascii)
- [`str::trim_ascii_start`]
  (https://doc.rust-lang.org/beta/std/primitive.str.html#method.trim_ascii_start)
- [`str::trim_ascii_end`]
  (https://doc.rust-lang.org/beta/std/primitive.str.html#method.trim_ascii_end)
- [`<[u8]>::trim_ascii`]
  (https://doc.rust-lang.org/beta/core/primitive.slice.html#method.trim_ascii)
- [`<[u8]>::trim_ascii_start`]
  (https://doc.rust-lang.org/beta/core/primitive.slice.html#method.trim_ascii_start)
- [`<[u8]>::trim_ascii_end`]
  (https://doc.rust-lang.org/beta/core/primitive.slice.html#method.trim_ascii_end)
- [`Ipv4Addr::BITS`]
  (https://doc.rust-lang.org/beta/core/net/struct.Ipv4Addr.html#associatedconstant.BITS)
- [`Ipv4Addr::to_bits`]
  (https://doc.rust-lang.org/beta/core/net/struct.Ipv4Addr.html#method.to_bits)
- [`Ipv4Addr::from_bits`]
  (https://doc.rust-lang.org/beta/core/net/struct.Ipv4Addr.html#method.from_bits)
- [`Ipv6Addr::BITS`]
  (https://doc.rust-lang.org/beta/core/net/struct.Ipv6Addr.html#associatedconstant.BITS)
- [`Ipv6Addr::to_bits`]
  (https://doc.rust-lang.org/beta/core/net/struct.Ipv6Addr.html#method.to_bits)
- [`Ipv6Addr::from_bits`]
  (https://doc.rust-lang.org/beta/core/net/struct.Ipv6Addr.html#method.from_bits)
- [`Vec::<[T; N]>::into_flattened`]
  (https://doc.rust-lang.org/beta/alloc/vec/struct.Vec.html#method.into_flattened)
- [`<[[T; N]]>::as_flattened`]
  (https://doc.rust-lang.org/beta/core/primitive.slice.html#method.as_flattened)
- [`<[[T; N]]>::as_flattened_mut`]
  (https://doc.rust-lang.org/beta/core/primitive.slice.html#method.as_flattened_mut)

These APIs are now stable in const contexts:

- [`<[T]>::last_chunk`]
  (https://doc.rust-lang.org/beta/core/primitive.slice.html#method.last_chunk)
- [`BinaryHeap::new`]
  (https://doc.rust-lang.org/beta/std/collections/struct.BinaryHeap.html#method.new)

Cargo
-----

- [Stabilize `-Zcheck-cfg` as always enabled]
  (https://github.com/rust-lang/cargo/pull/13571/)
- [Warn, rather than fail publish, if a target is excluded]
  (https://github.com/rust-lang/cargo/pull/13713/)
- [Add special `check-cfg` lint config for the `unexpected_cfgs` lint]
  (https://github.com/rust-lang/cargo/pull/13913/)
- [Stabilize `cargo update --precise <yanked>`]
  (https://github.com/rust-lang/cargo/pull/13974/)
- [Don't change file permissions on `Cargo.toml` when using `cargo add`]
  (https://github.com/rust-lang/cargo/pull/13898/)
- [Support using `cargo fix` on IPv6-only networks]
  (https://github.com/rust-lang/cargo/pull/13907/)

Rustdoc
-----

- [Allow searching for references]
  (https://github.com/rust-lang/rust/pull/124148/)
- [Stabilize `custom_code_classes_in_docs` feature]
  (https://github.com/rust-lang/rust/pull/124577/)
- [fix: In cross-crate scenarios show enum variants on type aliases of enums]
  (https://github.com/rust-lang/rust/pull/125300/)

Compatibility Notes
-------------------

- [rustfmt estimates line lengths differently when using non-ascii characters]
  (https://github.com/rust-lang/rustfmt/issues/6203)
- [Type aliases are now handled correctly in orphan check]
  (https://github.com/rust-lang/rust/pull/117164/)
- [Allow instructing rustdoc to read from stdin via `-`]
  (https://github.com/rust-lang/rust/pull/124611/)
- [`std::env::{set_var, remove_var}` can no longer be converted to
  safe function pointers and no longer implement the `Fn` family of
  traits]
  (https://github.com/rust-lang/rust/pull/124636)
- [Warn (or error) when `Self` constructor from outer item is
  referenced in inner nested item]
  (https://github.com/rust-lang/rust/pull/124187/)
- [Turn `indirect_structural_match` and `pointer_structural_match`
  lints into hard errors]
  (https://github.com/rust-lang/rust/pull/124661/)
- [Make `where_clause_object_safety` lint a regular object safety violation]
  (https://github.com/rust-lang/rust/pull/125380/)
- [Turn `proc_macro_back_compat` lint into a hard error.]
  (https://github.com/rust-lang/rust/pull/125596/)
- [Detect unused structs even when implementing private traits]
  (https://github.com/rust-lang/rust/pull/122382/)
- [`std::sync::ReentrantLockGuard<T>` is no longer `Sync` if `T: !Sync`]
  (https://github.com/rust-lang/rust/pull/125527) which means
  [`std::io::StdoutLock` and `std::io::StderrLock` are no longer
  Sync] (https://github.com/rust-lang/rust/issues/127340)

Internal Changes
----------------

These changes do not affect any public interfaces of Rust, but they represent
significant improvements to the performance or internals of rustc and related
tools.

- Misc improvements to size of generated html by rustdoc e.g. [#124738]
  (https://github.com/rust-lang/rust/pull/124738/) and [#123734]
  (https://github.com/rust-lang/rust/pull/123734/)
- [MSVC targets no longer depend on libc]
  (https://github.com/rust-lang/rust/pull/124050/)

Version 1.79.0 (2024-06-13)
==========================

Language
--------
- [Stabilize inline `const {}` expressions.]
  (https://github.com/rust-lang/rust/pull/104087/)
- [Prevent opaque types being instantiated twice with different
  regions within the same function.]
  (https://github.com/rust-lang/rust/pull/116935/)
- [Stabilize WebAssembly target features that are in phase 4 and 5.]
  (https://github.com/rust-lang/rust/pull/117457/)
- [Add the `redundant_lifetimes` lint to detect lifetimes which
  are semantically redundant.]
  (https://github.com/rust-lang/rust/pull/118391/)
- [Stabilize the `unnameable_types` lint for public types that can't be named.]
  (https://github.com/rust-lang/rust/pull/120144/)
- [Enable debuginfo in macros, and stabilize `-C collapse-macro-debuginfo`
  and `#[collapse_debuginfo]`.]
  (https://github.com/rust-lang/rust/pull/120845/)
- [Propagate temporary lifetime extension into `if` and `match` expressions.]
  (https://github.com/rust-lang/rust/pull/121346/)
- [Restrict promotion of `const fn` calls.]
  (https://github.com/rust-lang/rust/pull/121557/)
- [Warn against refining impls of crate-private traits with
  `refining_impl_trait` lint.]
  (https://github.com/rust-lang/rust/pull/121720/)
- [Stabilize associated type bounds (RFC 2289).]
  (https://github.com/rust-lang/rust/pull/122055/)
- [Stabilize importing `main` from other modules or crates.]
  (https://github.com/rust-lang/rust/pull/122060/)
- [Check return types of function types for well-formedness]
  (https://github.com/rust-lang/rust/pull/115538)
- [Rework `impl Trait` lifetime inference]
  (https://github.com/rust-lang/rust/pull/116891/)
- [Change inductive trait solver cycles to be ambiguous]
  (https://github.com/rust-lang/rust/pull/122791)

Compiler
--------
- [Define `-C strip` to only affect binaries, not artifacts like `.pdb`.]
  (https://github.com/rust-lang/rust/pull/115120/)
- [Stabilize `-Crelro-level` for controlling runtime link hardening.]
  (https://github.com/rust-lang/rust/pull/121694/)
- [Stabilize checking of `cfg` names and values at compile-time
  with `--check-cfg`.]
  (https://github.com/rust-lang/rust/pull/123501/)
  *Note that this only stabilizes the compiler part, the Cargo part
  is still unstable in this release.*
- [Add `aarch64-apple-visionos` and `aarch64-apple-visionos-sim`
  tier 3 targets.]
  (https://github.com/rust-lang/rust/pull/121419/)
- [Add `riscv32ima-unknown-none-elf` tier 3 target.]
  (https://github.com/rust-lang/rust/pull/122696/)
- [Promote several Windows targets to tier 2]
  (https://github.com/rust-lang/rust/pull/121712):
  `aarch64-pc-windows-gnullvm`, `i686-pc-windows-gnullvm`, and
  `x86_64-pc-windows-gnullvm`.

Refer to Rust's [platform support page][platform-support-doc]
for more information on Rust's tiered platform support.

Libraries
---------

- [Implement `FromIterator` for `(impl Default + Extend, impl
  Default + Extend)`.]
  (https://github.com/rust-lang/rust/pull/107462/)
- [Implement `{Div,Rem}Assign<NonZero<X>>` on `X`.]
  (https://github.com/rust-lang/rust/pull/121952/)
- [Document overrides of `clone_from()` in core/std.]
  (https://github.com/rust-lang/rust/pull/122201/)
- [Link MSVC default lib in core.]
  (https://github.com/rust-lang/rust/pull/122268/)
- [Caution against using `transmute` between pointers and integers.]
  (https://github.com/rust-lang/rust/pull/122379/)
- [Enable frame pointers for the standard library.]
  (https://github.com/rust-lang/rust/pull/122646/)

Stabilized APIs
---------------

- [`{integer}::unchecked_add`]
  (https://doc.rust-lang.org/stable/core/primitive.i32.html#method.unchecked_add)
- [`{integer}::unchecked_mul`]
  (https://doc.rust-lang.org/stable/core/primitive.i32.html#method.unchecked_mul)
- [`{integer}::unchecked_sub`]
  (https://doc.rust-lang.org/stable/core/primitive.i32.html#method.unchecked_sub)
- [`<[T]>::split_at_unchecked`]
  (https://doc.rust-lang.org/stable/core/primitive.slice.html#method.split_at_unchecked)
- [`<[T]>::split_at_mut_unchecked`]
  (https://doc.rust-lang.org/stable/core/primitive.slice.html#method.split_at_mut_unchecked)
- [`<[u8]>::utf8_chunks`]
  (https://doc.rust-lang.org/stable/core/primitive.slice.html#method.utf8_chunks)
- [`str::Utf8Chunks`]
  (https://doc.rust-lang.org/stable/core/str/struct.Utf8Chunks.html)
- [`str::Utf8Chunk`]
  (https://doc.rust-lang.org/stable/core/str/struct.Utf8Chunk.html)
- [`<*const T>::is_aligned`]
  (https://doc.rust-lang.org/stable/core/primitive.pointer.html#method.is_aligned)
- [`<*mut T>::is_aligned`]
  (https://doc.rust-lang.org/stable/core/primitive.pointer.html#method.is_aligned-1)
- [`NonNull::is_aligned`]
  (https://doc.rust-lang.org/stable/core/ptr/struct.NonNull.html#method.is_aligned)
- [`<*const [T]>::len`]
  (https://doc.rust-lang.org/stable/core/primitive.pointer.html#method.len)
- [`<*mut [T]>::len`]
  (https://doc.rust-lang.org/stable/core/primitive.pointer.html#method.len-1)
- [`<*const [T]>::is_empty`]
  (https://doc.rust-lang.org/stable/core/primitive.pointer.html#method.is_empty)
- [`<*mut [T]>::is_empty`]
  (https://doc.rust-lang.org/stable/core/primitive.pointer.html#method.is_empty-1)
- [`NonNull::<[T]>::is_empty`]
  (https://doc.rust-lang.org/stable/core/ptr/struct.NonNull.html#method.is_empty)
- [`CStr::count_bytes`]
  (https://doc.rust-lang.org/stable/core/ffi/c_str/struct.CStr.html#method.count_bytes)
- [`io::Error::downcast`]
  (https://doc.rust-lang.org/stable/std/io/struct.Error.html#method.downcast)
- [`num::NonZero<T>`]
  (https://doc.rust-lang.org/stable/core/num/struct.NonZero.html)
- [`path::absolute`]
  (https://doc.rust-lang.org/stable/std/path/fn.absolute.html)
- [`proc_macro::Literal::byte_character`]
  (https://doc.rust-lang.org/stable/proc_macro/struct.Literal.html#method.byte_character)
- [`proc_macro::Literal::c_string`]
  (https://doc.rust-lang.org/stable/proc_macro/struct.Literal.html#method.c_string)

These APIs are now stable in const contexts:

- [`Atomic*::into_inner`]
  (https://doc.rust-lang.org/stable/core/sync/atomic/struct.AtomicUsize.html#method.into_inner)
- [`io::Cursor::new`]
  (https://doc.rust-lang.org/stable/std/io/struct.Cursor.html#method.new)
- [`io::Cursor::get_ref`]
  (https://doc.rust-lang.org/stable/std/io/struct.Cursor.html#method.get_ref)
- [`io::Cursor::position`]
  (https://doc.rust-lang.org/stable/std/io/struct.Cursor.html#method.position)
- [`io::empty`]
  (https://doc.rust-lang.org/stable/std/io/fn.empty.html)
- [`io::repeat`]
  (https://doc.rust-lang.org/stable/std/io/fn.repeat.html)
- [`io::sink`]
  (https://doc.rust-lang.org/stable/std/io/fn.sink.html)
- [`panic::Location::caller`]
  (https://doc.rust-lang.org/stable/std/panic/struct.Location.html#method.caller)
- [`panic::Location::file`]
  (https://doc.rust-lang.org/stable/std/panic/struct.Location.html#method.file)
- [`panic::Location::line`]
  (https://doc.rust-lang.org/stable/std/panic/struct.Location.html#method.line)
- [`panic::Location::column`]
  (https://doc.rust-lang.org/stable/std/panic/struct.Location.html#method.column)

Cargo
-----

- [Prevent dashes in `lib.name`, always normalizing to `_`.]
  (https://github.com/rust-lang/cargo/pull/12783/)
- [Stabilize MSRV-aware version requirement selection in `cargo add`.]
  (https://github.com/rust-lang/cargo/pull/13608/)
- [Switch to using `gitoxide` by default for listing files.]
  (https://github.com/rust-lang/cargo/pull/13696/)

Rustdoc
-----

- [Always display stability version even if it's the same as the
  containing item.]
  (https://github.com/rust-lang/rust/pull/118441/)
- [Show a single search result for items with multiple paths.]
  (https://github.com/rust-lang/rust/pull/119912/)
- [Support typing `/` in docs to begin a search.]
  (https://github.com/rust-lang/rust/pull/123355/)

Misc
----

Compatibility Notes
-------------------

- [Update the minimum external LLVM to 17.]
  (https://github.com/rust-lang/rust/pull/122649/)
- [`RustcEncodable` and `RustcDecodable` are soft-destabilized, to
  be removed from the prelude in next edition.]
  (https://github.com/rust-lang/rust/pull/116016/)
- [The `wasm_c_abi` future-incompatibility lint will warn about use of the
  non-spec-compliant C ABI.]
  (https://github.com/rust-lang/rust/pull/117918/)
  Use `wasm-bindgen v0.2.88` to generate forward-compatible bindings.
- [Check return types of function types for well-formedness]
  (https://github.com/rust-lang/rust/pull/115538)

Version 1.78.0 (2024-05-02)
===========================

Language
--------
- [Stabilize `#[cfg(target_abi = ...)]`]
  (https://github.com/rust-lang/rust/pull/119590/)
- [Stabilize the `#[diagnostic]` namespace and
  `#[diagnostic::on_unimplemented]` attribute]
  (https://github.com/rust-lang/rust/pull/119888/)
- [Make async-fn-in-trait implementable with concrete signatures]
  (https://github.com/rust-lang/rust/pull/120103/)
- [Make matching on NaN a hard error, and remove the rest of
  `illegal_floating_point_literal_pattern`]
  (https://github.com/rust-lang/rust/pull/116284/)
- [static mut: allow mutable reference to arbitrary types, not just
  slices and arrays]
  (https://github.com/rust-lang/rust/pull/117614/)
- [Extend `invalid_reference_casting` to include references casting
  to bigger memory layout]
  (https://github.com/rust-lang/rust/pull/118983/)
- [Add `non_contiguous_range_endpoints` lint for singleton gaps
  after exclusive ranges]
  (https://github.com/rust-lang/rust/pull/118879/)
- [Add `wasm_c_abi` lint for use of older wasm-bindgen versions]
  (https://github.com/rust-lang/rust/pull/117918/)
  This lint currently only works when using Cargo.
- [Update `indirect_structural_match` and `pointer_structural_match`
  lints to match RFC]
  (https://github.com/rust-lang/rust/pull/120423/)
- [Make non-`PartialEq`-typed consts as patterns a hard error]
  (https://github.com/rust-lang/rust/pull/120805/)
- [Split `refining_impl_trait` lint into `_reachable`, `_internal` variants]
  (https://github.com/rust-lang/rust/pull/121720/)
- [Remove unnecessary type inference when using associated types
  inside of higher ranked `where`-bounds]
  (https://github.com/rust-lang/rust/pull/119849)
- [Weaken eager detection of cyclic types during type inference]
  (https://github.com/rust-lang/rust/pull/119989)
- [`trait Trait: Auto {}`: allow upcasting from `dyn Trait` to `dyn Auto`]
  (https://github.com/rust-lang/rust/pull/119338)

Compiler
--------

- [Made `INVALID_DOC_ATTRIBUTES` lint deny by default]
  (https://github.com/rust-lang/rust/pull/111505/)
- [Increase accuracy of redundant `use` checking]
  (https://github.com/rust-lang/rust/pull/117772/)
- [Suggest moving definition if non-found macro_rules! is defined later]
  (https://github.com/rust-lang/rust/pull/121130/)
- [Lower transmutes from int to pointer type as gep on null]
  (https://github.com/rust-lang/rust/pull/121282/)

Target changes:

- [Windows tier 1 targets now require at least Windows 10]
  (https://github.com/rust-lang/rust/pull/115141/)
 - [Enable CMPXCHG16B, SSE3, SAHF/LAHF and 128-bit Atomics in tier 1 Windows]
  (https://github.com/rust-lang/rust/pull/120820/)
- [Add `wasm32-wasip1` tier 2 (without host tools) target]
  (https://github.com/rust-lang/rust/pull/120468/)
- [Add `wasm32-wasip2` tier 3 target]
  (https://github.com/rust-lang/rust/pull/119616/)
- [Rename `wasm32-wasi-preview1-threads` to `wasm32-wasip1-threads`]
  (https://github.com/rust-lang/rust/pull/122170/)
- [Add `arm64ec-pc-windows-msvc` tier 3 target]
  (https://github.com/rust-lang/rust/pull/119199/)
- [Add `armv8r-none-eabihf` tier 3 target for the Cortex-R52]
  (https://github.com/rust-lang/rust/pull/110482/)
- [Add `loongarch64-unknown-linux-musl` tier 3 target]
  (https://github.com/rust-lang/rust/pull/121832/)

Refer to Rust's [platform support page][platform-support-doc]
for more information on Rust's tiered platform support.

Libraries
---------

- [Bump Unicode to version 15.1.0, regenerate tables]
  (https://github.com/rust-lang/rust/pull/120777/)
- [Make align_offset, align_to well-behaved in all cases]
  (https://github.com/rust-lang/rust/pull/121201/)
- [PartialEq, PartialOrd: document expectations for transitive chains]
  (https://github.com/rust-lang/rust/pull/115386/)
- [Optimize away poison guards when std is built with panic=abort]
  (https://github.com/rust-lang/rust/pull/100603/)
- [Replace pthread `RwLock` with custom implementation]
  (https://github.com/rust-lang/rust/pull/110211/)
- [Implement unwind safety for Condvar on all platforms]
  (https://github.com/rust-lang/rust/pull/121768/)
- [Add ASCII fast-path for `char::is_grapheme_extended`]
  (https://github.com/rust-lang/rust/pull/121138/)

Stabilized APIs
---------------

- [`impl Read for &Stdin`]
  (https://doc.rust-lang.org/stable/std/io/struct.Stdin.html#impl-Read-for-%26Stdin)
- [Accept non `'static` lifetimes for several `std::error::Error`
  related implementations] (https://github.com/rust-lang/rust/pull/113833/)
- [Make `impl<Fd: AsFd>` impl take `?Sized`]
  (https://github.com/rust-lang/rust/pull/114655/)
- [`impl From<TryReserveError> for io::Error`]
  (https://doc.rust-lang.org/stable/std/io/struct.Error.html#impl-From%3CTryReserveError%3E-for-Error)

These APIs are now stable in const contexts:

- [`Barrier::new()`]
  (https://doc.rust-lang.org/stable/std/sync/struct.Barrier.html#method.new)

Cargo
-----

- [Stabilize lockfile v4](https://github.com/rust-lang/cargo/pull/12852/)
- [Respect `rust-version` when generating lockfile]
  (https://github.com/rust-lang/cargo/pull/12861/)
- [Control `--charset` via auto-detecting config value]
  (https://github.com/rust-lang/cargo/pull/13337/)
- [Support `target.<triple>.rustdocflags` officially]
  (https://github.com/rust-lang/cargo/pull/13197/)
- [Stabilize global cache data tracking]
  (https://github.com/rust-lang/cargo/pull/13492/)

Misc
----

- [rustdoc: add `--test-builder-wrapper` arg to support wrappers
  such as RUSTC_WRAPPER when building doctests]
  (https://github.com/rust-lang/rust/pull/114651/)

Compatibility Notes
-------------------

- [Many unsafe precondition checks now run for user code with debug
  assertions enabled] (https://github.com/rust-lang/rust/pull/120594/)
  This change helps users catch undefined behavior in their code,
  though the details of how much is checked are generally not
  stable.
- [riscv only supports split_debuginfo=off for now]
  (https://github.com/rust-lang/rust/pull/120518/)
- [Consistently check bounds on hidden types of `impl Trait`]
  (https://github.com/rust-lang/rust/pull/121679)
- [Change equality of higher ranked types to not rely on subtyping]
  (https://github.com/rust-lang/rust/pull/118247)
- [When called, additionally check bounds on normalized function return type]
  (https://github.com/rust-lang/rust/pull/118882)
- [Expand coverage for `arithmetic_overflow` lint]
  (https://github.com/rust-lang/rust/pull/119432/)

Internal Changes
----------------

These changes do not affect any public interfaces of Rust, but they represent
significant improvements to the performance or internals of rustc and related
tools.

- [Update to LLVM 18](https://github.com/rust-lang/rust/pull/120055/)
- [Build `rustc` with 1CGU on `x86_64-pc-windows-msvc`]
  (https://github.com/rust-lang/rust/pull/112267/)
- [Build `rustc` with 1CGU on `x86_64-apple-darwin`]
  (https://github.com/rust-lang/rust/pull/112268/)
- [Introduce `run-make` V2 infrastructure, a `run_make_support`
  library and port over 2 tests as example]
  (https://github.com/rust-lang/rust/pull/113026/)
- [Windows: Implement condvar, mutex and rwlock using futex]
  (https://github.com/rust-lang/rust/pull/121956/)

Version 1.77.0 (2024-03-21)
==========================

- [Reveal opaque types within the defining body for exhaustiveness checking.]
  (https://github.com/rust-lang/rust/pull/116821/)
- [Stabilize C-string literals.]
  (https://github.com/rust-lang/rust/pull/117472/)
- [Stabilize THIR unsafeck.]
  (https://github.com/rust-lang/rust/pull/117673/)
- [Add lint `static_mut_refs` to warn on references to mutable statics.]
  (https://github.com/rust-lang/rust/pull/117556/)
- [Support async recursive calls (as long as they have indirection).]
  (https://github.com/rust-lang/rust/pull/117703/)
- [Undeprecate lint `unstable_features` and make use of it in the compiler.]
  (https://github.com/rust-lang/rust/pull/118639/)
- [Make inductive cycles in coherence ambiguous always.]
  (https://github.com/rust-lang/rust/pull/118649/)
- [Get rid of type-driven traversal in const-eval interning]
  (https://github.com/rust-lang/rust/pull/119044/),
  only as a [future compatiblity lint]
  (https://github.com/rust-lang/rust/pull/122204) for now.
- [Deny braced macro invocations in let-else.]
  (https://github.com/rust-lang/rust/pull/119062/)

Compiler
--------

- [Include lint `soft_unstable` in future breakage reports.]
  (https://github.com/rust-lang/rust/pull/116274/)
- [Make `i128` and `u128` 16-byte aligned on x86-based targets.]
  (https://github.com/rust-lang/rust/pull/116672/)
- [Use `--verbose` in diagnostic output.]
  (https://github.com/rust-lang/rust/pull/119129/)
- [Improve spacing between printed tokens.]
  (https://github.com/rust-lang/rust/pull/120227/)
- [Merge the `unused_tuple_struct_fields` lint into `dead_code`.]
  (https://github.com/rust-lang/rust/pull/118297/)
- [Error on incorrect implied bounds in well-formedness check]
  (https://github.com/rust-lang/rust/pull/118553/),
  with a temporary exception for Bevy.
- [Fix coverage instrumentation/reports for non-ASCII source code.]
  (https://github.com/rust-lang/rust/pull/119033/)
- [Fix `fn`/`const` items implied bounds and well-formedness check.]
  (https://github.com/rust-lang/rust/pull/120019/)
- [Promote `riscv32{im|imafc}-unknown-none-elf` targets to tier 2.]
  (https://github.com/rust-lang/rust/pull/118704/)
- Add several new tier 3 targets:
  - [`aarch64-unknown-illumos`]
    (https://github.com/rust-lang/rust/pull/112936/)
  - [`hexagon-unknown-none-elf`]
    (https://github.com/rust-lang/rust/pull/117601/)
  - [`riscv32imafc-esp-espidf`]
    (https://github.com/rust-lang/rust/pull/119738/)
  - [`riscv32im-risc0-zkvm-elf`]
    (https://github.com/rust-lang/rust/pull/117958/)

Refer to Rust's [platform support page][platform-support-doc]
for more information on Rust's tiered platform support.

Libraries
---------

- [Implement `From<&[T; N]>` for `Cow<[T]>`.]
  (https://github.com/rust-lang/rust/pull/113489/)
- [Remove special-case handling of `vec.split_off
  (0)`.](https://github.com/rust-lang/rust/pull/119917/)

Stabilized APIs
---------------

- [`array::each_ref`]
  (https://doc.rust-lang.org/stable/std/primitive.array.html#method.each_ref)
- [`array::each_mut`]
  (https://doc.rust-lang.org/stable/std/primitive.array.html#method.each_mut)
- [`core::net`]
  (https://doc.rust-lang.org/stable/core/net/index.html)
- [`f32::round_ties_even`]
  (https://doc.rust-lang.org/stable/std/primitive.f32.html#method.round_ties_even)
- [`f64::round_ties_even`]
  (https://doc.rust-lang.org/stable/std/primitive.f64.html#method.round_ties_even)
- [`mem::offset_of!`]
  (https://doc.rust-lang.org/stable/std/mem/macro.offset_of.html)
- [`slice::first_chunk`]
  (https://doc.rust-lang.org/stable/std/primitive.slice.html#method.first_chunk)
- [`slice::first_chunk_mut`]
  (https://doc.rust-lang.org/stable/std/primitive.slice.html#method.first_chunk_mut)
- [`slice::split_first_chunk`]
  (https://doc.rust-lang.org/stable/std/primitive.slice.html#method.split_first_chunk)
- [`slice::split_first_chunk_mut`]
  (https://doc.rust-lang.org/stable/std/primitive.slice.html#method.split_first_chunk_mut)
- [`slice::last_chunk`]
  (https://doc.rust-lang.org/stable/std/primitive.slice.html#method.last_chunk)
- [`slice::last_chunk_mut`]
  (https://doc.rust-lang.org/stable/std/primitive.slice.html#method.last_chunk_mut)
- [`slice::split_last_chunk`]
  (https://doc.rust-lang.org/stable/std/primitive.slice.html#method.split_last_chunk)
- [`slice::split_last_chunk_mut`]
  (https://doc.rust-lang.org/stable/std/primitive.slice.html#method.split_last_chunk_mut)
- [`slice::chunk_by`]
  (https://doc.rust-lang.org/stable/std/primitive.slice.html#method.chunk_by)
- [`slice::chunk_by_mut`]
  (https://doc.rust-lang.org/stable/std/primitive.slice.html#method.chunk_by_mut)
- [`Bound::map`]
  (https://doc.rust-lang.org/stable/std/ops/enum.Bound.html#method.map)
- [`File::create_new`]
  (https://doc.rust-lang.org/stable/std/fs/struct.File.html#method.create_new)
- [`Mutex::clear_poison`]
  (https://doc.rust-lang.org/stable/std/sync/struct.Mutex.html#method.clear_poison)
- [`RwLock::clear_poison`]
  (https://doc.rust-lang.org/stable/std/sync/struct.RwLock.html#method.clear_poison)

Cargo
-----

- [Extend the build directive syntax with `cargo::`.]
  (https://github.com/rust-lang/cargo/pull/12201/)
- [Stabilize metadata `id` format as `PackageIDSpec`.]
  (https://github.com/rust-lang/cargo/pull/12914/)
- [Pull out as `cargo-util-schemas` as a crate.]
  (https://github.com/rust-lang/cargo/pull/13178/)
- [Strip all debuginfo when debuginfo is not requested.]
  (https://github.com/rust-lang/cargo/pull/13257/)
- [Inherit jobserver from env for all kinds of runners.]
  (https://github.com/rust-lang/cargo/pull/12776/)
- [Deprecate rustc plugin support in cargo.]
  (https://github.com/rust-lang/cargo/pull/13248/)

Rustdoc
-----

- [Allows links in markdown headings.]
  (https://github.com/rust-lang/rust/pull/117662/)
- [Search for tuples and unit by type with `()`.]
  (https://github.com/rust-lang/rust/pull/118194/)
- [Clean up the source sidebar's hide button.]
  (https://github.com/rust-lang/rust/pull/119066/)
- [Prevent JS injection from `localStorage`.]
  (https://github.com/rust-lang/rust/pull/120250/)

Misc
----

- [Recommend version-sorting for all sorting in style guide.]
  (https://github.com/rust-lang/rust/pull/115046/)

Internal Changes
----------------

These changes do not affect any public interfaces of Rust, but they represent
significant improvements to the performance or internals of rustc and related
tools.

- [Add more weirdness to `weird-exprs.rs`.]
  (https://github.com/rust-lang/rust/pull/119028/)


To generate a diff of this commit:
cvs rdiff -u -r1.316 -r1.317 pkgsrc/lang/rust/Makefile
cvs rdiff -u -r1.174 -r1.175 pkgsrc/lang/rust/distinfo
cvs rdiff -u -r1.11 -r1.12 pkgsrc/lang/rust/do-cross.mk
cvs rdiff -u -r1.40 -r1.41 pkgsrc/lang/rust/options.mk
cvs rdiff -u -r0 -r1.1 \
    pkgsrc/lang/rust/patches/patch-compiler_rustc__target_src_spec_targets_mipsel__unknown__netbsd.rs \
    pkgsrc/lang/rust/patches/patch-tools_rust-analyzer_lib_line-index-src_lib.rs \
    pkgsrc/lang/rust/patches/patch-vendor_aho-corasick-1.1.2_src_packed_teddy_builder.rs \
    pkgsrc/lang/rust/patches/patch-vendor_aho-corasick-1.1.2_src_packed_vector.rs \
    pkgsrc/lang/rust/patches/patch-vendor_bytecount-0.6.8_src_lib.rs \
    pkgsrc/lang/rust/patches/patch-vendor_libc-0.2.153_src_unix_solarish_mod.rs \
    pkgsrc/lang/rust/patches/patch-vendor_libc-0.2.154_src_unix_solarish_mod.rs \
    pkgsrc/lang/rust/patches/patch-vendor_libc-0.2.155_src_unix_solarish_mod.rs \
    pkgsrc/lang/rust/patches/patch-vendor_memchr-2.7.1_src_arch_aarch64_memchr.rs \
    pkgsrc/lang/rust/patches/patch-vendor_memchr-2.7.1_src_arch_aarch64_mod.rs \
    pkgsrc/lang/rust/patches/patch-vendor_memchr-2.7.1_src_memchr.rs \
    pkgsrc/lang/rust/patches/patch-vendor_memchr-2.7.1_src_memmem_searcher.rs \
    pkgsrc/lang/rust/patches/patch-vendor_memchr-2.7.1_src_vector.rs \
    pkgsrc/lang/rust/patches/patch-vendor_memchr-2.7.2_src_arch_aarch64_memchr.rs \
    pkgsrc/lang/rust/patches/patch-vendor_memchr-2.7.2_src_arch_aarch64_mod.rs \
    pkgsrc/lang/rust/patches/patch-vendor_memchr-2.7.2_src_memchr.rs \
    pkgsrc/lang/rust/patches/patch-vendor_memchr-2.7.2_src_memmem_searcher.rs \
    pkgsrc/lang/rust/patches/patch-vendor_memchr-2.7.2_src_vector.rs \
    pkgsrc/lang/rust/patches/patch-vendor_openssl-src-111.28.2+1.1.1w_openssl_Configurations_10-main.conf \
    pkgsrc/lang/rust/patches/patch-vendor_openssl-src-111.28.2+1.1.1w_src_lib.rs \
    pkgsrc/lang/rust/patches/patch-vendor_zerocopy-0.7.32_src_lib.rs \
    pkgsrc/lang/rust/patches/patch-vendor_zerocopy-0.7.34_src_lib.rs
cvs rdiff -u -r1.6 -r1.7 \
    pkgsrc/lang/rust/patches/patch-library_backtrace_src_symbolize_gimli.rs
cvs rdiff -u -r1.1 -r0 \
    pkgsrc/lang/rust/patches/patch-library_std_src_sys_pal_unix_thread__parking_netbsd.rs \
    pkgsrc/lang/rust/patches/patch-vendor_libc-0.2.151_src_unix_solarish_mod.rs \
    pkgsrc/lang/rust/patches/patch-vendor_openssl-src-111.28.1+1.1.1w_openssl_Configurations_10-main.conf \
    pkgsrc/lang/rust/patches/patch-vendor_openssl-src-111.28.1+1.1.1w_src_lib.rs
cvs rdiff -u -r1.4 -r1.5 \
    pkgsrc/lang/rust/patches/patch-vendor_cc-1.0.73_src_lib.rs

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

Modified files:

Index: pkgsrc/lang/rust/Makefile
diff -u pkgsrc/lang/rust/Makefile:1.316 pkgsrc/lang/rust/Makefile:1.317
--- pkgsrc/lang/rust/Makefile:1.316     Wed Jul 31 12:30:43 2024
+++ pkgsrc/lang/rust/Makefile   Sun Oct 13 19:04:39 2024
@@ -1,6 +1,6 @@
-# $NetBSD: Makefile,v 1.316 2024/07/31 12:30:43 he Exp $
+# $NetBSD: Makefile,v 1.317 2024/10/13 19:04:39 he Exp $
 
-DISTNAME=      rustc-1.79.0-src
+DISTNAME=      rustc-1.80.1-src
 PKGNAME=       ${DISTNAME:S/rustc/rust/:S/-src//}
 CATEGORIES=    lang
 MASTER_SITES=  https://static.rust-lang.org/dist/
@@ -200,50 +200,52 @@ BUILDLINK_TRANSFORM+=     opt:x86_64:arm64
 #
 DISTFILES:=            ${DEFAULT_DISTFILES}
 
+NB=                    nb1
+
 .if ${MACHINE_PLATFORM:MDarwin-*-aarch64} || make(distinfo) || make (makesum) || make(mdi)
-RUST_STAGE0_VER=       1.78.0
+RUST_STAGE0_VER=       1.79.0
 RUST_ARCH:=            aarch64-apple-darwin
 RUST_STAGE0:=          rust-${RUST_STAGE0_VER}-${RUST_ARCH}.tar.gz
 RUST_STD_STAGE0:=      rust-std-${RUST_STAGE0_VER}-${RUST_ARCH}.tar.gz
 DISTFILES:=            ${DISTFILES} ${RUST_STAGE0} ${RUST_STD_STAGE0}
 .endif
 .if ${MACHINE_PLATFORM:MDarwin-*-x86_64} || make(distinfo) || make (makesum) || make(mdi)
-RUST_STAGE0_VER=       1.78.0
+RUST_STAGE0_VER=       1.79.0
 RUST_ARCH:=            x86_64-apple-darwin
 RUST_STAGE0:=          rust-${RUST_STAGE0_VER}-${RUST_ARCH}.tar.gz
 RUST_STD_STAGE0:=      rust-std-${RUST_STAGE0_VER}-${RUST_ARCH}.tar.gz
 DISTFILES:=            ${DISTFILES} ${RUST_STAGE0} ${RUST_STD_STAGE0}
 .endif
 .if ${MACHINE_PLATFORM:MLinux-*-aarch64} || make(distinfo) || make (makesum) || make(mdi)
-RUST_STAGE0_VER=       1.78.0
+RUST_STAGE0_VER=       1.79.0
 RUST_ARCH:=            aarch64-unknown-linux-gnu
 RUST_STAGE0:=          rust-${RUST_STAGE0_VER}-${RUST_ARCH}.tar.gz
 RUST_STD_STAGE0:=      rust-std-${RUST_STAGE0_VER}-${RUST_ARCH}.tar.gz
 DISTFILES:=            ${DISTFILES} ${RUST_STAGE0} ${RUST_STD_STAGE0}
 .endif
 .if ${MACHINE_PLATFORM:MLinux-*-earmv6hf} || make(distinfo) || make (makesum) || make(mdi)
-RUST_STAGE0_VER=       1.78.0
+RUST_STAGE0_VER=       1.79.0
 RUST_ARCH:=            arm-unknown-linux-gnueabihf
 RUST_STAGE0:=          rust-${RUST_STAGE0_VER}-${RUST_ARCH}.tar.gz
 RUST_STD_STAGE0:=      rust-std-${RUST_STAGE0_VER}-${RUST_ARCH}.tar.gz
 DISTFILES:=            ${DISTFILES} ${RUST_STAGE0} ${RUST_STD_STAGE0}
 .endif
 .if ${MACHINE_PLATFORM:MLinux-*-earmv7hf} || make(distinfo) || make (makesum) || make(mdi)
-RUST_STAGE0_VER=       1.78.0
+RUST_STAGE0_VER=       1.79.0
 RUST_ARCH:=            armv7-unknown-linux-gnueabihf
 RUST_STAGE0:=          rust-${RUST_STAGE0_VER}-${RUST_ARCH}.tar.gz
 RUST_STD_STAGE0:=      rust-std-${RUST_STAGE0_VER}-${RUST_ARCH}.tar.gz
 DISTFILES:=            ${DISTFILES} ${RUST_STAGE0} ${RUST_STD_STAGE0}
 .endif
 .if ${MACHINE_PLATFORM:MLinux-*-i386} || make(distinfo) || make (makesum) || make(mdi)
-RUST_STAGE0_VER=       1.78.0
+RUST_STAGE0_VER=       1.79.0
 RUST_ARCH:=            i686-unknown-linux-gnu
 RUST_STAGE0:=          rust-${RUST_STAGE0_VER}-${RUST_ARCH}.tar.gz
 RUST_STD_STAGE0:=      rust-std-${RUST_STAGE0_VER}-${RUST_ARCH}.tar.gz
 DISTFILES:=            ${DISTFILES} ${RUST_STAGE0} ${RUST_STD_STAGE0}
 .endif
 .if ${MACHINE_PLATFORM:MLinux-*-x86_64} || make(distinfo) || make (makesum) || make(mdi)
-RUST_STAGE0_VER=       1.78.0
+RUST_STAGE0_VER=       1.79.0
 RUST_ARCH:=            x86_64-unknown-linux-gnu
 RUST_STAGE0:=          rust-${RUST_STAGE0_VER}-${RUST_ARCH}.tar.gz
 RUST_STD_STAGE0:=      rust-std-${RUST_STAGE0_VER}-${RUST_ARCH}.tar.gz
@@ -255,7 +257,7 @@ DISTFILES:=         ${DISTFILES} ${RUST_STAGE0}
 # x86_64-sun-solaris bootstrap and comment out the overrides.
 #
 .if ${MACHINE_PLATFORM:MSunOS-*-x86_64} || make(distinfo) || make (makesum) || make(mdi)
-RUST_STAGE0_VER=       1.78.0
+RUST_STAGE0_VER=       1.79.0
 RUST_ARCH:=            x86_64-unknown-illumos
 RUST_STAGE0:=          rust-${RUST_STAGE0_VER}-${RUST_ARCH}.tar.gz
 SITES.${RUST_STAGE0}=  https://us-central.manta.mnx.io/pkgsrc/public/pkg-bootstraps/
@@ -268,14 +270,14 @@ CONFIGURE_ARGS+=  --host=${RUST_ARCH}
 CONFIGURE_ARGS+=       --target=${RUST_ARCH}
 .endif
 .if ${MACHINE_PLATFORM:MFreeBSD-*-x86_64} || make(distinfo) || make (makesum) || make(mdi)
-RUST_STAGE0_VER=       1.78.0
+RUST_STAGE0_VER=       1.79.0
 RUST_ARCH:=            x86_64-unknown-freebsd
 RUST_STAGE0:=          rust-${RUST_STAGE0_VER}-${RUST_ARCH}.tar.gz
 RUST_STD_STAGE0:=      rust-std-${RUST_STAGE0_VER}-${RUST_ARCH}.tar.gz
 DISTFILES:=            ${DISTFILES} ${RUST_STAGE0} ${RUST_STD_STAGE0}
 .endif
 .if ${MACHINE_PLATFORM:MNetBSD-*-i386} || make(distinfo) || make (makesum) || make(mdi)
-RUST_STAGE0_VER=       1.78.0
+RUST_STAGE0_VER=       1.79.0
 RUST_ARCH=             i586-unknown-netbsd
 RUST_STAGE0:=          rust-${RUST_STAGE0_VER}-${RUST_ARCH}.tar.xz
 RUST_STD_STAGE0:=      rust-std-${RUST_STAGE0_VER}-${RUST_ARCH}.tar.xz
@@ -295,14 +297,14 @@ pre-build-fix-paxctl:
        ${TOOLS_PLATFORM.paxctl} +am ${WRKDIR}/rust-bootstrap/bin/rustc
 .endif
 .if ${MACHINE_PLATFORM:MNetBSD-*-x86_64} || make(distinfo) || make (makesum) || make(mdi)
-RUST_STAGE0_VER=       1.78.0
+RUST_STAGE0_VER=       1.79.0
 RUST_ARCH=             x86_64-unknown-netbsd
 RUST_STAGE0:=          rust-${RUST_STAGE0_VER}-${RUST_ARCH}.tar.xz
 RUST_STD_STAGE0:=      rust-std-${RUST_STAGE0_VER}-${RUST_ARCH}.tar.xz
 DISTFILES:=            ${DISTFILES} ${RUST_STAGE0} ${RUST_STD_STAGE0}
 .endif
 .if ${MACHINE_PLATFORM:MNetBSD-*-powerpc} || make(distinfo) || make (makesum) || make(mdi)
-RUST_STAGE0_VER=       1.78.0
+RUST_STAGE0_VER=       1.79.0
 RUST_ARCH=             powerpc-unknown-netbsd
 
 # Cross-built against NetBSD 9.0
@@ -314,17 +316,16 @@ SITES.${RUST_STD_STAGE0}= ${MASTER_SITE_
 
 .endif
 .if ${MACHINE_PLATFORM:MNetBSD-*-aarch64} || make(distinfo) || make (makesum) || make(mdi)
-NB=                            -nb1
-RUST_STAGE0_VER=               1.78.0
+RUST_STAGE0_VER=               1.79.0
 RUST_ARCH=                     aarch64-unknown-netbsd
-RUST_STAGE0:=                  rust-${RUST_STAGE0_VER}-${RUST_ARCH}${NB}.tar.xz
-RUST_STD_STAGE0:=              rust-std-${RUST_STAGE0_VER}-${RUST_ARCH}${NB}.tar.xz
+RUST_STAGE0:=                  rust-${RUST_STAGE0_VER}-${RUST_ARCH}-${NB}.tar.xz
+RUST_STD_STAGE0:=              rust-std-${RUST_STAGE0_VER}-${RUST_ARCH}-${NB}.tar.xz
 DISTFILES:=                    ${DISTFILES} ${RUST_STAGE0} ${RUST_STD_STAGE0}
 SITES.${RUST_STAGE0}=          ${MASTER_SITE_LOCAL:=rust/}
 SITES.${RUST_STD_STAGE0}=      ${MASTER_SITE_LOCAL:=rust/}
 .endif
 .if ${MACHINE_PLATFORM:MNetBSD-*-aarch64eb} || make(distinfo) || make (makesum) || make(mdi)
-RUST_STAGE0_VER=               1.77.1
+RUST_STAGE0_VER=               1.80.1
 RUST_ARCH=                     aarch64_be-unknown-netbsd
 RUST_STAGE0:=                  rust-${RUST_STAGE0_VER}-${RUST_ARCH}.tar.xz
 RUST_STD_STAGE0:=              rust-std-${RUST_STAGE0_VER}-${RUST_ARCH}.tar.xz
@@ -333,7 +334,7 @@ SITES.${RUST_STAGE0}=               ${MASTER_SITE_LOC
 SITES.${RUST_STD_STAGE0}=      ${MASTER_SITE_LOCAL:=rust/}
 .endif
 .if ${MACHINE_PLATFORM:MNetBSD-*-sparc64} || make(distinfo) || make (makesum) || make(mdi)
-RUST_STAGE0_VER=               1.78.0
+RUST_STAGE0_VER=               1.79.0
 RUST_ARCH=                     sparc64-unknown-netbsd
 RUST_STAGE0:=                  rust-${RUST_STAGE0_VER}-${RUST_ARCH}.tar.xz
 RUST_STD_STAGE0:=              rust-std-${RUST_STAGE0_VER}-${RUST_ARCH}.tar.xz
@@ -343,25 +344,25 @@ SITES.${RUST_STD_STAGE0}= ${MASTER_SITE_
 .endif
 .if ${MACHINE_PLATFORM:MNetBSD-*-earmv7hf} || make(distinfo) || make (makesum) || make(mdi)
 RUST_ARCH=                     armv7-unknown-netbsd-eabihf
-RUST_STAGE0_VER=               1.78.0
-RUST_STAGE0:=                  rust-${RUST_STAGE0_VER}-${RUST_ARCH}.tar.xz
-RUST_STD_STAGE0:=              rust-std-${RUST_STAGE0_VER}-${RUST_ARCH}.tar.xz
+RUST_STAGE0_VER=               1.79.0
+RUST_STAGE0:=                  rust-${RUST_STAGE0_VER}-${RUST_ARCH}-${NB}.tar.xz
+RUST_STD_STAGE0:=              rust-std-${RUST_STAGE0_VER}-${RUST_ARCH}-${NB}.tar.xz
 DISTFILES:=                    ${DISTFILES} ${RUST_STAGE0} ${RUST_STD_STAGE0}
 SITES.${RUST_STAGE0}=          ${MASTER_SITE_LOCAL:=rust/}
 SITES.${RUST_STD_STAGE0}=      ${MASTER_SITE_LOCAL:=rust/}
 .endif
 .if ${MACHINE_PLATFORM:MNetBSD-*-earmv6hf} || make(distinfo) || make (makesum) || make(mdi)
 RUST_ARCH=                     armv6-unknown-netbsd-eabihf
-RUST_STAGE0_VER=               1.78.0
-RUST_STAGE0:=                  rust-${RUST_STAGE0_VER}-${RUST_ARCH}.tar.xz
-RUST_STD_STAGE0:=              rust-std-${RUST_STAGE0_VER}-${RUST_ARCH}.tar.xz
+RUST_STAGE0_VER=               1.79.0
+RUST_STAGE0:=                  rust-${RUST_STAGE0_VER}-${RUST_ARCH}-${NB}.tar.xz
+RUST_STD_STAGE0:=              rust-std-${RUST_STAGE0_VER}-${RUST_ARCH}-${NB}.tar.xz
 DISTFILES:=                    ${DISTFILES} ${RUST_STAGE0} ${RUST_STD_STAGE0}
 SITES.${RUST_STAGE0}=          ${MASTER_SITE_LOCAL:=rust/}
 SITES.${RUST_STD_STAGE0}=      ${MASTER_SITE_LOCAL:=rust/}
 .endif
 #.if ${MACHINE_PLATFORM:MNetBSD-*-mipsel} || make(distinfo) || make (makesum) || make(mdi)
 #RUST_ARCH=                    mipsel-unknown-netbsd
-#RUST_STAGE0_VER=              1.78.0
+#RUST_STAGE0_VER=              1.79.0
 #RUST_STAGE0:=                 rust-${RUST_STAGE0_VER}-${RUST_ARCH}.tar.xz
 #RUST_STD_STAGE0:=             rust-std-${RUST_STAGE0_VER}-${RUST_ARCH}.tar.xz
 #DISTFILES:=                   ${DISTFILES} ${RUST_STAGE0} ${RUST_STD_STAGE0}
@@ -370,7 +371,7 @@ SITES.${RUST_STD_STAGE0}=   ${MASTER_SITE_
 #.endif
 .if ${MACHINE_PLATFORM:MNetBSD-*-riscv64} || make(distinfo) || make (makesum) || make(mdi)
 RUST_ARCH=                     riscv64gc-unknown-netbsd
-RUST_STAGE0_VER=               1.78.0
+RUST_STAGE0_VER=               1.79.0
 RUST_STAGE0:=                  rust-${RUST_STAGE0_VER}-${RUST_ARCH}.tar.xz
 RUST_STD_STAGE0:=              rust-std-${RUST_STAGE0_VER}-${RUST_ARCH}.tar.xz
 DISTFILES:=                    ${DISTFILES} ${RUST_STAGE0} ${RUST_STD_STAGE0}
@@ -410,14 +411,6 @@ SUBST_VARS.prefix= PREFIX
 # updating and verification.
 #
 
-CKSUM_CRATES+= vendor/libc-0.2.151
-CKSUMS+=       6d0ed494ac7d7b2d4bc63bc913cf21df8f625ce57b5d4aa490c5457c772cb979
-CKSUMS+=       4d4b8d1e41d432c8b346ac1b3a8fd607be466999df0669c1beec3ccab5fa4d9a
-
-CKSUM_CRATES+= vendor/cc-1.0.73
-CKSUMS+=       38970d678de0efb4b5e2978265daa8a613a1db35fc42e669621b03fc56d5b138
-CKSUMS+=       65de0d6593a4256e5fcaf898f9468d71bab672c70a2dfab3dcb8514e9b72819c
-
 CKSUM_CRATES+= vendor/crossbeam-utils-0.8.18
 CKSUMS+=       31a8276afd38e39987a169eeb02e9bed32670de5ca36d7eb74aab7e506cf9dc4
 CKSUMS+=       ead4bda23c322bde8c01e48d4cd19b70e7b7e473a56466218d279f88463ab466
@@ -428,11 +421,61 @@ CKSUMS+=  f78ddd9b03c31a03350aa152d6f707c
 CKSUMS+=       b2cbaa5bfac5e7d5550aa0eb8e5c65a9f7e86a3692b759fb13330ef6e3b26b30
 CKSUMS+=       b303bf9ceae9fcffa4a0420ea858675d827fc2d75c358f8236e44274d58be1a0
 
-CKSUM_CRATES+= vendor/openssl-src-111.28.1+1.1.1w
+CKSUM_CRATES+= vendor/openssl-src-111.28.2+1.1.1w/
 CKSUMS+=       090744f85cf99a9b8412c23fca1eabb61eb45d830f0f9f0e7309be2572c1e827
-CKSUMS+=       4261f87c06e6505afd9f7bdafe5aebdd153a1c6f928203cec2dd125642d60fc1
-CKSUMS+=       c87f041ff9ada85cddcb2a787788e05b2ab5ffc0a85f502fe7e3f7cbda59d49c
-CKSUMS+=       67b877964bc0e40c84669c423818a3cb39501eaedfc3f5caf9c33d4779c3d03f
+CKSUMS+=       e8ca5ea1808323cd9f0cc9d53c7258bb2f3112e5eafc11dd457e010a80a9c8d8
+CKSUMS+=       cf331474674b6c4fff7e361d592c14131c97918d6f756b36698a7ac8ec845adb
+CKSUMS+=       bec36eddcf41c8639903ea7593751c92251100168241bc5696f8a776a55651fb
+
+CKSUM_CRATES+= vendor/libc-0.2.155
+CKSUMS+=       3e550d95419169febf094c425451ca86b12821fa17839b4b0ba7520b145a5820
+CKSUMS+=       1cf38d9ddeca5295821b4234e17e1fc749f35b00307bdfdacb24c6892a288ad6
+
+CKSUM_CRATES+= vendor/libc-0.2.154
+CKSUMS+=       3e550d95419169febf094c425451ca86b12821fa17839b4b0ba7520b145a5820
+CKSUMS+=       1cf38d9ddeca5295821b4234e17e1fc749f35b00307bdfdacb24c6892a288ad6
+
+CKSUM_CRATES+= vendor/zerocopy-0.7.32
+CKSUMS+=       2f21f18a4ca1d4be2d997f037158cb21a7421b2ba2cc52f3e4c5f9410197ed27
+CKSUMS+=       abe079743c2b2dea5b2c42564f98741a5eb9e24ff019e01742ace5581e53c06f
+
+CKSUM_CRATES+= vendor/zerocopy-0.7.34
+CKSUMS+=       c225b0b65ab955600b065a30f9d744ebb7754dff5a6e7c299464c5d1aba92ae7
+CKSUMS+=       c5da1cf7c0164039919074a72095090505bd9b68c2ed9d1ab5838061fef2999d
+
+CKSUM_CRATES+= vendor/memchr-2.7.2
+CKSUMS+=       24e8620d52da38b051c446864089cdfaba6fa3afc27e16a716aa36a716f6636f
+CKSUMS+=       1417d51a84f08d50e97f9f0870c485cf129ae66e3cfdf5bdd9908b243ace1319
+CKSUMS+=       5bb70f915084e629d940dbc322f5b9096b2e658cf63fea8a2f6e7550412e73a0
+CKSUMS+=       34aaa34eb7048e8bba49d390942ab707990380952f37f388f3cca30970c53450
+CKSUMS+=       44cd1a614bd66f1e66fc86c541d3c3b8d3a14a644c13e8bf816df3f555eac2d4
+CKSUMS+=       27f9bff08b24828e1a611b10a0282f5457d12e9e7254202040144d392297d720
+CKSUMS+=       7763472d43c66df596ca0697c07db0b4666d38a6a14f64f9f298aaf756c4a715
+CKSUMS+=       1b26fca824c410077780fbc2f4c53c1d195ba3bdf6785b529ceb0a11f039cec2
+CKSUMS+=       6ae779ec5d00f443075316e0105edf30b489a38e2e96325bec14ccecd014145b
+CKSUMS+=       28d66e566b73f6f0f7add4092874dc967ce133bfb6dcbd81f03c9a04b6e4e1d0
+
+CKSUM_CRATES+= vendor/memchr-2.7.1
+CKSUMS+=       5bb70f915084e629d940dbc322f5b9096b2e658cf63fea8a2f6e7550412e73a0
+CKSUMS+=       34aaa34eb7048e8bba49d390942ab707990380952f37f388f3cca30970c53450
+CKSUMS+=       44cd1a614bd66f1e66fc86c541d3c3b8d3a14a644c13e8bf816df3f555eac2d4
+CKSUMS+=       27f9bff08b24828e1a611b10a0282f5457d12e9e7254202040144d392297d720
+CKSUMS+=       36f1c03304261877cd7f75c7ed8f7daff7a5c570cedce375e38e9b1ca44467f7
+CKSUMS+=       ef7e45ffa02b11b07aa79636b1b3138f5757e3409d6fc8d0134c09308ed1942c
+CKSUMS+=       69c38fb33d8f1a2a26769a81e514428240c8f8f15cea5302873d90b80391dd89
+CKSUMS+=       16e36c43c9bb6c14c6fd9282d187864aa748ee0c9b0e2c022a72c66a4b2b30e8
+CKSUMS+=       ef823ae8c54053780a0e7aeaee14b6c6ac2aea4567bf701ae8be137806c6d293
+CKSUMS+=       e9bae14479a8b7f1b946d5b0a5e186085ad4ec330cc8b882d444117c4b556b00
+
+CKSUM_CRATES+= vendor/bytecount-0.6.8
+CKSUMS+=       01cd755a128d8a5892f3edda195b26bb461be375be17dd72e6e4f061169e6dff
+CKSUMS+=       a6750c0e2a6c385ec902cd7f87de7835fe2b4171b9c83da64122274ee20a77c6
+
+CKSUM_CRATES+= vendor/aho-corasick-1.1.2
+CKSUMS+=       840065521cbd4701fa5b8b506d1537843d858c903f7cadf3c68749ea1780874b
+CKSUMS+=       3236bb49a58837d63d8dfb7b3c9cae59f0f27b9f7adf8f4e1a978f6116f64fef
+CKSUMS+=       720735ea6c7ff92b081426513e6e82feed24a922849297bb538d28f7b8129f81
+CKSUMS+=       f41fe38e3a4860e6c8adee4852ab7f5cf683bcb0849c6a02f00f7701ad25af89
 
 SUBST_CLASSES+=                cksum
 SUBST_STAGE.cksum=     pre-configure

Index: pkgsrc/lang/rust/distinfo
diff -u pkgsrc/lang/rust/distinfo:1.174 pkgsrc/lang/rust/distinfo:1.175
--- pkgsrc/lang/rust/distinfo:1.174     Wed Jul 31 08:05:50 2024
+++ pkgsrc/lang/rust/distinfo   Sun Oct 13 19:04:39 2024
@@ -1,113 +1,113 @@
-$NetBSD: distinfo,v 1.174 2024/07/31 08:05:50 he Exp $
+$NetBSD: distinfo,v 1.175 2024/10/13 19:04:39 he Exp $
 
-BLAKE2s (rust-1.77.1-aarch64_be-unknown-netbsd.tar.xz) = 5423dd837f47538992a67313a83983b583148f670f561da1d2a256fc98b5e24d
-SHA512 (rust-1.77.1-aarch64_be-unknown-netbsd.tar.xz) = 449b8520f0904e15163e6a55bec5dcdb18c0e423b6dd2450f99dd061edcdbd33e9c4fe5dc874ab09b4efabd6199f9ad595f13ecd4d69d708c68f9fc54c1da6c4
-Size (rust-1.77.1-aarch64_be-unknown-netbsd.tar.xz) = 159858112 bytes
-BLAKE2s (rust-1.78.0-aarch64-apple-darwin.tar.gz) = ef58d6d3f11cf8164835287f4b5484f50b40222c7a7bba3c7d8035e90350dabe
-SHA512 (rust-1.78.0-aarch64-apple-darwin.tar.gz) = 7d7031a93afad03f90556e86a86c3fc2ec5ff9c71bc1f6ee26d7832c18d9375dcc6da122d0792f9465a97e1832e5ff98e74b5d0134133eff167443df18a37bd9
-Size (rust-1.78.0-aarch64-apple-darwin.tar.gz) = 330850938 bytes
-BLAKE2s (rust-1.78.0-aarch64-unknown-linux-gnu.tar.gz) = 05f4fb750348075a70588284eafd410a3a9c71b8e44b5eddfee2dc104973f291
-SHA512 (rust-1.78.0-aarch64-unknown-linux-gnu.tar.gz) = 91150da3a4412c447cbabe77d94585ef3b279a37fe208d4483d27c945abaef22686ae79e1ffad76dbaae2b3b95700dfa88c0e0657f1ebf154f520d3f3a9ab090
-Size (rust-1.78.0-aarch64-unknown-linux-gnu.tar.gz) = 474875165 bytes
-BLAKE2s (rust-1.78.0-aarch64-unknown-netbsd-nb1.tar.xz) = d690ca4901c0440956b573892165397814ad8fb0487b28df53d2fe7c59eb8265
-SHA512 (rust-1.78.0-aarch64-unknown-netbsd-nb1.tar.xz) = 3d0c7713da80081d37285972600ce717f5fe078ba5dc4bfc7b7b943fedb89c8a5b87bb6bce08ab9fa8e5c63038a88862e77e211459201a59e729aa94b9a2e680
-Size (rust-1.78.0-aarch64-unknown-netbsd-nb1.tar.xz) = 170867824 bytes
-BLAKE2s (rust-1.78.0-arm-unknown-linux-gnueabihf.tar.gz) = 9bcf4bf8c7225b02fcb4b84eedbe8aec32511ed849c2e49105a8484a713fcc1b
-SHA512 (rust-1.78.0-arm-unknown-linux-gnueabihf.tar.gz) = ddb9160f24edbaae174185ce2710d93831bc6253725bd7c1fae731cd9a8f3d6a115923ba050830ebe489eba9cee578b72f70f6aaa358a61deecfdaebcfe3b978
-Size (rust-1.78.0-arm-unknown-linux-gnueabihf.tar.gz) = 362035971 bytes
-BLAKE2s (rust-1.78.0-armv6-unknown-netbsd-eabihf.tar.xz) = 16aa3fb01f417c2b4752928934aa95680b444360ef0262b75a1c627f38347e0f
-SHA512 (rust-1.78.0-armv6-unknown-netbsd-eabihf.tar.xz) = 78f426b28d32bd5c4a54e6094f016de292fe49bdb190bfb12c68e16e8b82b6e8b497ede77f42409d93d26528f506672f9592f0037d51e2ff946c368e9b661f61
-Size (rust-1.78.0-armv6-unknown-netbsd-eabihf.tar.xz) = 145977172 bytes
-BLAKE2s (rust-1.78.0-armv7-unknown-linux-gnueabihf.tar.gz) = c5c6aab079cc211d38a7c84617a2195900de42f76ae99fcb1db5c4e6a64dadbd
-SHA512 (rust-1.78.0-armv7-unknown-linux-gnueabihf.tar.gz) = ef9b07f2de04b52cec4b66f205ca92ba20f0b541df10692e10e5bba05e0584b790fa88e490c8a0ad0554f8c34d3ec940e84aa103611757dd32a99f0071c12281
-Size (rust-1.78.0-armv7-unknown-linux-gnueabihf.tar.gz) = 350288561 bytes
-BLAKE2s (rust-1.78.0-armv7-unknown-netbsd-eabihf.tar.xz) = 9142653078521044a8eb33647ac4d91995043e4402326675f9ac42a03d812075
-SHA512 (rust-1.78.0-armv7-unknown-netbsd-eabihf.tar.xz) = e32b9493b6a7ae4a086e665696f33a67e1aa1f2760fb91388e31d317886b9a1975139d3c9f33eb3fd39df22e16cdade159e2fccc1477e73afd600632e3a978a8
-Size (rust-1.78.0-armv7-unknown-netbsd-eabihf.tar.xz) = 146942980 bytes
-BLAKE2s (rust-1.78.0-i586-unknown-netbsd.tar.xz) = bd0f22313590a0123e98418c004a2d86a479aacbfd1052d1c8209d44cb9ef795
-SHA512 (rust-1.78.0-i586-unknown-netbsd.tar.xz) = 6ac915c8f57e7e6ebe7e723250cee9a9687612d7222560afbb78aded33e76af9be10da3daaede413bf6d9b64b5ceb84ae9ec5e612077524ee9263ecde76eaa44
-Size (rust-1.78.0-i586-unknown-netbsd.tar.xz) = 184825112 bytes
-BLAKE2s (rust-1.78.0-i686-unknown-linux-gnu.tar.gz) = 0c2b231f1e00b17fbc7f9fa5c9d0f0398e3fc7661e8f970ff0eb97bfd2181e93
-SHA512 (rust-1.78.0-i686-unknown-linux-gnu.tar.gz) = 9f4364b4fac015f5eb845ec4265e38790f79411b75a5c59cca0564b1d357cb86c0a4083c70b84764cf8a5e2f088422fd8be93587d54bbb77488fe09705622d03
-Size (rust-1.78.0-i686-unknown-linux-gnu.tar.gz) = 425493624 bytes
-BLAKE2s (rust-1.78.0-powerpc-unknown-netbsd.tar.xz) = e67c5fa4e2ea2c95742ba3c22a6df92d933ea46b535c6fe04784f0ef0379df9e
-SHA512 (rust-1.78.0-powerpc-unknown-netbsd.tar.xz) = 1847fc72e1f8c6cac8d88b6d3f7c86d669a70df925528eb2387ef3bf8502618b49d321c56dcd77398fd006a1d4964309d6dd959062d2013c4d1619a67865db83
-Size (rust-1.78.0-powerpc-unknown-netbsd.tar.xz) = 197448876 bytes
-BLAKE2s (rust-1.78.0-riscv64gc-unknown-netbsd.tar.xz) = 0ead8e9d7645bc721db4cdc11b283bf66b0f11d0c2fc39aec5207ba6052fbd50
-SHA512 (rust-1.78.0-riscv64gc-unknown-netbsd.tar.xz) = 694ec55d004aa64cd84e1ac918392e3ed044e5a85f61cf1cba56d2ecaa17544134d5e3d825b60287f349da87c0a1199b8ce99d48cfb49d04e8e7983a19c19c42
-Size (rust-1.78.0-riscv64gc-unknown-netbsd.tar.xz) = 185943460 bytes
-BLAKE2s (rust-1.78.0-sparc64-unknown-netbsd.tar.xz) = bb0cf58c49e1192abbfb9ff8fdc16d0ce6ea787dd34525e831a631b15cb7ece8
-SHA512 (rust-1.78.0-sparc64-unknown-netbsd.tar.xz) = 2207e71911c81dd4f898e9d23d8775c7939e073180362b3c94f8ff17e38ebff80a90e7224c917eecd850cbf45c3df19811822ccbe14ed822d63b5d36dcb50b52
-Size (rust-1.78.0-sparc64-unknown-netbsd.tar.xz) = 166266668 bytes
-BLAKE2s (rust-1.78.0-x86_64-apple-darwin.tar.gz) = aad8f98c18f573987b65a1244a935684aee610fb4d119920fdfcc0a3f6762b1d
-SHA512 (rust-1.78.0-x86_64-apple-darwin.tar.gz) = cc839febf1f354d231d803681995b50728082c46d0377c9f8b6607f721f8745ac216e1980f6157b228390e9a836217639fa557194f03c65e425548390ceb658f
-Size (rust-1.78.0-x86_64-apple-darwin.tar.gz) = 335719964 bytes
-BLAKE2s (rust-1.78.0-x86_64-unknown-freebsd.tar.gz) = fff0115b65d8ffb9b70abcf7e8285611d8cd760ffdddc67b6d46edf2d6ae076c
-SHA512 (rust-1.78.0-x86_64-unknown-freebsd.tar.gz) = bf52d2618d69c6f34cbf18c58b95c207012b16d8a6da638e4efe5ce31632626cefaf75665160823ea9af66696ec8ad0cfdd89c8796637b75778406bbdc29b229
-Size (rust-1.78.0-x86_64-unknown-freebsd.tar.gz) = 319902268 bytes
-BLAKE2s (rust-1.78.0-x86_64-unknown-illumos.tar.gz) = ccd4c419131a8145a9b83e9ec0ad682a9e16b168e7f0037e2d794bd5522fc504
-SHA512 (rust-1.78.0-x86_64-unknown-illumos.tar.gz) = f7f1e9977f000ad9f7a613b1bdb0fc93376f94db05d91fd28e6f50bbea601a10ded925467d777a6385565c378b22fd81a39dd54e0167bea3ba40cdcac166b029
-Size (rust-1.78.0-x86_64-unknown-illumos.tar.gz) = 209717842 bytes
-BLAKE2s (rust-1.78.0-x86_64-unknown-linux-gnu.tar.gz) = a385bbb68437fb226a39fbe99ed8cc68f9ab9dfa59d825d0a7c7dbaa6353eba4
-SHA512 (rust-1.78.0-x86_64-unknown-linux-gnu.tar.gz) = 551f6c672918ef43b9ca7654085488f40b7722062129fc2fdc850c0f92473279cc4229a17ffbcbd605d5a4d24c6207a6d4ab2334b4d9a988abdef4e0b7e0d824
-Size (rust-1.78.0-x86_64-unknown-linux-gnu.tar.gz) = 326774226 bytes
-BLAKE2s (rust-1.78.0-x86_64-unknown-netbsd.tar.xz) = 29aa8804f3e2076f7de703cba463ec08d46f01326912b2c691349400188ca249
-SHA512 (rust-1.78.0-x86_64-unknown-netbsd.tar.xz) = 53d33a622116f96c4cdf8e4adbd0c6d0bc2a0bdfe8cb3ffe148a398f79eec719fdb005d2f0ad78cfdadf7ce352cad0e84f8ec9c222b3892e7ec7aad4ad04509c
-Size (rust-1.78.0-x86_64-unknown-netbsd.tar.xz) = 161935268 bytes
-BLAKE2s (rust-std-1.77.1-aarch64_be-unknown-netbsd.tar.xz) = 7c0740d555c35930695d3a987a5dc6614308dcce5fab93fd670a32cee2d10af6
-SHA512 (rust-std-1.77.1-aarch64_be-unknown-netbsd.tar.xz) = 24c1aa3306701a8d3eea284fe316a7b369a2b6d97716a7de339561ed3e3090456fa503c0ec1d3272ac91591b2e231fda44bbd5c32f06ca55c2072233851070e6
-Size (rust-std-1.77.1-aarch64_be-unknown-netbsd.tar.xz) = 22754836 bytes
-BLAKE2s (rust-std-1.78.0-aarch64-apple-darwin.tar.gz) = 29048dbf11ecc76a6735e70df876fa79b826eed117b5900ace02599cb7f8c481
-SHA512 (rust-std-1.78.0-aarch64-apple-darwin.tar.gz) = ed6646f6b49108fe97685038284e0619652530dc8ba13ed6069bb48413d10d29685b4d790ba26b2c582f913b222c7b756f373f7abb93ad7b6e9389c8791e814a
-Size (rust-std-1.78.0-aarch64-apple-darwin.tar.gz) = 39778441 bytes
-BLAKE2s (rust-std-1.78.0-aarch64-unknown-linux-gnu.tar.gz) = 9abe969803d702b55507b70164c204a614682157b46070162a2b49950534c2da
-SHA512 (rust-std-1.78.0-aarch64-unknown-linux-gnu.tar.gz) = 5c7c63981bb6ae55342619ba9f435039cddb02ac4108266b9a813addecbb56ee446a61f113ddfea211f21aea4b174b9c49c3f5805ba9280195cb4c115519787b
-Size (rust-std-1.78.0-aarch64-unknown-linux-gnu.tar.gz) = 64560072 bytes
-BLAKE2s (rust-std-1.78.0-aarch64-unknown-netbsd-nb1.tar.xz) = d9bae6da7f52fe6df16e57d0cc65ce383da90a742ded555694c158a0c595a915
-SHA512 (rust-std-1.78.0-aarch64-unknown-netbsd-nb1.tar.xz) = dfab5148028290538c0aee608828029c4c87823a29da8535b7ba0d9f975b094500e3258167697673354767ed735104ee1f22fd16b45a89c84dacf6c94d6c7f29
-Size (rust-std-1.78.0-aarch64-unknown-netbsd-nb1.tar.xz) = 22585292 bytes
-BLAKE2s (rust-std-1.78.0-arm-unknown-linux-gnueabihf.tar.gz) = f0c214c03267590cd861ec5b6b5ba765b8264f5bc2e1fcd682238c7a4eedb2a4
-SHA512 (rust-std-1.78.0-arm-unknown-linux-gnueabihf.tar.gz) = abee9d658095e26ae22f0e5f47d1634f8572b355610e668b3cccb407977abc45ab65ab1cebf5f6525e4fdd893ca0d619e8c020c95bbfc9dc9e38883d929e1ada
-Size (rust-std-1.78.0-arm-unknown-linux-gnueabihf.tar.gz) = 36357258 bytes
-BLAKE2s (rust-std-1.78.0-armv6-unknown-netbsd-eabihf.tar.xz) = 25b882243c00aed69e7acfb485c979d5709283a17da23b846b04041b0a894a08
-SHA512 (rust-std-1.78.0-armv6-unknown-netbsd-eabihf.tar.xz) = 3498445e862396be1005b944bc4cb2a1b094f071e65b4b0400c86ca94c8cf770155e09c164bc081d82630b5e8d022caf175325138218793dd3a0a8293fd53902
-Size (rust-std-1.78.0-armv6-unknown-netbsd-eabihf.tar.xz) = 21223440 bytes
-BLAKE2s (rust-std-1.78.0-armv7-unknown-linux-gnueabihf.tar.gz) = b1328fb2c8922fb52ca7948c8110f4b18d4466e8b5b5edf661a88dc5128b2ff8
-SHA512 (rust-std-1.78.0-armv7-unknown-linux-gnueabihf.tar.gz) = d2d5a3f27bbadcb4211f663581896074340f3c9bdf2ea28a0aa1ef7e7cb0f2596ff2fb4a6ba27ee44e45175917b6800b01d31a821d9ebb9d428140d8c3eecae8
-Size (rust-std-1.78.0-armv7-unknown-linux-gnueabihf.tar.gz) = 37721609 bytes
-BLAKE2s (rust-std-1.78.0-armv7-unknown-netbsd-eabihf.tar.xz) = d3c0fd60ef8740bcce1b998130a21af6dec5484924a320a47399e8391d73ec46
-SHA512 (rust-std-1.78.0-armv7-unknown-netbsd-eabihf.tar.xz) = 190e508ebb1ab0cb51fc32b865c8054bac28da717493fbbe06c4d42113d81c17a5005e23cbc50a87d22d3db6bd29f674ec29439af3aff0bce202026b1752e0b1
-Size (rust-std-1.78.0-armv7-unknown-netbsd-eabihf.tar.xz) = 22046616 bytes
-BLAKE2s (rust-std-1.78.0-i586-unknown-netbsd.tar.xz) = 758f4ce5609f40bc8f818004e0f04b0833bad3c0166d79a31a2d2c5afa76fd8c
-SHA512 (rust-std-1.78.0-i586-unknown-netbsd.tar.xz) = 8a88d34359a3f4e6e743cddd53f5211fcfed4b13eceb47f433d2d5c29c086696004a3e1aa343b4a3a40d7898a8d6437e6f36f57cb0c50b15017341306a611065
-Size (rust-std-1.78.0-i586-unknown-netbsd.tar.xz) = 23193192 bytes
-BLAKE2s (rust-std-1.78.0-i686-unknown-linux-gnu.tar.gz) = 05f4d209c0e987106bdaa1ce9d46ea2dd3686938801441c4f0b13ec168a9d419
-SHA512 (rust-std-1.78.0-i686-unknown-linux-gnu.tar.gz) = bad84e609c66b02adfbc4fc5f2ed602eb68e314e57e38ede4507fa23ff7126210c27077ede8d0e0cc66fa1b25875967d4ea93488acbf916d359cd5fb648a43e0
-Size (rust-std-1.78.0-i686-unknown-linux-gnu.tar.gz) = 39506316 bytes
-BLAKE2s (rust-std-1.78.0-powerpc-unknown-netbsd.tar.xz) = 612b69d810dcc0d1649028ef802be5321f53bbcaba2af56ec8ec3301f8e19354
-SHA512 (rust-std-1.78.0-powerpc-unknown-netbsd.tar.xz) = a593ea6f26e0825c27e66284cc26e594bbdc01546ee2aa023059c7da1a6de46bc5461719ad2cc2648d5a8b7f6e6621ffc721c1eaa6d03fdf60ed8c6d160665eb
-Size (rust-std-1.78.0-powerpc-unknown-netbsd.tar.xz) = 21433012 bytes
-BLAKE2s (rust-std-1.78.0-riscv64gc-unknown-netbsd.tar.xz) = 1927d0d344684576ebc0212efa8b4ef7820e5530676d92831925d49835b7e24f
-SHA512 (rust-std-1.78.0-riscv64gc-unknown-netbsd.tar.xz) = 8b9e891406ce335b5426e90fe05f6dda06334dd763b8f151dc20aec925e11ad2edef624188ce075a703fdf965a6171b2e6417569dd02f1fe023e4bb592cbe4a2
-Size (rust-std-1.78.0-riscv64gc-unknown-netbsd.tar.xz) = 21526444 bytes
-BLAKE2s (rust-std-1.78.0-sparc64-unknown-netbsd.tar.xz) = 19bd782ed3f0d2655dd78fe59860eb119afc19582fad3475bf750bc85b18c04f
-SHA512 (rust-std-1.78.0-sparc64-unknown-netbsd.tar.xz) = 678456ce3c35923daecb86aebe62e57dc92d143837966ec606b51bb00967bed3d59356439306d5a280b1949b57a95fc579b64f73d75247ece81063abd15d521a
-Size (rust-std-1.78.0-sparc64-unknown-netbsd.tar.xz) = 21134568 bytes
-BLAKE2s (rust-std-1.78.0-x86_64-apple-darwin.tar.gz) = 73b1ab41776d891ed8f8b9867a83b321c10cb9e0fbb9934f86e855a8a9ae1e26
-SHA512 (rust-std-1.78.0-x86_64-apple-darwin.tar.gz) = e41388dc1587b5f1b23062dd225ecaae8393ae9164051d581ee01c3c4bd1fba3fb2a4980dfdd10eb8fa9acc995a30f4f1bd7da51f39c9ed485f5df3ee6fea5ef
-Size (rust-std-1.78.0-x86_64-apple-darwin.tar.gz) = 41523019 bytes
-BLAKE2s (rust-std-1.78.0-x86_64-unknown-freebsd.tar.gz) = 3cdf8db876e03d783e58c5c0c598fd51f1f78e2feb5fc5b0dfb9067ae728858c
-SHA512 (rust-std-1.78.0-x86_64-unknown-freebsd.tar.gz) = a5bbb47675b1b4e5586d2a45c49700a831bd198f484cc0b2db52e3e5170b7e8e897c858ba2bb0dc7c5aebc5a628254b352ae98d7469b70654c7d042988d2450a
-Size (rust-std-1.78.0-x86_64-unknown-freebsd.tar.gz) = 42445481 bytes
-BLAKE2s (rust-std-1.78.0-x86_64-unknown-linux-gnu.tar.gz) = e285e339e812462b3372eb9fd8a2a54b52be0739a77e126bd418563de8b570b4
-SHA512 (rust-std-1.78.0-x86_64-unknown-linux-gnu.tar.gz) = 78bd1f85d048352ac1a57f8b161efb63e255b44cd2aa57ce03bce0dae1adc98809f9ade663da0a45a82dc64f61a7975d3b1aefe59a8f3b7d46b6885d994cd150
-Size (rust-std-1.78.0-x86_64-unknown-linux-gnu.tar.gz) = 44933966 bytes
-BLAKE2s (rust-std-1.78.0-x86_64-unknown-netbsd.tar.xz) = 034e17b185290d6b6b6f29ac75adb69e6e7615d506412834053af52c297caca8
-SHA512 (rust-std-1.78.0-x86_64-unknown-netbsd.tar.xz) = aaedb65856e9941e3f248a3436b90e1ab3b0bd4725f5bbaf2ebce1372dd8e318755a80ac592ea2f1bcd867d7938731b1270428243b4c87ab0a12f4a2981f0fdc
-Size (rust-std-1.78.0-x86_64-unknown-netbsd.tar.xz) = 23245376 bytes
-BLAKE2s (rustc-1.79.0-src.tar.gz) = 0d2faf6d2455275a09c78a0f8e3e1bfa5d864b5dfc70980f7ee42c188422f4fc
-SHA512 (rustc-1.79.0-src.tar.gz) = 4fa7385b2e89816849f1c353be3bf8fd36c05896ca7ded53dedfb92876ab2f40b77235a9eaa84ab34c045ddcd3a5c67644a986b9cc8695e5f824d22416bcd018
-Size (rustc-1.79.0-src.tar.gz) = 297469050 bytes
+BLAKE2s (rust-1.79.0-aarch64-apple-darwin.tar.gz) = 9f50d07420f6344cdc67198ee3194b5fed2957260dd5dddc054a7af8c53d9afd
+SHA512 (rust-1.79.0-aarch64-apple-darwin.tar.gz) = d46685ba1542ea3c6f4e514d49538c41e21c8117d45a2cf1c7724604e5eb86a3a6e3a830fec271b117d52b2896fd77bc5b35aaa35e7e5e937f43ec34870d5fb9
+Size (rust-1.79.0-aarch64-apple-darwin.tar.gz) = 333587301 bytes
+BLAKE2s (rust-1.79.0-aarch64-unknown-linux-gnu.tar.gz) = 136afff99dc44f6744beb9fed6deab00a8f43ba52b58d1425c65abea62ffef29
+SHA512 (rust-1.79.0-aarch64-unknown-linux-gnu.tar.gz) = 2c7da6e98a3e4e253e52fcdbcccc9dedfdb318245d01ffa487b7c0e4a08be57074e5729c078656df1a4a62b3152b0d9570de5c7436a4e5e85706987f6cd0678c
+Size (rust-1.79.0-aarch64-unknown-linux-gnu.tar.gz) = 477659187 bytes
+BLAKE2s (rust-1.79.0-aarch64-unknown-netbsd-nb1.tar.xz) = c86fcc8553ab79979a707069f8601c7cfeeaff2ca098b2fda98e09829a29f371
+SHA512 (rust-1.79.0-aarch64-unknown-netbsd-nb1.tar.xz) = 71900dcb88166b7325aeb989d8e393963b4f4d175840edc7346b2d9a21cc533f1db6e9d6d79908016f67a7fee335f914f599381a858b30572ca89a49512a1ece
+Size (rust-1.79.0-aarch64-unknown-netbsd-nb1.tar.xz) = 170829728 bytes
+BLAKE2s (rust-1.79.0-arm-unknown-linux-gnueabihf.tar.gz) = 0bda605889f1664f1d007ecc8896ac4bd879372a7daea63ca3ac85775f28d9b7
+SHA512 (rust-1.79.0-arm-unknown-linux-gnueabihf.tar.gz) = 1194a450e5d977214dc3e73c303e6e2f3de0777957d16ec6c6bbb5bac8ea79b09b878cd7764ac59ec141f21b68107117c9e24da4defd5375f69b3fb8b9bd9a18
+Size (rust-1.79.0-arm-unknown-linux-gnueabihf.tar.gz) = 363633916 bytes
+BLAKE2s (rust-1.79.0-armv6-unknown-netbsd-eabihf-nb1.tar.xz) = bb347bcf94c7bf4534abd9fec799072badd3b2581c5089217864f44396c2a04e
+SHA512 (rust-1.79.0-armv6-unknown-netbsd-eabihf-nb1.tar.xz) = 4417738b8593db3b1cb21f1f1389640a33ec4b000f5fe76964a14a8bf0520b5c30f0ccf513f610d2dd47f7886b84bbe978574dcaa50d93ce690557170500b410
+Size (rust-1.79.0-armv6-unknown-netbsd-eabihf-nb1.tar.xz) = 146628408 bytes
+BLAKE2s (rust-1.79.0-armv7-unknown-linux-gnueabihf.tar.gz) = edf09f1edba4afd399bfc6bea239ab48ae1989187909aeb8f1181f190d38c69b
+SHA512 (rust-1.79.0-armv7-unknown-linux-gnueabihf.tar.gz) = 81399eccfd2766a31a824ec8130f8018c3abe668a7f86f6918780bebf761183063d1bf1af154f54cb44930e1ca755f451c654b24c9f20e00162481f0021e5167
+Size (rust-1.79.0-armv7-unknown-linux-gnueabihf.tar.gz) = 351946164 bytes
+BLAKE2s (rust-1.79.0-armv7-unknown-netbsd-eabihf-nb1.tar.xz) = cda96f407be700f67fd6b68e9f631d9a8119c794a1df497553336883f6318b98
+SHA512 (rust-1.79.0-armv7-unknown-netbsd-eabihf-nb1.tar.xz) = 7cec5490e07d18e8b5aaf5a27f758e38b77c6c54b2296187a06bd37c98da499a952835dd015c030800f095821f3d60211e23ceedee594ca0328a18d92ab8c264
+Size (rust-1.79.0-armv7-unknown-netbsd-eabihf-nb1.tar.xz) = 149672748 bytes
+BLAKE2s (rust-1.79.0-i586-unknown-netbsd.tar.xz) = 059c032bb835c281da45c95a979ef0d99ed2911b4b86c6a58841f471e738d11f
+SHA512 (rust-1.79.0-i586-unknown-netbsd.tar.xz) = 46f32ec247c2ae87e3414c262eb726bb7988341bcb9b37ed23b8ad4d6480cc8207657f2d18c0c9302292bbf2bcb806d85fd7b4f986579f00dc15b8178be593c9
+Size (rust-1.79.0-i586-unknown-netbsd.tar.xz) = 185694828 bytes
+BLAKE2s (rust-1.79.0-i686-unknown-linux-gnu.tar.gz) = 31d7466f796971968a518084ae9e2d2707f1f6e60957b661d587e8eba7254c80
+SHA512 (rust-1.79.0-i686-unknown-linux-gnu.tar.gz) = b2972d14c5dbb12df7b57cf2aed0d0402f2b8295b0fc80da7fd385803da03d63ab8d5e27c7d6693bdbe5802597d130e9fc9667bca616e5cc81d283c23fe347c7
+Size (rust-1.79.0-i686-unknown-linux-gnu.tar.gz) = 429029849 bytes
+BLAKE2s (rust-1.79.0-powerpc-unknown-netbsd.tar.xz) = 7885fb1fe5077ad82bdeb560bb9af4c21eabe9a3ff9f6afcd9e9f1dd1d641c7c
+SHA512 (rust-1.79.0-powerpc-unknown-netbsd.tar.xz) = 60820e694a88e85eda6f333c77950ee7b3adf67b3071b15c93220b120d0ce72ee54daf959e824e52d9ff0bfd76d0786db75d3aa2b2b17e1fb04475464c9a3076
+Size (rust-1.79.0-powerpc-unknown-netbsd.tar.xz) = 198348404 bytes
+BLAKE2s (rust-1.79.0-riscv64gc-unknown-netbsd.tar.xz) = bb67f5cdd034cf0bb3a873396de7090721254a6734556886f8f93e11cd1d8a03
+SHA512 (rust-1.79.0-riscv64gc-unknown-netbsd.tar.xz) = 2ddd905d72ddb65cd5ed84b09169983374c2e9868a375f77a477c8e1efe47e0fa72d894fd38ac6cc57e8dfef3a09bb16aa87eef42f1fb222ea287e90c923fe98
+Size (rust-1.79.0-riscv64gc-unknown-netbsd.tar.xz) = 187669196 bytes
+BLAKE2s (rust-1.79.0-sparc64-unknown-netbsd.tar.xz) = a1f76c31603cfc04d44a606f9be7a3fb0c50be5ed9f83f7e265fc4dcf89172a2
+SHA512 (rust-1.79.0-sparc64-unknown-netbsd.tar.xz) = 7671b15ed3290ee9ea1541b0770cd970c7baf6a9fcd615ae0757cd972665d9cf2e1ac54c47f89a8e45263c62090016852957778f78cf889d457aa6b1363008fb
+Size (rust-1.79.0-sparc64-unknown-netbsd.tar.xz) = 167745612 bytes
+BLAKE2s (rust-1.79.0-x86_64-apple-darwin.tar.gz) = 748d746565059239c098d3ecd03c12821393dd4c0202b4071265cb8dc4c19d69
+SHA512 (rust-1.79.0-x86_64-apple-darwin.tar.gz) = 978cacdb6c4e5d4b38a1b28eaaca38ed0eeb81bf67f68bdda2f6fde19da80b4bb58f4b305c661df51a4ee9085a7d2ee0859e89167afbe87806373af77363416b
+Size (rust-1.79.0-x86_64-apple-darwin.tar.gz) = 338174040 bytes
+BLAKE2s (rust-1.79.0-x86_64-unknown-freebsd.tar.gz) = 2be5e32b34aa254bdf24e59f5f58f7814926db30cf740df52d16b7fd5e08f99c
+SHA512 (rust-1.79.0-x86_64-unknown-freebsd.tar.gz) = 886e21c494d2bcaab307f51c66033bcda76100028804c86fcbb25c5eaab329b4cb05d060350270fc98e1291d6c6fea1dcf0c71668cc74517a4b405f6078c8fa2
+Size (rust-1.79.0-x86_64-unknown-freebsd.tar.gz) = 321707464 bytes
+BLAKE2s (rust-1.79.0-x86_64-unknown-illumos.tar.gz) = 935497255d398ab3264d8be8072836c7934ecdf136007b439b33ff5cbb1fbc25
+SHA512 (rust-1.79.0-x86_64-unknown-illumos.tar.gz) = 992bba31f2a17c9076ac265736f692b700afd957bce2058286930bf180ef01a931f0d56c0834194d245bc826d00bc88e8edb4f3ee3b5048f047e6eaa427b6e1d
+Size (rust-1.79.0-x86_64-unknown-illumos.tar.gz) = 213199204 bytes
+BLAKE2s (rust-1.79.0-x86_64-unknown-linux-gnu.tar.gz) = 62b441a4f50d7cf43ac0fc88d7f8cfa130660e631e7e054fb8ac09add329f497
+SHA512 (rust-1.79.0-x86_64-unknown-linux-gnu.tar.gz) = 70ce4774fea419b09b6ce4cce3de5392070d07db62c05c67964bd5317bf8de521705330c2bbbd6ad8418ca4e1cb37bfce8def83bdde9577fd66a57fbe48bc78e
+Size (rust-1.79.0-x86_64-unknown-linux-gnu.tar.gz) = 329537108 bytes
+BLAKE2s (rust-1.79.0-x86_64-unknown-netbsd.tar.xz) = 4971fcf283e43e1b3b2bc3819da73d9e8991537aece847d321d9972457f4b18c
+SHA512 (rust-1.79.0-x86_64-unknown-netbsd.tar.xz) = 7b1b94da389b79afce60e769578defd9bcec6427c95071ebf9556dee70a958e7cc38d40f3fb24a26955c2d662c4a2114657ed25f7091b0a282666505b89dde40
+Size (rust-1.79.0-x86_64-unknown-netbsd.tar.xz) = 163729172 bytes
+BLAKE2s (rust-1.80.1-aarch64_be-unknown-netbsd.tar.xz) = 269594581c9530022621bf1ff077b55655ab86c71dd165a2eab6afaeb85711c3
+SHA512 (rust-1.80.1-aarch64_be-unknown-netbsd.tar.xz) = 9af9f238a5b51757271f39c6ddc78b294768679ee2cd931f4c8d81022f0d9c91b31e9ff9a73a76d109e9ae87f494138a64f3320adf130b2dc42ae3caacfa4e2d
+Size (rust-1.80.1-aarch64_be-unknown-netbsd.tar.xz) = 170426396 bytes
+BLAKE2s (rust-std-1.79.0-aarch64-apple-darwin.tar.gz) = 2a9c0de6207701699e0c1b7d68ea43e26d857e4d43d61ee4fbc28ae77b0017fa
+SHA512 (rust-std-1.79.0-aarch64-apple-darwin.tar.gz) = 431074b739f6fb9e21c68af8484e0bc3c496fde2be18e55ccb576514c76248775ca1bb5c9477b6062c9e0e5f68fedf9a18ff34e20ecf50a11157bd4c9dd4284a
+Size (rust-std-1.79.0-aarch64-apple-darwin.tar.gz) = 40079416 bytes
+BLAKE2s (rust-std-1.79.0-aarch64-unknown-linux-gnu.tar.gz) = 3143b18f7c86960717f04941efacaeebbf16363ce2db53e825afb0c2e47b688d
+SHA512 (rust-std-1.79.0-aarch64-unknown-linux-gnu.tar.gz) = b24d93f4d2b715912f097e6774570e6f8753e260b1f89043932a8ef8645266b4c63d7b4814364a96a5f77b08ab4bbe603bf053f000f8c8a8c8ad6115e8da39e2
+Size (rust-std-1.79.0-aarch64-unknown-linux-gnu.tar.gz) = 64793520 bytes
+BLAKE2s (rust-std-1.79.0-aarch64-unknown-netbsd-nb1.tar.xz) = fb51ee6c651efd914bfd99d66aebaa1539275335ef623a940434c35145c237d4
+SHA512 (rust-std-1.79.0-aarch64-unknown-netbsd-nb1.tar.xz) = a5c46b0ad9820e78ea7ee93ead375d7e62506255d6816eb8682a859a791cca87e79d7a7a15f65b65f7669bd73de4e52dee9e4ff6a94458c3b61cc8b4acb121de
+Size (rust-std-1.79.0-aarch64-unknown-netbsd-nb1.tar.xz) = 22716260 bytes
+BLAKE2s (rust-std-1.79.0-arm-unknown-linux-gnueabihf.tar.gz) = ce68e3890deebf05625baf3e092861a290a3aa50aee1684810b3a35f0310e192
+SHA512 (rust-std-1.79.0-arm-unknown-linux-gnueabihf.tar.gz) = ffac025928a27c71979b71c577ef98fed87c2defafb2dadc48a0e2fbe13a54a6489422abb72d1508c6794ad94c73e7e562156c91d5ff1cc51275e67eefe75772
+Size (rust-std-1.79.0-arm-unknown-linux-gnueabihf.tar.gz) = 36633906 bytes
+BLAKE2s (rust-std-1.79.0-armv6-unknown-netbsd-eabihf-nb1.tar.xz) = ea9792eb9210d3d6f954a5419d4d1f3fe0f968126fa024bff63e0b44944c3f23
+SHA512 (rust-std-1.79.0-armv6-unknown-netbsd-eabihf-nb1.tar.xz) = d4df5ddb3b1684d6d0b708ac99693b59141bfa0ace14e9a96903cf8cab30e4b51f296a52167a9f7dd423f414211d60a1fdbadd3629c39d11550f3b82570688d4
+Size (rust-std-1.79.0-armv6-unknown-netbsd-eabihf-nb1.tar.xz) = 21402768 bytes
+BLAKE2s (rust-std-1.79.0-armv7-unknown-linux-gnueabihf.tar.gz) = a0ade8d56901d1658cc6080a63cc41b7c04675aa2ace95d421e7902015c55e73
+SHA512 (rust-std-1.79.0-armv7-unknown-linux-gnueabihf.tar.gz) = 27995922b119d96df8bd52f186a6d5ed5b217012d7c7afc95e888414d1049c8446bee0585b83ecd063851496f5e5632d7975f2526c5e13bc07fa2a0ca1a5adf2
+Size (rust-std-1.79.0-armv7-unknown-linux-gnueabihf.tar.gz) = 38006875 bytes
+BLAKE2s (rust-std-1.79.0-armv7-unknown-netbsd-eabihf-nb1.tar.xz) = 262006ae1f3d8a962e98e3338946aab656216fefb48dc92e3d727e4d53fb3ab4
+SHA512 (rust-std-1.79.0-armv7-unknown-netbsd-eabihf-nb1.tar.xz) = 73084c0b1266964a33175a751219824110be77d705e976069b94d5daca072322c84cf028c9f6861d09990bd4164dd20a3d3e452a75523a2a44e2f7a1502a308b
+Size (rust-std-1.79.0-armv7-unknown-netbsd-eabihf-nb1.tar.xz) = 22236560 bytes
+BLAKE2s (rust-std-1.79.0-i586-unknown-netbsd.tar.xz) = 88024c08e8da6134bf68b402eea1eb2ebb17d62ff89db778863f517b78bcae6b
+SHA512 (rust-std-1.79.0-i586-unknown-netbsd.tar.xz) = 98d963da79b9959e63a9c240f2c8f7de34bf9901f33f5b2c518229e2d3b31c183d1b78fb04cc2e5b44b6c1d014195adda5fe7554dc5075e284509d0d88e4ea7b
+Size (rust-std-1.79.0-i586-unknown-netbsd.tar.xz) = 23206832 bytes
+BLAKE2s (rust-std-1.79.0-i686-unknown-linux-gnu.tar.gz) = ce1a9636585f59c3e688866f26f81bbf832092b4f721a3b272a730184856214f
+SHA512 (rust-std-1.79.0-i686-unknown-linux-gnu.tar.gz) = 2f449a6799a8df565fea267025a499a9191fc9de8a59d8400e42afc4fe7974f522bd6c236e2fb4f31828e542e4f3def2b48ddd5b44ff2574ea2c8ac16cd4ef35
+Size (rust-std-1.79.0-i686-unknown-linux-gnu.tar.gz) = 39691484 bytes
+BLAKE2s (rust-std-1.79.0-powerpc-unknown-netbsd.tar.xz) = 2dee1e3ea6419c883f86b11e54b32d6162bab9657b820f2da6be16103af7dacd
+SHA512 (rust-std-1.79.0-powerpc-unknown-netbsd.tar.xz) = 71178391f0d2c75b8edebc2106c63e760192bd1746002e8cce04802936ae678b0f650aa76e5d421631fca28abc3ddf6b378bc72ffecb2d87a7efed824062e1d0
+Size (rust-std-1.79.0-powerpc-unknown-netbsd.tar.xz) = 21572064 bytes
+BLAKE2s (rust-std-1.79.0-riscv64gc-unknown-netbsd.tar.xz) = 1d84d2509de80175b71e4c47fc98aa6873bd2fd7c36e0e5cdbf4c0d250d897f5
+SHA512 (rust-std-1.79.0-riscv64gc-unknown-netbsd.tar.xz) = 2ab1b358b028023facd1f948287a65ba0855aaf315ba504e09fb178093ae8119407188012a0ebbf5b2282679b0a0db24011ef66f82046319cc918c1bbe05c9a3
+Size (rust-std-1.79.0-riscv64gc-unknown-netbsd.tar.xz) = 21517900 bytes
+BLAKE2s (rust-std-1.79.0-sparc64-unknown-netbsd.tar.xz) = 53210e31662e2c379a875b3e979b36e86bfc4a2ac5d51afbe59e274e13433d7a
+SHA512 (rust-std-1.79.0-sparc64-unknown-netbsd.tar.xz) = 657f9b409c40c2b59ff7638b67c2e67af35ff789dfd60aab3e0b4d57874b56a6559320869528e9e7683e3abde005328358d5df908004c375ab8120c7a016887e
+Size (rust-std-1.79.0-sparc64-unknown-netbsd.tar.xz) = 21195912 bytes
+BLAKE2s (rust-std-1.79.0-x86_64-apple-darwin.tar.gz) = 795f2e1d819d72caa457261a4705067c3dd0d2c1f62d80d9d470015c88a3d6c4
+SHA512 (rust-std-1.79.0-x86_64-apple-darwin.tar.gz) = 213cac375caff4c6e4958b547ea8bddc65ffacba3b9b6a9f9a785605d9f6215ac6e765b319d8761dd162b1fc6dccdc81ed17f36611ccb549f4d0de132c8acfbb
+Size (rust-std-1.79.0-x86_64-apple-darwin.tar.gz) = 41816064 bytes
+BLAKE2s (rust-std-1.79.0-x86_64-unknown-freebsd.tar.gz) = aaecc0acec6b054b6a04222e86717cf0ce7bcf1521dfdad86de344578b2feb56
+SHA512 (rust-std-1.79.0-x86_64-unknown-freebsd.tar.gz) = 4a18c59f59b3be8d4e8507add54be24e5c2512f92d0ea6df94951de2113a8e884b19aa45566a96c7bd3f7a6b21cffe4105d6206148bc4f63cf2e9b3ba18147d5
+Size (rust-std-1.79.0-x86_64-unknown-freebsd.tar.gz) = 42728681 bytes
+BLAKE2s (rust-std-1.79.0-x86_64-unknown-linux-gnu.tar.gz) = c7c609fdc4cbc2b2b809fa38057c8b4e0e2fee4b27146f22c943e34d8df20c13
+SHA512 (rust-std-1.79.0-x86_64-unknown-linux-gnu.tar.gz) = aa836c267341c5b902a010e330931778d948c0dc202184fd95e5dc98efbfa9e1e0e3a79a5e0fc3bf1e22cf7862425c72e8ae853783fa5efd962ce8d6f5badffb
+Size (rust-std-1.79.0-x86_64-unknown-linux-gnu.tar.gz) = 45178826 bytes
+BLAKE2s (rust-std-1.79.0-x86_64-unknown-netbsd.tar.xz) = 539c691f46329683c01e37a065fff061c6fbc7c6aedc14bccff579844003c3b6
+SHA512 (rust-std-1.79.0-x86_64-unknown-netbsd.tar.xz) = f8f82e8c9a5f49ac60db401178777b7e7a12486c4a21ea9b555af4a9ea765b9122803d3e13eb0f16ce94790d1a92344f0bc75910ff39ffcb2d8559e9c00d4c1c
+Size (rust-std-1.79.0-x86_64-unknown-netbsd.tar.xz) = 25697328 bytes
+BLAKE2s (rust-std-1.80.1-aarch64_be-unknown-netbsd.tar.xz) = 4c51df88bebd86fcbcb9a03a44979a9935ae68415c8ae8771b246a1127d2d6bd
+SHA512 (rust-std-1.80.1-aarch64_be-unknown-netbsd.tar.xz) = f047240b7fb7663571a3e3c9c5ad7a9c1109ca212d5a3492d7edde4db8028437b1d102f94f24c817684bd62a3f8f98ad834b593acbae68719e9aab307762b14b
+Size (rust-std-1.80.1-aarch64_be-unknown-netbsd.tar.xz) = 21406608 bytes
+BLAKE2s (rustc-1.80.1-src.tar.gz) = 691e52751254798b20cabb79f267f6ebac8660cc94536693726ac5d8095c2099
+SHA512 (rustc-1.80.1-src.tar.gz) = e33bc028f44742b4eab43ca5068123d5afa458594366f49ac5ac3ba3748a1852fe3e74ced360a66dcbac1b59f5a6b0ce7bdf53f8fc6e838f6b27be0e89c52f51
+Size (rustc-1.80.1-src.tar.gz) = 377927214 bytes
 SHA1 (patch-compiler_rustc__codegen__ssa_src_back_linker.rs) = f5336828d70f9fc684ea871a6869138ac7a18b4f
 SHA1 (patch-compiler_rustc__llvm_build.rs) = a4a66d449fc9eb99d648d02a041778a68f4f7ce8
 SHA1 (patch-compiler_rustc__target_src_spec_base_netbsd.rs) = 7d910631f49acf2c33fdd191fd3e0f261efae234
@@ -115,11 +115,11 @@ SHA1 (patch-compiler_rustc__target_src_s
 SHA1 (patch-compiler_rustc__target_src_spec_targets_aarch64__be__unknown__netbsd.rs) = 620eaf74c1dd030973af53dfe4f9aa998be5b123
 SHA1 (patch-compiler_rustc__target_src_spec_targets_aarch64__unknown__netbsd.rs) = 1a02f2dd61a5f9cc4be1f66ac3404c961810c731
 SHA1 (patch-compiler_rustc__target_src_spec_targets_mips64el__unknown__netbsd.rs) = e97b7978cc525db7eadf967d51f4818a3c145754
+SHA1 (patch-compiler_rustc__target_src_spec_targets_mipsel__unknown__netbsd.rs) = 7deeb7d1d3306e96891dec144ac90398b88c6ad4
 SHA1 (patch-compiler_rustc__target_src_spec_targets_sparc64__unknown__netbsd.rs) = 847022a9c02d277f39e2c842f23a9ed401bc5534
-SHA1 (patch-library_backtrace_src_symbolize_gimli.rs) = 1ab343595e65ff6348f83cffc30e53d764485ff8
+SHA1 (patch-library_backtrace_src_symbolize_gimli.rs) = 9d5ef634c5a454e474ea5fee76da9bb768f5b3d9
 SHA1 (patch-library_backtrace_src_symbolize_gimli_elf.rs) = 3b84a462c6bc8245d579452e4c37e3ce13314952
 SHA1 (patch-library_std_src_sys_pal_unix_mod.rs) = bfc59ae4568547e3ed71c8b31ba5b5b5363d5d40
-SHA1 (patch-library_std_src_sys_pal_unix_thread__parking_netbsd.rs) = 9b073ba37a644c5094c48f33e49578ac026e16ff
 SHA1 (patch-src_bootstrap_bootstrap.py) = 5cd73003292c935ce0e405edd132180233a04857
 SHA1 (patch-src_bootstrap_src_core_build__steps_compile.rs) = 4696304623232acd419ad15597f539a10a014271
 SHA1 (patch-src_bootstrap_src_core_build__steps_install.rs) = cc6558df42c9c9ac28fdb2ff180bdaa7f22ce816
@@ -133,15 +133,33 @@ SHA1 (patch-src_llvm-project_llvm_utils_
 SHA1 (patch-src_tools_cargo_src_cargo_core_profiles.rs) = e1af7fde97416e0a269ee34efd37f4f47fcf7a95
 SHA1 (patch-src_tools_cargo_tests_testsuite_build.rs) = 60713699c968f3e389f486e796009d31a5048906
 SHA1 (patch-src_tools_rust-installer_install-template.sh) = 6984546c34a2e4d55a6dbe59baa0d4958184e0b7
-SHA1 (patch-vendor_cc-1.0.73_src_lib.rs) = 98acea9fb98898f63bbb0f6555df5e4b15da2b85
+SHA1 (patch-tools_rust-analyzer_lib_line-index-src_lib.rs) = 4ed527174447ee23fa81dd6840e18b9949d5a273
+SHA1 (patch-vendor_aho-corasick-1.1.2_src_packed_teddy_builder.rs) = c76abf55d641cebb70935ebeebe6cdd6f3f09463
+SHA1 (patch-vendor_aho-corasick-1.1.2_src_packed_vector.rs) = dddc3ea2f407ce61c8bf83d1842e6a82557b8bee
+SHA1 (patch-vendor_bytecount-0.6.8_src_lib.rs) = d7610f2ae957d085a465f8c75549e5a11586a8b0
+SHA1 (patch-vendor_cc-1.0.73_src_lib.rs) = 690b3feaa619050512254d7c18fd4f51da98e279
 SHA1 (patch-vendor_crossbeam-utils-0.8.18_no__atomic.rs) = d4d9288cb199af9bc7e321fbd2b42860aed954ec
 SHA1 (patch-vendor_libc-0.2.148_src_unix_bsd_netbsdlike_netbsd_mips.rs) = 0895df54084281263b9dae67e57f68168fb66bd4
 SHA1 (patch-vendor_libc-0.2.148_src_unix_bsd_netbsdlike_netbsd_riscv64.rs) = 8699853de4225d4e5953d6bf17b59bc463fa7b5d
-SHA1 (patch-vendor_libc-0.2.151_src_unix_solarish_mod.rs) = 50a296ba939f8c12a445526b16f50e8111a762a7
-SHA1 (patch-vendor_openssl-src-111.28.1+1.1.1w_openssl_Configurations_10-main.conf) = f14fa72626a831ca56a3b9d63d33f4ed72486e42
-SHA1 (patch-vendor_openssl-src-111.28.1+1.1.1w_src_lib.rs) = ab83fe8e2e6a0ee4df75ba90388e10b815ef6ce9
+SHA1 (patch-vendor_libc-0.2.153_src_unix_solarish_mod.rs) = dfa5ec7f1c69e3ca4ff8574dcd248bdce6c82f0b
+SHA1 (patch-vendor_libc-0.2.154_src_unix_solarish_mod.rs) = e8f72fb13df8b9e111d296bcf3597343496219b5
+SHA1 (patch-vendor_libc-0.2.155_src_unix_solarish_mod.rs) = 97505b88875aa80fa2b5589b6090237c3786e143
+SHA1 (patch-vendor_memchr-2.7.1_src_arch_aarch64_memchr.rs) = 22b2cd0e629f66b81456aed62b4925070635a62b
+SHA1 (patch-vendor_memchr-2.7.1_src_arch_aarch64_mod.rs) = 46473abc95a7884ee6163d30156b67d8951c0c30
+SHA1 (patch-vendor_memchr-2.7.1_src_memchr.rs) = f2a5ad9d40ab3277d3f87d4044c5eb719a25b58d
+SHA1 (patch-vendor_memchr-2.7.1_src_memmem_searcher.rs) = cd5fa24223748307e20758c6669330b3b75e6b57
+SHA1 (patch-vendor_memchr-2.7.1_src_vector.rs) = 2903cc1de6c759d15ad269ae3f227709561b2c0c
+SHA1 (patch-vendor_memchr-2.7.2_src_arch_aarch64_memchr.rs) = caf5b8b848923c2e74bf5b5742b1ee564b6145f1
+SHA1 (patch-vendor_memchr-2.7.2_src_arch_aarch64_mod.rs) = fa96a8e6546e5603a8a22fe6e09619ffaafe7bf3
+SHA1 (patch-vendor_memchr-2.7.2_src_memchr.rs) = 609dc522e5c774226d7b21391d5354f8382fe578
+SHA1 (patch-vendor_memchr-2.7.2_src_memmem_searcher.rs) = 0bdafac65abac9ee719c64d2c53125edbb5edd20
+SHA1 (patch-vendor_memchr-2.7.2_src_vector.rs) = eb716f077a311fb347139b0e40237f3ed31cf2d8
+SHA1 (patch-vendor_openssl-src-111.28.2+1.1.1w_openssl_Configurations_10-main.conf) = ac2963bca8d1dc4e196693d9f5a264f38355314a
+SHA1 (patch-vendor_openssl-src-111.28.2+1.1.1w_src_lib.rs) = c87435bef2899b30b5cdb1b525193489988b2476
 SHA1 (patch-vendor_openssl-sys-0.9.102_build_find__normal.rs) = 2cf1432ed2be79677d41f267f9a08ff3082e9cbc
 SHA1 (patch-vendor_openssl-sys-0.9.102_build_main.rs) = 8861b7d3acc1643f7fe6f494b18d452ac70cf810
 SHA1 (patch-vendor_openssl-sys-0.9.92_build_find__normal.rs) = 91ad0d3e78055a5a205d55cd2c260cde70233bfe
 SHA1 (patch-vendor_openssl-sys-0.9.92_build_main.rs) = a47c0b7144466592aca3b622cb77498d59c5dfc4
 SHA1 (patch-vendor_rustc-ap-rustc__target_src_spec_aarch64__be__unknown__netbsd.rs) = 4e86aec4c89db9a331950a12f8ec7b8aaa50eed7
+SHA1 (patch-vendor_zerocopy-0.7.32_src_lib.rs) = d683e48900f427327f4ed518fe62b593e82c13d7
+SHA1 (patch-vendor_zerocopy-0.7.34_src_lib.rs) = 411cbf6fe2f2c8773d13e8fcc6e101b6b53109a7

Index: pkgsrc/lang/rust/do-cross.mk
diff -u pkgsrc/lang/rust/do-cross.mk:1.11 pkgsrc/lang/rust/do-cross.mk:1.12
--- pkgsrc/lang/rust/do-cross.mk:1.11   Tue Jul 23 05:15:37 2024
+++ pkgsrc/lang/rust/do-cross.mk        Sun Oct 13 19:04:39 2024
@@ -1,4 +1,4 @@
-# $NetBSD: do-cross.mk,v 1.11 2024/07/23 05:15:37 wiz Exp $
+# $NetBSD: do-cross.mk,v 1.12 2024/10/13 19:04:39 he Exp $
 # Do all the NetBSD cross builds
 # Collect the bootstrap kits in dist/
 
@@ -10,10 +10,10 @@ SHORT_TARGETS+=             armv6
 SHORT_TARGETS+=                sparc64
 SHORT_TARGETS+=                powerpc
 SHORT_TARGETS+=                arm64
-#SHORT_TARGETS+=       arm64_be
+SHORT_TARGETS+=                arm64_be
 SHORT_TARGETS+=                i386
 SHORT_TARGETS+=                riscv64
-#SHORT_TARGETS+=       mipsel  # produces mips32 (not mips1) executables
+SHORT_TARGETS+=                mipsel  # produces mips32 (not mips1) executables
 
 # Conditional local overrides of ROOT.* variables:
 .sinclude "local-roots.mk"

Index: pkgsrc/lang/rust/options.mk
diff -u pkgsrc/lang/rust/options.mk:1.40 pkgsrc/lang/rust/options.mk:1.41
--- pkgsrc/lang/rust/options.mk:1.40    Mon Jul 15 03:32:23 2024
+++ pkgsrc/lang/rust/options.mk Sun Oct 13 19:04:39 2024
@@ -1,4 +1,4 @@
-# $NetBSD: options.mk,v 1.40 2024/07/15 03:32:23 wiz Exp $
+# $NetBSD: options.mk,v 1.41 2024/10/13 19:04:39 he Exp $
 
 PKG_OPTIONS_VAR=       PKG_OPTIONS.rust
 PKG_SUPPORTED_OPTIONS+=        rust-cargo-static rust-docs
@@ -19,16 +19,7 @@ PKG_SUGGESTED_OPTIONS+=              rust-internal-l
 PKG_SUGGESTED_OPTIONS+=                rust-internal-llvm
 .endif
 
-# NetBSD/sparc64 when using the internal LLVM needs
-# to not use gcc 10.4 or 10.5 (as found in 10.0_BETA or 10.0), ref.
-# https://github.com/rust-lang/rust/issues/117231
-# (however, gcc from 9.x produces a working LLVM).
-.if ${MACHINE_PLATFORM:MNetBSD-10.*-sparc64}
-.  if !empty(PKG_OPTIONS:Mrust-internal-llvm)
-# Require GCC 12 (from pkgsrc) to correctly build the embedded LLVM (17.x).
-GCC_REQD+=     12
-.  endif
-.endif
+PKG_OPTIONS_LEGACY_OPTS+=      rust-llvm:rust-internal-llvm
 
 # Bundle OpenSSL and curl into the cargo binary when producing
 # bootstraps on NetBSD.
@@ -36,11 +27,20 @@ GCC_REQD+=  12
 PKG_SUGGESTED_OPTIONS+=        rust-cargo-static
 .endif
 
-PKG_OPTIONS_LEGACY_OPTS+=      rust-llvm:rust-internal-llvm
-
 .include "../../mk/bsd.options.mk"
 
 #
+# NetBSD/sparc64 when using the internal LLVM needs
+# to not use gcc 10.4 or 10.5 (as found in 10.0_BETA or 10.0), ref.
+# https://github.com/rust-lang/rust/issues/117231
+# (however, gcc from 9.x produces a working LLVM).
+.if ${MACHINE_PLATFORM:MNetBSD-10.*-sparc64}
+.  if !empty(PKG_OPTIONS:Mrust-internal-llvm)
+## Require GCC 12 (from pkgsrc) to correctly build the embedded LLVM (17.x).
+GCC_REQD+=     12
+.  endif
+.endif
+
 # Use the internal copy of LLVM or the external one?
 #
 .if empty(PKG_OPTIONS:Mrust-internal-llvm)

Index: pkgsrc/lang/rust/patches/patch-library_backtrace_src_symbolize_gimli.rs
diff -u pkgsrc/lang/rust/patches/patch-library_backtrace_src_symbolize_gimli.rs:1.6 pkgsrc/lang/rust/patches/patch-library_backtrace_src_symbolize_gimli.rs:1.7
--- pkgsrc/lang/rust/patches/patch-library_backtrace_src_symbolize_gimli.rs:1.6 Thu Apr 18 09:29:42 2024
+++ pkgsrc/lang/rust/patches/patch-library_backtrace_src_symbolize_gimli.rs     Sun Oct 13 19:04:39 2024
@@ -1,13 +1,13 @@
-$NetBSD: patch-library_backtrace_src_symbolize_gimli.rs,v 1.6 2024/04/18 09:29:42 pin Exp $
+$NetBSD: patch-library_backtrace_src_symbolize_gimli.rs,v 1.7 2024/10/13 19:04:39 he Exp $
 
 Add NetBSD to the family who is in the unix class.
 
---- library/backtrace/src/symbolize/gimli.rs.orig      2022-04-04 09:41:26.000000000 +0000
+--- library/backtrace/src/symbolize/gimli.rs.orig      2006-07-24 01:21:28.000000000 +0000
 +++ library/backtrace/src/symbolize/gimli.rs
-@@ -38,6 +38,7 @@ cfg_if::cfg_if! {
-         target_os = "ios",
+@@ -40,6 +40,7 @@ cfg_if::cfg_if! {
+         target_os = "haiku",
+         target_os = "hurd",
          target_os = "linux",
-         target_os = "macos",
 +        target_os = "netbsd",
          target_os = "openbsd",
          target_os = "solaris",

Index: pkgsrc/lang/rust/patches/patch-vendor_cc-1.0.73_src_lib.rs
diff -u pkgsrc/lang/rust/patches/patch-vendor_cc-1.0.73_src_lib.rs:1.4 pkgsrc/lang/rust/patches/patch-vendor_cc-1.0.73_src_lib.rs:1.5
--- pkgsrc/lang/rust/patches/patch-vendor_cc-1.0.73_src_lib.rs:1.4      Thu Apr 18 09:29:42 2024
+++ pkgsrc/lang/rust/patches/patch-vendor_cc-1.0.73_src_lib.rs  Sun Oct 13 19:04:39 2024
@@ -1,10 +1,10 @@
-$NetBSD: patch-vendor_cc-1.0.73_src_lib.rs,v 1.4 2024/04/18 09:29:42 pin Exp $
+$NetBSD: patch-vendor_cc-1.0.73_src_lib.rs,v 1.5 2024/10/13 19:04:39 he Exp $
 
 Use correct ABI on NetBSD/riscv64.
 
---- vendor/cc-1.0.73/src/lib.rs.orig   2023-05-31 21:44:47.000000000 +0000
-+++ vendor/cc-1.0.73/src/lib.rs
-@@ -1830,6 +1830,9 @@ impl Build {
+--- vendor/cc-1.0.79/src/lib.rs.orig   2024-08-29 17:57:16.678636324 +0000
++++ vendor/cc-1.0.79/src/lib.rs
+@@ -1946,6 +1946,9 @@ impl Build {
                          } else if target.contains("freebsd") && arch.starts_with("64") {
                              cmd.args.push(("-march=rv64gc").into());
                              cmd.args.push("-mabi=lp64d".into());

Added files:

Index: pkgsrc/lang/rust/patches/patch-compiler_rustc__target_src_spec_targets_mipsel__unknown__netbsd.rs
diff -u /dev/null pkgsrc/lang/rust/patches/patch-compiler_rustc__target_src_spec_targets_mipsel__unknown__netbsd.rs:1.1
--- /dev/null   Sun Oct 13 19:04:40 2024
+++ pkgsrc/lang/rust/patches/patch-compiler_rustc__target_src_spec_targets_mipsel__unknown__netbsd.rs   Sun Oct 13 19:04:39 2024
@@ -0,0 +1,14 @@
+$NetBSD: patch-compiler_rustc__target_src_spec_targets_mipsel__unknown__netbsd.rs,v 1.1 2024/10/13 19:04:39 he Exp $
+
+Let's see if turning off thread local storage makes a difference...
+
+--- compiler/rustc_target/src/spec/targets/mipsel_unknown_netbsd.rs.orig       2024-08-05 20:02:56.368978562 +0000
++++ compiler/rustc_target/src/spec/targets/mipsel_unknown_netbsd.rs
+@@ -21,6 +21,7 @@ pub fn target() -> Target {
+             features: "+soft-float".into(),
+             mcount: "__mcount".into(),
+             endian: Endian::Little,
++            has_thread_local: false, // Let's see if there's a difference...
+             ..base
+         },
+     }
Index: pkgsrc/lang/rust/patches/patch-tools_rust-analyzer_lib_line-index-src_lib.rs
diff -u /dev/null pkgsrc/lang/rust/patches/patch-tools_rust-analyzer_lib_line-index-src_lib.rs:1.1
--- /dev/null   Sun Oct 13 19:04:40 2024
+++ pkgsrc/lang/rust/patches/patch-tools_rust-analyzer_lib_line-index-src_lib.rs        Sun Oct 13 19:04:39 2024
@@ -0,0 +1,47 @@
+$NetBSD: patch-tools_rust-analyzer_lib_line-index-src_lib.rs,v 1.1 2024/10/13 19:04:39 he Exp $
+
+Try to avoid using neon for big-endian aarch64.
+Ref. https://github.com/rust-lang/rust/issues/129819
+
+--- src/tools/rust-analyzer/lib/line-index/src/lib.rs.orig     2024-09-01 14:12:57.016998002 +0000
++++ src/tools/rust-analyzer/lib/line-index/src/lib.rs
+@@ -227,7 +227,7 @@ fn analyze_source_file_dispatch(
+     }
+ }
+ 
+-#[cfg(target_arch = "aarch64")]
++#[cfg(all(target_arch = "aarch64", target_endian = "little"))]
+ fn analyze_source_file_dispatch(
+     src: &str,
+     lines: &mut Vec<TextSize>,
+@@ -339,7 +339,7 @@ unsafe fn analyze_source_file_sse2(
+ }
+ 
+ #[target_feature(enable = "neon")]
+-#[cfg(target_arch = "aarch64")]
++#[cfg(all(target_arch = "aarch64", target_endian = "little"))]
+ #[inline]
+ // See https://community.arm.com/arm-community-blogs/b/infrastructure-solutions-blog/posts/porting-x86-vector-bitmask-optimizations-to-arm-neon
+ //
+@@ -354,7 +354,7 @@ unsafe fn move_mask(v: std::arch::aarch6
+ }
+ 
+ #[target_feature(enable = "neon")]
+-#[cfg(target_arch = "aarch64")]
++#[cfg(all(target_arch = "aarch64", target_endian = "little"))]
+ unsafe fn analyze_source_file_neon(
+     src: &str,
+     lines: &mut Vec<TextSize>,
+@@ -433,7 +433,11 @@ unsafe fn analyze_source_file_neon(
+     }
+ }
+ 
+-#[cfg(not(any(target_arch = "x86", target_arch = "x86_64", target_arch = "aarch64")))]
++#[cfg(not(any(
++    target_arch = "x86",
++    target_arch = "x86_64",
++    all(target_arch = "aarch64", target_endian = "little")
++)))]
+ // The target (or compiler version) does not support SSE2 ...
+ fn analyze_source_file_dispatch(
+     src: &str,
Index: pkgsrc/lang/rust/patches/patch-vendor_aho-corasick-1.1.2_src_packed_teddy_builder.rs
diff -u /dev/null pkgsrc/lang/rust/patches/patch-vendor_aho-corasick-1.1.2_src_packed_teddy_builder.rs:1.1
--- /dev/null   Sun Oct 13 19:04:40 2024
+++ pkgsrc/lang/rust/patches/patch-vendor_aho-corasick-1.1.2_src_packed_teddy_builder.rs        Sun Oct 13 19:04:39 2024
@@ -0,0 +1,33 @@
+$NetBSD: patch-vendor_aho-corasick-1.1.2_src_packed_teddy_builder.rs,v 1.1 2024/10/13 19:04:39 he Exp $
+
+Avoid use of neon / SIMD on big-endian aarch64.
+
+--- vendor/aho-corasick-1.1.2/src/packed/teddy/builder.rs.orig 2024-09-29 08:19:52.405194911 +0000
++++ vendor/aho-corasick-1.1.2/src/packed/teddy/builder.rs
+@@ -230,7 +230,7 @@ impl Builder {
+                 }
+             }
+         }
+-        #[cfg(target_arch = "aarch64")]
++        #[cfg(all(target_arch = "aarch64", target_endian = "little"))]
+         {
+             use self::aarch64::SlimNeon;
+ 
+@@ -301,7 +301,7 @@ impl Builder {
+         }
+         #[cfg(not(any(
+             all(target_arch = "x86_64", target_feature = "sse2"),
+-            target_arch = "aarch64"
++            all(target_arch = "aarch64", target_endian = "little")
+         )))]
+         {
+             None
+@@ -705,7 +705,7 @@ mod x86_64 {
+     }
+ }
+ 
+-#[cfg(target_arch = "aarch64")]
++#[cfg(all(target_arch = "aarch64", target_endian = "little"))]
+ mod aarch64 {
+     use core::arch::aarch64::uint8x16_t;
+ 
Index: pkgsrc/lang/rust/patches/patch-vendor_aho-corasick-1.1.2_src_packed_vector.rs
diff -u /dev/null pkgsrc/lang/rust/patches/patch-vendor_aho-corasick-1.1.2_src_packed_vector.rs:1.1
--- /dev/null   Sun Oct 13 19:04:40 2024
+++ pkgsrc/lang/rust/patches/patch-vendor_aho-corasick-1.1.2_src_packed_vector.rs       Sun Oct 13 19:04:39 2024
@@ -0,0 +1,28 @@
+$NetBSD: patch-vendor_aho-corasick-1.1.2_src_packed_vector.rs,v 1.1 2024/10/13 19:04:39 he Exp $
+
+Avoid use of neon / SIMD on big-endian aarch64.
+
+--- vendor/aho-corasick-1.1.2/src/packed/vector.rs.orig        2024-09-29 08:09:15.720814688 +0000
++++ vendor/aho-corasick-1.1.2/src/packed/vector.rs
+@@ -595,7 +595,7 @@ mod x86_64_avx2 {
+     }
+ }
+ 
+-#[cfg(target_arch = "aarch64")]
++#[cfg(all(target_arch = "aarch64", target_endian = "little"))]
+ mod aarch64_neon {
+     use core::arch::aarch64::*;
+ 
+@@ -1466,7 +1466,11 @@ mod tests_x86_64_avx2 {
+     }
+ }
+ 
+-#[cfg(all(test, target_arch = "aarch64", target_feature = "neon"))]
++#[cfg(all(test,
++          target_arch = "aarch64",
++          target_feature = "neon",
++          target_endian = "little"
++))]
+ mod tests_aarch64_neon {
+     use core::arch::aarch64::*;
+ 
Index: pkgsrc/lang/rust/patches/patch-vendor_bytecount-0.6.8_src_lib.rs
diff -u /dev/null pkgsrc/lang/rust/patches/patch-vendor_bytecount-0.6.8_src_lib.rs:1.1
--- /dev/null   Sun Oct 13 19:04:40 2024
+++ pkgsrc/lang/rust/patches/patch-vendor_bytecount-0.6.8_src_lib.rs    Sun Oct 13 19:04:39 2024
@@ -0,0 +1,45 @@
+$NetBSD: patch-vendor_bytecount-0.6.8_src_lib.rs,v 1.1 2024/10/13 19:04:39 he Exp $
+
+Avoid using neon on big-endian aarch64.
+Ref. https://github.com/rust-lang/rust/issues/129819
+
+--- vendor/bytecount-0.6.8/src/lib.rs.orig     2024-09-01 16:29:37.478735730 +0000
++++ vendor/bytecount-0.6.8/src/lib.rs
+@@ -50,7 +50,10 @@ mod integer_simd;
+         feature = "runtime-dispatch-simd",
+         any(target_arch = "x86", target_arch = "x86_64")
+     ),
+-    target_arch = "aarch64",
++    all(
++        target_arch = "aarch64",
++        target_endian = "little"
++    ),
+     target_arch = "wasm32",
+     feature = "generic-simd"
+ ))]
+@@ -93,7 +96,11 @@ pub fn count(haystack: &[u8], needle: u8
+                 }
+             }
+         }
+-        #[cfg(all(target_arch = "aarch64", not(feature = "generic_simd")))]
++        #[cfg(all(
++            target_arch = "aarch64", 
++            target_endian = "little",
++            not(feature = "generic_simd")
++        ))]
+         {
+             unsafe {
+                 return simd::aarch64::chunk_count(haystack, needle);
+@@ -155,7 +162,11 @@ pub fn num_chars(utf8_chars: &[u8]) -> u
+                 }
+             }
+         }
+-        #[cfg(all(target_arch = "aarch64", not(feature = "generic_simd")))]
++        #[cfg(all(
++            target_arch = "aarch64",
++            target_endian = "little",
++            not(feature = "generic_simd")
++        ))]
+         {
+             unsafe {
+                 return simd::aarch64::chunk_num_chars(utf8_chars);
Index: pkgsrc/lang/rust/patches/patch-vendor_libc-0.2.153_src_unix_solarish_mod.rs
diff -u /dev/null pkgsrc/lang/rust/patches/patch-vendor_libc-0.2.153_src_unix_solarish_mod.rs:1.1
--- /dev/null   Sun Oct 13 19:04:40 2024
+++ pkgsrc/lang/rust/patches/patch-vendor_libc-0.2.153_src_unix_solarish_mod.rs Sun Oct 13 19:04:39 2024
@@ -0,0 +1,15 @@
+$NetBSD: patch-vendor_libc-0.2.153_src_unix_solarish_mod.rs,v 1.1 2024/10/13 19:04:39 he Exp $
+
+Fix xattr build.
+
+--- vendor/libc-0.2.153/src/unix/solarish/mod.rs.orig  2024-08-29 18:01:10.748819643 +0000
++++ vendor/libc-0.2.153/src/unix/solarish/mod.rs
+@@ -1524,6 +1524,8 @@ pub const EOWNERDEAD: ::c_int = 58;
+ pub const ENOTRECOVERABLE: ::c_int = 59;
+ pub const ENOSTR: ::c_int = 60;
+ pub const ENODATA: ::c_int = 61;
++// This is not supported but is required for xattr
++pub const ENOATTR: ::c_int = ::ENODATA;
+ pub const ETIME: ::c_int = 62;
+ pub const ENOSR: ::c_int = 63;
+ pub const ENONET: ::c_int = 64;
Index: pkgsrc/lang/rust/patches/patch-vendor_libc-0.2.154_src_unix_solarish_mod.rs
diff -u /dev/null pkgsrc/lang/rust/patches/patch-vendor_libc-0.2.154_src_unix_solarish_mod.rs:1.1
--- /dev/null   Sun Oct 13 19:04:40 2024
+++ pkgsrc/lang/rust/patches/patch-vendor_libc-0.2.154_src_unix_solarish_mod.rs Sun Oct 13 19:04:39 2024
@@ -0,0 +1,15 @@
+$NetBSD: patch-vendor_libc-0.2.154_src_unix_solarish_mod.rs,v 1.1 2024/10/13 19:04:39 he Exp $
+
+Fix xattr build.
+
+--- vendor/libc-0.2.154/src/unix/solarish/mod.rs.orig  2024-08-29 18:02:22.936992533 +0000
++++ vendor/libc-0.2.154/src/unix/solarish/mod.rs
+@@ -1524,6 +1524,8 @@ pub const EOWNERDEAD: ::c_int = 58;
+ pub const ENOTRECOVERABLE: ::c_int = 59;
+ pub const ENOSTR: ::c_int = 60;
+ pub const ENODATA: ::c_int = 61;
++// This is not supported but is required for xattr
++pub const ENOATTR: ::c_int = ::ENODATA;
+ pub const ETIME: ::c_int = 62;
+ pub const ENOSR: ::c_int = 63;
+ pub const ENONET: ::c_int = 64;
Index: pkgsrc/lang/rust/patches/patch-vendor_libc-0.2.155_src_unix_solarish_mod.rs
diff -u /dev/null pkgsrc/lang/rust/patches/patch-vendor_libc-0.2.155_src_unix_solarish_mod.rs:1.1
--- /dev/null   Sun Oct 13 19:04:40 2024
+++ pkgsrc/lang/rust/patches/patch-vendor_libc-0.2.155_src_unix_solarish_mod.rs Sun Oct 13 19:04:39 2024
@@ -0,0 +1,15 @@
+$NetBSD: patch-vendor_libc-0.2.155_src_unix_solarish_mod.rs,v 1.1 2024/10/13 19:04:39 he Exp $
+
+Fix xattr build.
+
+--- vendor/libc-0.2.155/src/unix/solarish/mod.rs.orig  2024-08-29 18:03:17.866520790 +0000
++++ vendor/libc-0.2.155/src/unix/solarish/mod.rs
+@@ -1524,6 +1524,8 @@ pub const EOWNERDEAD: ::c_int = 58;
+ pub const ENOTRECOVERABLE: ::c_int = 59;
+ pub const ENOSTR: ::c_int = 60;
+ pub const ENODATA: ::c_int = 61;
++// This is not supported but is required for xattr
++pub const ENOATTR: ::c_int = ::ENODATA;
+ pub const ETIME: ::c_int = 62;
+ pub const ENOSR: ::c_int = 63;
+ pub const ENONET: ::c_int = 64;
Index: pkgsrc/lang/rust/patches/patch-vendor_memchr-2.7.1_src_arch_aarch64_memchr.rs
diff -u /dev/null pkgsrc/lang/rust/patches/patch-vendor_memchr-2.7.1_src_arch_aarch64_memchr.rs:1.1
--- /dev/null   Sun Oct 13 19:04:40 2024
+++ pkgsrc/lang/rust/patches/patch-vendor_memchr-2.7.1_src_arch_aarch64_memchr.rs       Sun Oct 13 19:04:39 2024
@@ -0,0 +1,25 @@
+$NetBSD: patch-vendor_memchr-2.7.1_src_arch_aarch64_memchr.rs,v 1.1 2024/10/13 19:04:39 he Exp $
+
+Turn off use of neon on big-endian aarch64.
+Ref. https://github.com/rust-lang/rust/issues/129819
+
+--- vendor/memchr-2.7.1/src/arch/aarch64/memchr.rs.orig        2024-09-29 15:07:46.024388906 +0000
++++ vendor/memchr-2.7.1/src/arch/aarch64/memchr.rs
+@@ -8,7 +8,7 @@ available for `aarch64` targets.)
+ 
+ macro_rules! defraw {
+     ($ty:ident, $find:ident, $start:ident, $end:ident, $($needles:ident),+) => {{
+-        #[cfg(target_feature = "neon")]
++        #[cfg(all(target_feature = "neon", target_endian = "little"))]
+         {
+             use crate::arch::aarch64::neon::memchr::$ty;
+ 
+@@ -19,7 +19,7 @@ macro_rules! defraw {
+             // enabled.
+             $ty::new_unchecked($($needles),+).$find($start, $end)
+         }
+-        #[cfg(not(target_feature = "neon"))]
++        #[cfg(not(all(target_feature = "neon", target_endian = "little")))]
+         {
+             use crate::arch::all::memchr::$ty;
+ 
Index: pkgsrc/lang/rust/patches/patch-vendor_memchr-2.7.1_src_arch_aarch64_mod.rs
diff -u /dev/null pkgsrc/lang/rust/patches/patch-vendor_memchr-2.7.1_src_arch_aarch64_mod.rs:1.1
--- /dev/null   Sun Oct 13 19:04:40 2024
+++ pkgsrc/lang/rust/patches/patch-vendor_memchr-2.7.1_src_arch_aarch64_mod.rs  Sun Oct 13 19:04:40 2024
@@ -0,0 +1,16 @@
+$NetBSD: patch-vendor_memchr-2.7.1_src_arch_aarch64_mod.rs,v 1.1 2024/10/13 19:04:40 he Exp $
+
+Only use neon extension on little-endian aarch64.
+Ref. https://github.com/rust-lang/rust/issues/129819
+
+--- vendor/memchr-2.7.1/src/arch/aarch64/mod.rs.orig   2024-09-29 15:09:57.496379714 +0000
++++ vendor/memchr-2.7.1/src/arch/aarch64/mod.rs
+@@ -2,6 +2,8 @@
+ Vector algorithms for the `aarch64` target.
+ */
+ 
++#[cfg(target_endian = "little")]
+ pub mod neon;
+ 
++#[cfg(target_endian = "little")]
+ pub(crate) mod memchr;
Index: pkgsrc/lang/rust/patches/patch-vendor_memchr-2.7.1_src_memchr.rs
diff -u /dev/null pkgsrc/lang/rust/patches/patch-vendor_memchr-2.7.1_src_memchr.rs:1.1
--- /dev/null   Sun Oct 13 19:04:40 2024
+++ pkgsrc/lang/rust/patches/patch-vendor_memchr-2.7.1_src_memchr.rs    Sun Oct 13 19:04:40 2024
@@ -0,0 +1,129 @@
+$NetBSD: patch-vendor_memchr-2.7.1_src_memchr.rs,v 1.1 2024/10/13 19:04:40 he Exp $
+
+Only use neon extension on little-endian aarch64.
+Ref. https://github.com/rust-lang/rust/issues/129819
+
+--- vendor/memchr-2.7.1/src/memchr.rs.orig     2024-09-29 15:11:13.260160791 +0000
++++ vendor/memchr-2.7.1/src/memchr.rs
+@@ -518,14 +518,14 @@ unsafe fn memchr_raw(
+     {
+         crate::arch::wasm32::memchr::memchr_raw(needle, start, end)
+     }
+-    #[cfg(target_arch = "aarch64")]
++    #[cfg(all(target_arch = "aarch64", target_endian = "little"))]
+     {
+         crate::arch::aarch64::memchr::memchr_raw(needle, start, end)
+     }
+     #[cfg(not(any(
+         target_arch = "x86_64",
+         target_arch = "wasm32",
+-        target_arch = "aarch64"
++        all(target_arch = "aarch64", target_endian = "little")
+     )))]
+     {
+         crate::arch::all::memchr::One::new(needle).find_raw(start, end)
+@@ -551,14 +551,14 @@ unsafe fn memrchr_raw(
+     {
+         crate::arch::wasm32::memchr::memrchr_raw(needle, start, end)
+     }
+-    #[cfg(target_arch = "aarch64")]
++    #[cfg(all(target_arch = "aarch64", target_endian = "little"))]
+     {
+         crate::arch::aarch64::memchr::memrchr_raw(needle, start, end)
+     }
+     #[cfg(not(any(
+         target_arch = "x86_64",
+         target_arch = "wasm32",
+-        target_arch = "aarch64"
++        all(target_arch = "aarch64", target_endian = "little")
+     )))]
+     {
+         crate::arch::all::memchr::One::new(needle).rfind_raw(start, end)
+@@ -585,14 +585,14 @@ unsafe fn memchr2_raw(
+     {
+         crate::arch::wasm32::memchr::memchr2_raw(needle1, needle2, start, end)
+     }
+-    #[cfg(target_arch = "aarch64")]
++    #[cfg(all(target_arch = "aarch64", target_endian = "little"))]
+     {
+         crate::arch::aarch64::memchr::memchr2_raw(needle1, needle2, start, end)
+     }
+     #[cfg(not(any(
+         target_arch = "x86_64",
+         target_arch = "wasm32",
+-        target_arch = "aarch64"
++        all(target_arch = "aarch64", target_endian = "little")
+     )))]
+     {
+         crate::arch::all::memchr::Two::new(needle1, needle2)
+@@ -620,7 +620,7 @@ unsafe fn memrchr2_raw(
+     {
+         crate::arch::wasm32::memchr::memrchr2_raw(needle1, needle2, start, end)
+     }
+-    #[cfg(target_arch = "aarch64")]
++    #[cfg(all(target_arch = "aarch64", target_endian = "little"))]
+     {
+         crate::arch::aarch64::memchr::memrchr2_raw(
+             needle1, needle2, start, end,
+@@ -629,7 +629,7 @@ unsafe fn memrchr2_raw(
+     #[cfg(not(any(
+         target_arch = "x86_64",
+         target_arch = "wasm32",
+-        target_arch = "aarch64"
++        all(target_arch = "aarch64", target_endian = "little")
+     )))]
+     {
+         crate::arch::all::memchr::Two::new(needle1, needle2)
+@@ -662,7 +662,7 @@ unsafe fn memchr3_raw(
+             needle1, needle2, needle3, start, end,
+         )
+     }
+-    #[cfg(target_arch = "aarch64")]
++    #[cfg(all(target_arch = "aarch64", target_endian = "little"))]
+     {
+         crate::arch::aarch64::memchr::memchr3_raw(
+             needle1, needle2, needle3, start, end,
+@@ -671,7 +671,7 @@ unsafe fn memchr3_raw(
+     #[cfg(not(any(
+         target_arch = "x86_64",
+         target_arch = "wasm32",
+-        target_arch = "aarch64"
++        all(target_arch = "aarch64", target_endian = "little")
+     )))]
+     {
+         crate::arch::all::memchr::Three::new(needle1, needle2, needle3)
+@@ -704,7 +704,7 @@ unsafe fn memrchr3_raw(
+             needle1, needle2, needle3, start, end,
+         )
+     }
+-    #[cfg(target_arch = "aarch64")]
++    #[cfg(all(target_arch = "aarch64", target_endian = "little"))]
+     {
+         crate::arch::aarch64::memchr::memrchr3_raw(
+             needle1, needle2, needle3, start, end,
+@@ -713,7 +713,7 @@ unsafe fn memrchr3_raw(
+     #[cfg(not(any(
+         target_arch = "x86_64",
+         target_arch = "wasm32",
+-        target_arch = "aarch64"
++        all(target_arch = "aarch64", target_endian = "little")
+     )))]
+     {
+         crate::arch::all::memchr::Three::new(needle1, needle2, needle3)
+@@ -736,14 +736,14 @@ unsafe fn count_raw(needle: u8, start: *
+     {
+         crate::arch::wasm32::memchr::count_raw(needle, start, end)
+     }
+-    #[cfg(target_arch = "aarch64")]
++    #[cfg(all(target_arch = "aarch64", target_endian = "little"))]
+     {
+         crate::arch::aarch64::memchr::count_raw(needle, start, end)
+     }
+     #[cfg(not(any(
+         target_arch = "x86_64",
+         target_arch = "wasm32",
+-        target_arch = "aarch64"
++        all(target_arch = "aarch64", target_endian = "little")
+     )))]
+     {
+         crate::arch::all::memchr::One::new(needle).count_raw(start, end)
Index: pkgsrc/lang/rust/patches/patch-vendor_memchr-2.7.1_src_memmem_searcher.rs
diff -u /dev/null pkgsrc/lang/rust/patches/patch-vendor_memchr-2.7.1_src_memmem_searcher.rs:1.1
--- /dev/null   Sun Oct 13 19:04:40 2024
+++ pkgsrc/lang/rust/patches/patch-vendor_memchr-2.7.1_src_memmem_searcher.rs   Sun Oct 13 19:04:40 2024
@@ -0,0 +1,79 @@
+$NetBSD: patch-vendor_memchr-2.7.1_src_memmem_searcher.rs,v 1.1 2024/10/13 19:04:40 he Exp $
+
+Skip attempts at using neon on big-endian aarch64.
+Ref. https://github.com/rust-lang/rust/issues/129819
+
+--- vendor/memchr-2.7.1/src/memmem/searcher.rs.orig    2024-09-29 15:19:47.699469326 +0000
++++ vendor/memchr-2.7.1/src/memmem/searcher.rs
+@@ -3,7 +3,7 @@ use crate::arch::all::{
+     rabinkarp, twoway,
+ };
+ 
+-#[cfg(target_arch = "aarch64")]
++#[cfg(all(target_arch = "aarch64", target_endian = "little"))]
+ use crate::arch::aarch64::neon::packedpair as neon;
+ #[cfg(target_arch = "wasm32")]
+ use crate::arch::wasm32::simd128::packedpair as simd128;
+@@ -129,7 +129,7 @@ impl Searcher {
+                 Searcher::twoway(needle, rabinkarp, prestrat)
+             }
+         }
+-        #[cfg(target_arch = "aarch64")]
++        #[cfg(all(target_arch = "aarch64", target_endian = "little"))]
+         {
+             if let Some(pp) = neon::Finder::with_pair(needle, pair) {
+                 if do_packed_search(needle) {
+@@ -152,7 +152,7 @@ impl Searcher {
+         #[cfg(not(any(
+             all(target_arch = "x86_64", target_feature = "sse2"),
+             target_arch = "wasm32",
+-            target_arch = "aarch64"
++            all(target_arch = "aarch64", target_endian = "little")
+         )))]
+         {
+             if prefilter.is_none() {
+@@ -253,7 +253,7 @@ union SearcherKind {
+     avx2: crate::arch::x86_64::avx2::packedpair::Finder,
+     #[cfg(target_arch = "wasm32")]
+     simd128: crate::arch::wasm32::simd128::packedpair::Finder,
+-    #[cfg(target_arch = "aarch64")]
++    #[cfg(all(target_arch = "aarch64", target_endian = "little"))]
+     neon: crate::arch::aarch64::neon::packedpair::Finder,
+ }
+ 
+@@ -421,7 +421,7 @@ unsafe fn searcher_kind_simd128(
+ /// # Safety
+ ///
+ /// Callers must ensure that the `searcher.kind.neon` union field is set.
+-#[cfg(target_arch = "aarch64")]
++#[cfg(all(target_arch = "aarch64", target_endian = "little"))]
+ unsafe fn searcher_kind_neon(
+     searcher: &Searcher,
+     _prestate: &mut PrefilterState,
+@@ -686,7 +686,7 @@ impl Prefilter {
+     }
+ 
+     /// Return a prefilter using a aarch64 neon vector algorithm.
+-    #[cfg(target_arch = "aarch64")]
++    #[cfg(all(target_arch = "aarch64", target_endian = "little"))]
+     #[inline]
+     fn neon(finder: neon::Finder, needle: &[u8]) -> Prefilter {
+         trace!("building aarch64 neon prefilter");
+@@ -763,7 +763,7 @@ union PrefilterKind {
+     avx2: crate::arch::x86_64::avx2::packedpair::Finder,
+     #[cfg(target_arch = "wasm32")]
+     simd128: crate::arch::wasm32::simd128::packedpair::Finder,
+-    #[cfg(target_arch = "aarch64")]
++    #[cfg(all(target_arch = "aarch64", target_endian = "little"))]
+     neon: crate::arch::aarch64::neon::packedpair::Finder,
+ }
+ 
+@@ -852,7 +852,7 @@ unsafe fn prefilter_kind_simd128(
+ /// # Safety
+ ///
+ /// Callers must ensure that the `strat.kind.neon` union field is set.
+-#[cfg(target_arch = "aarch64")]
++#[cfg(all(target_arch = "aarch64", target_endian = "little"))]
+ unsafe fn prefilter_kind_neon(
+     strat: &Prefilter,
+     haystack: &[u8],
Index: pkgsrc/lang/rust/patches/patch-vendor_memchr-2.7.1_src_vector.rs
diff -u /dev/null pkgsrc/lang/rust/patches/patch-vendor_memchr-2.7.1_src_vector.rs:1.1
--- /dev/null   Sun Oct 13 19:04:40 2024
+++ pkgsrc/lang/rust/patches/patch-vendor_memchr-2.7.1_src_vector.rs    Sun Oct 13 19:04:40 2024
@@ -0,0 +1,15 @@
+$NetBSD: patch-vendor_memchr-2.7.1_src_vector.rs,v 1.1 2024/10/13 19:04:40 he Exp $
+
+Avoid using neon on big-endian aarch64.
+
+--- vendor/memchr-2.7.1/src/vector.rs.orig     2024-09-29 15:24:01.478487808 +0000
++++ vendor/memchr-2.7.1/src/vector.rs
+@@ -293,7 +293,7 @@ mod x86avx2 {
+     }
+ }
+ 
+-#[cfg(target_arch = "aarch64")]
++#[cfg(all(target_arch = "aarch64", target_endian = "little"))]
+ mod aarch64neon {
+     use core::arch::aarch64::*;
+ 
Index: pkgsrc/lang/rust/patches/patch-vendor_memchr-2.7.2_src_arch_aarch64_memchr.rs
diff -u /dev/null pkgsrc/lang/rust/patches/patch-vendor_memchr-2.7.2_src_arch_aarch64_memchr.rs:1.1
--- /dev/null   Sun Oct 13 19:04:40 2024
+++ pkgsrc/lang/rust/patches/patch-vendor_memchr-2.7.2_src_arch_aarch64_memchr.rs       Sun Oct 13 19:04:40 2024
@@ -0,0 +1,25 @@
+$NetBSD: patch-vendor_memchr-2.7.2_src_arch_aarch64_memchr.rs,v 1.1 2024/10/13 19:04:40 he Exp $
+
+Turn off use of neon on big-endian aarch64.
+Ref. https://github.com/rust-lang/rust/issues/129819
+
+--- vendor/memchr-2.7.2/src/arch/aarch64/memchr.rs.orig        2024-08-31 22:23:54.486083582 +0000
++++ vendor/memchr-2.7.2/src/arch/aarch64/memchr.rs
+@@ -8,7 +8,7 @@ available for `aarch64` targets.)
+ 
+ macro_rules! defraw {
+     ($ty:ident, $find:ident, $start:ident, $end:ident, $($needles:ident),+) => {{
+-        #[cfg(target_feature = "neon")]
++        #[cfg(all(target_feature = "neon", target_endian = "little"))]
+         {
+             use crate::arch::aarch64::neon::memchr::$ty;
+ 
+@@ -19,7 +19,7 @@ macro_rules! defraw {
+             // enabled.
+             $ty::new_unchecked($($needles),+).$find($start, $end)
+         }
+-        #[cfg(not(target_feature = "neon"))]
++        #[cfg(not(all(target_feature = "neon", target_endian = "little")))]
+         {
+             use crate::arch::all::memchr::$ty;
+ 
Index: pkgsrc/lang/rust/patches/patch-vendor_memchr-2.7.2_src_arch_aarch64_mod.rs
diff -u /dev/null pkgsrc/lang/rust/patches/patch-vendor_memchr-2.7.2_src_arch_aarch64_mod.rs:1.1
--- /dev/null   Sun Oct 13 19:04:40 2024
+++ pkgsrc/lang/rust/patches/patch-vendor_memchr-2.7.2_src_arch_aarch64_mod.rs  Sun Oct 13 19:04:40 2024
@@ -0,0 +1,16 @@
+$NetBSD: patch-vendor_memchr-2.7.2_src_arch_aarch64_mod.rs,v 1.1 2024/10/13 19:04:40 he Exp $
+
+Only use neon extension on little-endian aarch64.
+Ref. https://github.com/rust-lang/rust/issues/129819
+
+--- vendor/memchr-2.7.2/src/arch/aarch64/mod.rs.orig   2024-09-01 09:05:35.656376678 +0000
++++ vendor/memchr-2.7.2/src/arch/aarch64/mod.rs
+@@ -2,6 +2,8 @@
+ Vector algorithms for the `aarch64` target.
+ */
+ 
++#[cfg(target_endian = "little")]
+ pub mod neon;
+ 
++#[cfg(target_endian = "little")]
+ pub(crate) mod memchr;
Index: pkgsrc/lang/rust/patches/patch-vendor_memchr-2.7.2_src_memchr.rs
diff -u /dev/null pkgsrc/lang/rust/patches/patch-vendor_memchr-2.7.2_src_memchr.rs:1.1
--- /dev/null   Sun Oct 13 19:04:40 2024
+++ pkgsrc/lang/rust/patches/patch-vendor_memchr-2.7.2_src_memchr.rs    Sun Oct 13 19:04:40 2024
@@ -0,0 +1,129 @@
+$NetBSD: patch-vendor_memchr-2.7.2_src_memchr.rs,v 1.1 2024/10/13 19:04:40 he Exp $
+
+Only use neon on aarch64 in little-endian mode.
+Ref. https://github.com/rust-lang/rust/issues/129819
+
+--- vendor/memchr-2.7.2/src/memchr.rs.orig     2024-09-01 11:31:02.127419756 +0000
++++ vendor/memchr-2.7.2/src/memchr.rs
+@@ -518,14 +518,14 @@ unsafe fn memchr_raw(
+     {
+         crate::arch::wasm32::memchr::memchr_raw(needle, start, end)
+     }
+-    #[cfg(target_arch = "aarch64")]
++    #[cfg(all(target_arch = "aarch64", target_endian = "little"))]
+     {
+         crate::arch::aarch64::memchr::memchr_raw(needle, start, end)
+     }
+     #[cfg(not(any(
+         target_arch = "x86_64",
+         all(target_arch = "wasm32", target_feature = "simd128"),
+-        target_arch = "aarch64"
++        all(target_arch = "aarch64", target_endian = "little")
+     )))]
+     {
+         crate::arch::all::memchr::One::new(needle).find_raw(start, end)
+@@ -551,14 +551,14 @@ unsafe fn memrchr_raw(
+     {
+         crate::arch::wasm32::memchr::memrchr_raw(needle, start, end)
+     }
+-    #[cfg(target_arch = "aarch64")]
++    #[cfg(all(target_arch = "aarch64", target_endian = "little"))]
+     {
+         crate::arch::aarch64::memchr::memrchr_raw(needle, start, end)
+     }
+     #[cfg(not(any(
+         target_arch = "x86_64",
+         all(target_arch = "wasm32", target_feature = "simd128"),
+-        target_arch = "aarch64"
++        all(target_arch = "aarch64", target_endian = "little")
+     )))]
+     {
+         crate::arch::all::memchr::One::new(needle).rfind_raw(start, end)
+@@ -585,14 +585,14 @@ unsafe fn memchr2_raw(
+     {
+         crate::arch::wasm32::memchr::memchr2_raw(needle1, needle2, start, end)
+     }
+-    #[cfg(target_arch = "aarch64")]
++    #[cfg(all(target_arch = "aarch64", target_endian = "little"))]
+     {
+         crate::arch::aarch64::memchr::memchr2_raw(needle1, needle2, start, end)
+     }
+     #[cfg(not(any(
+         target_arch = "x86_64",
+         all(target_arch = "wasm32", target_feature = "simd128"),
+-        target_arch = "aarch64"
++        all(target_arch = "aarch64", target_endian = "little")
+     )))]
+     {
+         crate::arch::all::memchr::Two::new(needle1, needle2)
+@@ -620,7 +620,7 @@ unsafe fn memrchr2_raw(
+     {
+         crate::arch::wasm32::memchr::memrchr2_raw(needle1, needle2, start, end)
+     }
+-    #[cfg(target_arch = "aarch64")]
++    #[cfg(all(target_arch = "aarch64", target_endian = "little"))]
+     {
+         crate::arch::aarch64::memchr::memrchr2_raw(
+             needle1, needle2, start, end,
+@@ -629,7 +629,7 @@ unsafe fn memrchr2_raw(
+     #[cfg(not(any(
+         target_arch = "x86_64",
+         all(target_arch = "wasm32", target_feature = "simd128"),
+-        target_arch = "aarch64"
++        all(target_arch = "aarch64", target_endian = "little")
+     )))]
+     {
+         crate::arch::all::memchr::Two::new(needle1, needle2)
+@@ -662,7 +662,7 @@ unsafe fn memchr3_raw(
+             needle1, needle2, needle3, start, end,
+         )
+     }
+-    #[cfg(target_arch = "aarch64")]
++    #[cfg(all(target_arch = "aarch64", target_endian = "little"))]
+     {
+         crate::arch::aarch64::memchr::memchr3_raw(
+             needle1, needle2, needle3, start, end,
+@@ -671,7 +671,7 @@ unsafe fn memchr3_raw(
+     #[cfg(not(any(
+         target_arch = "x86_64",
+         all(target_arch = "wasm32", target_feature = "simd128"),
+-        target_arch = "aarch64"
++        all(target_arch = "aarch64", target_endian = "little")
+     )))]
+     {
+         crate::arch::all::memchr::Three::new(needle1, needle2, needle3)
+@@ -704,7 +704,7 @@ unsafe fn memrchr3_raw(
+             needle1, needle2, needle3, start, end,
+         )
+     }
+-    #[cfg(target_arch = "aarch64")]
++    #[cfg(all(target_arch = "aarch64", target_endian = "little"))]
+     {
+         crate::arch::aarch64::memchr::memrchr3_raw(
+             needle1, needle2, needle3, start, end,
+@@ -713,7 +713,7 @@ unsafe fn memrchr3_raw(
+     #[cfg(not(any(
+         target_arch = "x86_64",
+         all(target_arch = "wasm32", target_feature = "simd128"),
+-        target_arch = "aarch64"
++        all(target_arch = "aarch64", target_endian = "little")
+     )))]
+     {
+         crate::arch::all::memchr::Three::new(needle1, needle2, needle3)
+@@ -736,14 +736,14 @@ unsafe fn count_raw(needle: u8, start: *
+     {
+         crate::arch::wasm32::memchr::count_raw(needle, start, end)
+     }
+-    #[cfg(target_arch = "aarch64")]
++    #[cfg(all(target_arch = "aarch64", target_endian = "little"))]
+     {
+         crate::arch::aarch64::memchr::count_raw(needle, start, end)
+     }
+     #[cfg(not(any(
+         target_arch = "x86_64",
+         all(target_arch = "wasm32", target_feature = "simd128"),
+-        target_arch = "aarch64"
++        all(target_arch = "aarch64", target_endian = "little")
+     )))]
+     {
+         crate::arch::all::memchr::One::new(needle).count_raw(start, end)
Index: pkgsrc/lang/rust/patches/patch-vendor_memchr-2.7.2_src_memmem_searcher.rs
diff -u /dev/null pkgsrc/lang/rust/patches/patch-vendor_memchr-2.7.2_src_memmem_searcher.rs:1.1
--- /dev/null   Sun Oct 13 19:04:40 2024
+++ pkgsrc/lang/rust/patches/patch-vendor_memchr-2.7.2_src_memmem_searcher.rs   Sun Oct 13 19:04:40 2024
@@ -0,0 +1,79 @@
+$NetBSD: patch-vendor_memchr-2.7.2_src_memmem_searcher.rs,v 1.1 2024/10/13 19:04:40 he Exp $
+
+Skip attempts at using neon on big-endian aarch64.
+Ref. https://github.com/rust-lang/rust/issues/129819
+
+--- vendor/memchr-2.7.2/src/memmem/searcher.rs.orig    2024-09-01 10:22:12.705269507 +0000
++++ vendor/memchr-2.7.2/src/memmem/searcher.rs
+@@ -3,7 +3,7 @@ use crate::arch::all::{
+     rabinkarp, twoway,
+ };
+ 
+-#[cfg(target_arch = "aarch64")]
++#[cfg(all(target_arch = "aarch64", target_endian = "little"))]
+ use crate::arch::aarch64::neon::packedpair as neon;
+ #[cfg(all(target_arch = "wasm32", target_feature = "simd128"))]
+ use crate::arch::wasm32::simd128::packedpair as simd128;
+@@ -129,7 +129,7 @@ impl Searcher {
+                 Searcher::twoway(needle, rabinkarp, prestrat)
+             }
+         }
+-        #[cfg(target_arch = "aarch64")]
++        #[cfg(all(target_arch = "aarch64", target_endian = "little"))]
+         {
+             if let Some(pp) = neon::Finder::with_pair(needle, pair) {
+                 if do_packed_search(needle) {
+@@ -152,7 +152,7 @@ impl Searcher {
+         #[cfg(not(any(
+             all(target_arch = "x86_64", target_feature = "sse2"),
+             all(target_arch = "wasm32", target_feature = "simd128"),
+-            target_arch = "aarch64"
++            all(target_arch = "aarch64", target_endian = "little")
+         )))]
+         {
+             if prefilter.is_none() {
+@@ -253,7 +253,7 @@ union SearcherKind {
+     avx2: crate::arch::x86_64::avx2::packedpair::Finder,
+     #[cfg(all(target_arch = "wasm32", target_feature = "simd128"))]
+     simd128: crate::arch::wasm32::simd128::packedpair::Finder,
+-    #[cfg(target_arch = "aarch64")]
++    #[cfg(all(target_arch = "aarch64", target_endian = "little"))]
+     neon: crate::arch::aarch64::neon::packedpair::Finder,
+ }
+ 
+@@ -421,7 +421,7 @@ unsafe fn searcher_kind_simd128(
+ /// # Safety
+ ///
+ /// Callers must ensure that the `searcher.kind.neon` union field is set.
+-#[cfg(target_arch = "aarch64")]
++#[cfg(all(target_arch = "aarch64", target_endian = "little"))]
+ unsafe fn searcher_kind_neon(
+     searcher: &Searcher,
+     _prestate: &mut PrefilterState,
+@@ -686,7 +686,7 @@ impl Prefilter {
+     }
+ 
+     /// Return a prefilter using a aarch64 neon vector algorithm.
+-    #[cfg(target_arch = "aarch64")]
++    #[cfg(all(target_arch = "aarch64", target_endian = "little"))]
+     #[inline]
+     fn neon(finder: neon::Finder, needle: &[u8]) -> Prefilter {
+         trace!("building aarch64 neon prefilter");
+@@ -763,7 +763,7 @@ union PrefilterKind {
+     avx2: crate::arch::x86_64::avx2::packedpair::Finder,
+     #[cfg(all(target_arch = "wasm32", target_feature = "simd128"))]
+     simd128: crate::arch::wasm32::simd128::packedpair::Finder,
+-    #[cfg(target_arch = "aarch64")]
++    #[cfg(all(target_arch = "aarch64", target_endian = "little"))]
+     neon: crate::arch::aarch64::neon::packedpair::Finder,
+ }
+ 
+@@ -852,7 +852,7 @@ unsafe fn prefilter_kind_simd128(
+ /// # Safety
+ ///
+ /// Callers must ensure that the `strat.kind.neon` union field is set.
+-#[cfg(target_arch = "aarch64")]
++#[cfg(all(target_arch = "aarch64", target_endian = "little"))]
+ unsafe fn prefilter_kind_neon(
+     strat: &Prefilter,
+     haystack: &[u8],
Index: pkgsrc/lang/rust/patches/patch-vendor_memchr-2.7.2_src_vector.rs
diff -u /dev/null pkgsrc/lang/rust/patches/patch-vendor_memchr-2.7.2_src_vector.rs:1.1
--- /dev/null   Sun Oct 13 19:04:40 2024
+++ pkgsrc/lang/rust/patches/patch-vendor_memchr-2.7.2_src_vector.rs    Sun Oct 13 19:04:40 2024
@@ -0,0 +1,15 @@
+$NetBSD: patch-vendor_memchr-2.7.2_src_vector.rs,v 1.1 2024/10/13 19:04:40 he Exp $
+
+Avoid using neon on big-endian aarch64.
+
+--- vendor/memchr-2.7.2/src/vector.rs.orig     2024-08-31 21:43:37.853458080 +0000
++++ vendor/memchr-2.7.2/src/vector.rs
+@@ -293,7 +293,7 @@ mod x86avx2 {
+     }
+ }
+ 
+-#[cfg(target_arch = "aarch64")]
++#[cfg(all(target_arch = "aarch64", target_endian = "little"))]
+ mod aarch64neon {
+     use core::arch::aarch64::*;
+ 
Index: pkgsrc/lang/rust/patches/patch-vendor_openssl-src-111.28.2+1.1.1w_openssl_Configurations_10-main.conf
diff -u /dev/null pkgsrc/lang/rust/patches/patch-vendor_openssl-src-111.28.2+1.1.1w_openssl_Configurations_10-main.conf:1.1
--- /dev/null   Sun Oct 13 19:04:40 2024
+++ pkgsrc/lang/rust/patches/patch-vendor_openssl-src-111.28.2+1.1.1w_openssl_Configurations_10-main.conf       Sun Oct 13 19:04:40 2024
@@ -0,0 +1,18 @@
+$NetBSD: patch-vendor_openssl-src-111.28.2+1.1.1w_openssl_Configurations_10-main.conf,v 1.1 2024/10/13 19:04:40 he Exp $
+
+Replicate part of
+https://github.com/openssl/openssl/pull/15086
+
+--- vendor/openssl-src-111.28.2+1.1.1w/openssl/Configurations/10-main.conf.orig        2024-08-29 18:07:36.845484717 +0000
++++ vendor/openssl-src-111.28.2+1.1.1w/openssl/Configurations/10-main.conf
+@@ -950,6 +950,10 @@ my %targets = (
+         shared_cflag     => "-fPIC",
+         shared_extension => ".so.\$(SHLIB_VERSION_NUMBER)",
+     },
++    "NetBSD-generic32" => {
++        inherit_from   => [ "BSD-generic32" ],
++        ex_libs                => add(threads("-latomic")),
++    },
+     "BSD-generic64" => {
+         inherit_from     => [ "BSD-generic32" ],
+         bn_ops           => "SIXTY_FOUR_BIT_LONG",
Index: pkgsrc/lang/rust/patches/patch-vendor_openssl-src-111.28.2+1.1.1w_src_lib.rs
diff -u /dev/null pkgsrc/lang/rust/patches/patch-vendor_openssl-src-111.28.2+1.1.1w_src_lib.rs:1.1
--- /dev/null   Sun Oct 13 19:04:40 2024
+++ pkgsrc/lang/rust/patches/patch-vendor_openssl-src-111.28.2+1.1.1w_src_lib.rs        Sun Oct 13 19:04:40 2024
@@ -0,0 +1,62 @@
+$NetBSD: patch-vendor_openssl-src-111.28.2+1.1.1w_src_lib.rs,v 1.1 2024/10/13 19:04:40 he Exp $
+
+--- vendor/openssl-src-111.28.2+1.1.1w/src/lib.rs.orig 2024-08-29 18:09:29.494697634 +0000
++++ vendor/openssl-src-111.28.2+1.1.1w/src/lib.rs
+@@ -239,6 +239,8 @@ impl Build {
+             "aarch64-unknown-freebsd" => "BSD-generic64",
+             "aarch64-unknown-linux-gnu" => "linux-aarch64",
+             "aarch64-unknown-linux-musl" => "linux-aarch64",
++            "aarch64-unknown-netbsd" => "BSD-generic64",
++            "aarch64_be-unknown-netbsd" => "BSD-generic64",
+             "aarch64-pc-windows-msvc" => "VC-WIN64-ARM",
+             "arm-linux-androideabi" => "linux-armv4",
+             "armv7-linux-androideabi" => "linux-armv4",
+@@ -249,14 +251,17 @@ impl Build {
+             "armv5te-unknown-linux-gnueabi" => "linux-armv4",
+             "armv5te-unknown-linux-musleabi" => "linux-armv4",
+             "armv6-unknown-freebsd" => "BSD-generic32",
++            "armv6-unknown-netbsd-eabihf" => "BSD-generic32",
+             "armv7-unknown-freebsd" => "BSD-generic32",
+             "armv7-unknown-linux-gnueabi" => "linux-armv4",
+             "armv7-unknown-linux-musleabi" => "linux-armv4",
+             "armv7-unknown-linux-gnueabihf" => "linux-armv4",
+             "armv7-unknown-linux-musleabihf" => "linux-armv4",
++            "armv7-unknown-netbsd-eabihf" => "BSD-generic32",
+             "asmjs-unknown-emscripten" => "gcc",
+             "i586-unknown-linux-gnu" => "linux-elf",
+             "i586-unknown-linux-musl" => "linux-elf",
++            "i586-unknown-netbsd" => "BSD-x86-elf",
+             "i686-apple-darwin" => "darwin-i386-cc",
+             "i686-linux-android" => "linux-elf",
+             "i686-pc-windows-gnu" => "mingw",
+@@ -264,6 +269,7 @@ impl Build {
+             "i686-unknown-freebsd" => "BSD-x86-elf",
+             "i686-unknown-linux-gnu" => "linux-elf",
+             "i686-unknown-linux-musl" => "linux-elf",
++            "i686-unknown-netbsd" => "BSD-x86-elf",
+             "loongarch64-unknown-linux-gnu" => "linux-generic64",
+             "loongarch64-unknown-linux-musl" => "linux-generic64",
+             "mips-unknown-linux-gnu" => "linux-mips32",
+@@ -274,9 +280,11 @@ impl Build {
+             "mips64el-unknown-linux-muslabi64" => "linux64-mips64",
+             "mipsel-unknown-linux-gnu" => "linux-mips32",
+             "mipsel-unknown-linux-musl" => "linux-mips32",
++            "mipsel-unknown-netbsd" => "NetBSD-generic32",
+             "powerpc-unknown-freebsd" => "BSD-generic32",
+             "powerpc-unknown-linux-gnu" => "linux-ppc",
+             "powerpc-unknown-linux-gnuspe" => "linux-ppc",
++            "powerpc-unknown-netbsd" => "BSD-generic32",
+             "powerpc64-unknown-freebsd" => "BSD-generic64",
+             "powerpc64-unknown-linux-gnu" => "linux-ppc64",
+             "powerpc64-unknown-linux-musl" => "linux-ppc64",
+@@ -284,8 +292,10 @@ impl Build {
+             "powerpc64le-unknown-linux-gnu" => "linux-ppc64le",
+             "powerpc64le-unknown-linux-musl" => "linux-ppc64le",
+             "riscv64gc-unknown-linux-gnu" => "linux-generic64",
++            "riscv64gc-unknown-netbsd" => "BSD-generic64",
+             "s390x-unknown-linux-gnu" => "linux64-s390x",
+             "s390x-unknown-linux-musl" => "linux64-s390x",
++            "sparc64-unknown-netbsd" => "BSD-generic64",
+             "x86_64-apple-darwin" => "darwin64-x86_64-cc",
+             "x86_64-linux-android" => "linux-x86_64",
+             "x86_64-pc-windows-gnu" => "mingw64",
Index: pkgsrc/lang/rust/patches/patch-vendor_zerocopy-0.7.32_src_lib.rs
diff -u /dev/null pkgsrc/lang/rust/patches/patch-vendor_zerocopy-0.7.32_src_lib.rs:1.1
--- /dev/null   Sun Oct 13 19:04:40 2024
+++ pkgsrc/lang/rust/patches/patch-vendor_zerocopy-0.7.32_src_lib.rs    Sun Oct 13 19:04:40 2024
@@ -0,0 +1,25 @@
+$NetBSD: patch-vendor_zerocopy-0.7.32_src_lib.rs,v 1.1 2024/10/13 19:04:40 he Exp $
+
+Attempt at skipping SIMD / neon on big-endian aarch64,
+ref. https://github.com/rust-lang/rust/issues/129819.
+
+--- vendor/zerocopy-0.7.32/src/lib.rs.orig     2024-09-01 12:56:49.837065351 +0000
++++ vendor/zerocopy-0.7.32/src/lib.rs
+@@ -3715,7 +3715,7 @@ mod simd {
+             powerpc64, powerpc64, vector_bool_long, vector_double, vector_signed_long, vector_unsigned_long
+         );
+         simd_arch_mod!(
+-            #[cfg(target_arch = "aarch64")]
++            #[cfg(all(target_arch = "aarch64", target_endian = "little"))]
+             aarch64, aarch64, float32x2_t, float32x4_t, float64x1_t, float64x2_t, int8x8_t, int8x8x2_t,
+             int8x8x3_t, int8x8x4_t, int8x16_t, int8x16x2_t, int8x16x3_t, int8x16x4_t, int16x4_t,
+             int16x8_t, int32x2_t, int32x4_t, int64x1_t, int64x2_t, poly8x8_t, poly8x8x2_t, poly8x8x3_t,
+@@ -7998,7 +7998,7 @@ mod tests {
+                 vector_signed_long,
+                 vector_unsigned_long
+             );
+-            #[cfg(target_arch = "aarch64")]
++            #[cfg(all(target_arch = "aarch64", target_endian = "little"))]
+             #[rustfmt::skip]
+             test_simd_arch_mod!(
+                 aarch64, float32x2_t, float32x4_t, float64x1_t, float64x2_t, int8x8_t, int8x8x2_t,
Index: pkgsrc/lang/rust/patches/patch-vendor_zerocopy-0.7.34_src_lib.rs
diff -u /dev/null pkgsrc/lang/rust/patches/patch-vendor_zerocopy-0.7.34_src_lib.rs:1.1
--- /dev/null   Sun Oct 13 19:04:40 2024
+++ pkgsrc/lang/rust/patches/patch-vendor_zerocopy-0.7.34_src_lib.rs    Sun Oct 13 19:04:40 2024
@@ -0,0 +1,25 @@
+$NetBSD: patch-vendor_zerocopy-0.7.34_src_lib.rs,v 1.1 2024/10/13 19:04:40 he Exp $
+
+Attempt at skipping SIMD / neon on big-endian aarch64,
+ref. https://github.com/rust-lang/rust/issues/129819.
+
+--- vendor/zerocopy-0.7.34/src/lib.rs.orig     2024-08-31 21:15:29.602997509 +0000
++++ vendor/zerocopy-0.7.34/src/lib.rs
+@@ -3727,7 +3727,7 @@ mod simd {
+             powerpc64, powerpc64, vector_bool_long, vector_double, vector_signed_long, vector_unsigned_long
+         );
+         simd_arch_mod!(
+-            #[cfg(target_arch = "aarch64")]
++            #[cfg(all(target_arch = "aarch64", target_endian = "little"))]
+             aarch64, aarch64, float32x2_t, float32x4_t, float64x1_t, float64x2_t, int8x8_t, int8x8x2_t,
+             int8x8x3_t, int8x8x4_t, int8x16_t, int8x16x2_t, int8x16x3_t, int8x16x4_t, int16x4_t,
+             int16x8_t, int32x2_t, int32x4_t, int64x1_t, int64x2_t, poly8x8_t, poly8x8x2_t, poly8x8x3_t,
+@@ -8020,7 +8020,7 @@ mod tests {
+                 vector_signed_long,
+                 vector_unsigned_long
+             );
+-            #[cfg(target_arch = "aarch64")]
++            #[cfg(all(target_arch = "aarch64", target_endian = "little"))]
+             #[rustfmt::skip]
+             test_simd_arch_mod!(
+                 aarch64, float32x2_t, float32x4_t, float64x1_t, float64x2_t, int8x8_t, int8x8x2_t,



Home | Main Index | Thread Index | Old Index