Upgrade rust to version 1.47.0.

Pkgsrc changes:
 * Remove patches now integrated upstream, many related to SunOS / Illumos.
 * The LLVM fix for powerpc is also now integrated upstream.
 * Adapt those patches where the source has moved or parts are integrated.
 * The randomness patches no longer applies, and I could not find
   where those files went...
 * Provide a separate bootstrap for NetBSD/powerpc 9.0, since apparently
   the C++ ABI is different from 8.0.  Yes, this appears to be specific to
   the NetBSD powerpc ports.

Upstream changes:

Version 1.47.0 (2020-10-08)
==========================

Language
--------
- [Closures will now warn when not used.][74869]

Compiler
--------
- [Stabilized the `-C control-flow-guard` codegen option][73893], which enables
  [Control Flow Guard][1.47.0-cfg] for Windows platforms, and is ignored on
  other platforms.
- [Upgraded to LLVM 11.][73526]
- [Added tier 3\* support for the `thumbv4t-none-eabi` target.][74419]
- [Upgrade the FreeBSD toolchain to version 11.4][75204]
- [`RUST_BACKTRACE`'s output is now more compact.][75048]

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

Libraries
---------
- [`CStr` now implements `Index<RangeFrom<usize>>`.][74021]
- [Traits in `std`/`core` are now implemented for arrays of any length, not just
  those of length less than 33.][74060]
- [`ops::RangeFull` and `ops::Range` now implement Default.][73197]
- [`panic::Location` now implements `Copy`, `Clone`, `Eq`, `Hash`, `Ord`,
  `PartialEq`, and `PartialOrd`.][73583]

Stabilized APIs
---------------
- [`Ident::new_raw`]
- [`Range::is_empty`]
- [`RangeInclusive::is_empty`]
- [`Result::as_deref`]
- [`Result::as_deref_mut`]
- [`Vec::leak`]
- [`pointer::offset_from`]
- [`f32::TAU`]
- [`f64::TAU`]

The following previously stable APIs have now been made const.

- [The `new` method for all `NonZero` integers.][73858]
- [The `checked_add`,`checked_sub`,`checked_mul`,`checked_neg`, `checked_shl`,
  `checked_shr`, `saturating_add`, `saturating_sub`, and `saturating_mul`
  methods for all integers.][73858]
- [The `checked_abs`, `saturating_abs`, `saturating_neg`, and `signum`  for all
  signed integers.][73858]
- [The `is_ascii_alphabetic`, `is_ascii_uppercase`, `is_ascii_lowercase`,
  `is_ascii_alphanumeric`, `is_ascii_digit`, `is_ascii_hexdigit`,
  `is_ascii_punctuation`, `is_ascii_graphic`, `is_ascii_whitespace`, and
  `is_ascii_control` methods for `char` and `u8`.][73858]

Cargo
-----
- [`build-dependencies` are now built with opt-level 0 by default.][cargo/8500]
  You can override this by setting the following in your `Cargo.toml`.
  ```toml
  [profile.release.build-override]
  opt-level = 3
  ```
- [`cargo-help` will now display man pages for commands rather just the
  `--help` text.][cargo/8456]
- [`cargo-metadata` now emits a `test` field indicating if a target has
  tests enabled.][cargo/8478]
- [`workspace.default-members` now respects `workspace.exclude`.][cargo/8485]
- [`cargo-publish` will now use an alternative registry by default if it's the
  only registry specified in `package.publish`.][cargo/8571]

Misc
----
- [Added a help button beside Rustdoc's searchbar that explains rustdoc's
  type based search.][75366]
- [Added the Ayu theme to rustdoc.][71237]

Compatibility Notes
-------------------
- [Bumped the minimum supported Emscripten version to 1.39.20.][75716]
- [Fixed a regression parsing `{} && false` in tail expressions.][74650]
- [Added changes to how proc-macros are expanded in `macro_rules!` that should
  help to preserve more span information.][73084] These changes may cause
  compiliation errors if your macro was unhygenic or didn't correctly handle
  `Delimiter::None`.
- [Moved support for the CloudABI target to tier 3.][75568]
- [`linux-gnu` targets now require minimum kernel 2.6.32 and glibc 2.11.][74163]

Internal Only
--------
- [Improved default settings for bootstrapping in `x.py`.][73964]
  You can read details about this change in the ["Changes to `x.py`
  defaults"](https://blog.rust-lang.org/inside-rust/2020/08/30/changes-to-x-py-defaults.html)
  post on the Inside Rust blog.

- [Added the `rustc-docs` component.][75560] This allows you to install
  and read the documentation for the compiler internal APIs. (Currently only
  available for `x86_64-unknown-linux-gnu`.)

[1.47.0-cfg]: https://docs.microsoft.com/en-us/windows/win32/secbp/control-flow-guard
[76980]: https://github.com/rust-lang/rust/issues/76980
[75048]: https://github.com/rust-lang/rust/pull/75048/
[74163]: https://github.com/rust-lang/rust/pull/74163/
[71237]: https://github.com/rust-lang/rust/pull/71237/
[74869]: https://github.com/rust-lang/rust/pull/74869/
[73858]: https://github.com/rust-lang/rust/pull/73858/
[75716]: https://github.com/rust-lang/rust/pull/75716/
[75908]: https://github.com/rust-lang/rust/pull/75908/
[75516]: https://github.com/rust-lang/rust/pull/75516/
[75560]: https://github.com/rust-lang/rust/pull/75560/
[75568]: https://github.com/rust-lang/rust/pull/75568/
[75366]: https://github.com/rust-lang/rust/pull/75366/
[75204]: https://github.com/rust-lang/rust/pull/75204/
[74650]: https://github.com/rust-lang/rust/pull/74650/
[74419]: https://github.com/rust-lang/rust/pull/74419/
[73964]: https://github.com/rust-lang/rust/pull/73964/
[74021]: https://github.com/rust-lang/rust/pull/74021/
[74060]: https://github.com/rust-lang/rust/pull/74060/
[73893]: https://github.com/rust-lang/rust/pull/73893/
[73526]: https://github.com/rust-lang/rust/pull/73526/
[73583]: https://github.com/rust-lang/rust/pull/73583/
[73084]: https://github.com/rust-lang/rust/pull/73084/
[73197]: https://github.com/rust-lang/rust/pull/73197/
[72488]: https://github.com/rust-lang/rust/pull/72488/
[cargo/8456]: https://github.com/rust-lang/cargo/pull/8456/
[cargo/8478]: https://github.com/rust-lang/cargo/pull/8478/
[cargo/8485]: https://github.com/rust-lang/cargo/pull/8485/
[cargo/8500]: https://github.com/rust-lang/cargo/pull/8500/
[cargo/8571]: https://github.com/rust-lang/cargo/pull/8571/
[`Ident::new_raw`]:  https://doc.rust-lang.org/nightly/proc_macro/struct.Ident.html#method.new_raw
[`Range::is_empty`]: https://doc.rust-lang.org/nightly/std/ops/struct.Range.html#method.is_empty
[`RangeInclusive::is_empty`]: https://doc.rust-lang.org/nightly/std/ops/struct.RangeInclusive.html#method.is_empty
[`Result::as_deref_mut`]: https://doc.rust-lang.org/nightly/std/result/enum.Result.html#method.as_deref_mut
[`Result::as_deref`]: https://doc.rust-lang.org/nightly/std/result/enum.Result.html#method.as_deref
[`TypeId::of`]: https://doc.rust-lang.org/nightly/std/any/struct.TypeId.html#method.of
[`Vec::leak`]: https://doc.rust-lang.org/nightly/std/vec/struct.Vec.html#method.leak
[`f32::TAU`]: https://doc.rust-lang.org/nightly/std/f32/consts/constant.TAU.html
[`f64::TAU`]: https://doc.rust-lang.org/nightly/std/f64/consts/constant.TAU.html
[`pointer::offset_from`]: https://doc.rust-lang.org/nightly/std/primitive.pointer.html#method.offset_from
This commit is contained in:
he 2020-11-13 20:35:58 +00:00
parent 2915abcd8b
commit 2775d0fb7d
14 changed files with 181 additions and 455 deletions

View file

@ -1,8 +1,7 @@
# $NetBSD: Makefile,v 1.202 2020/11/09 07:49:18 schmonz Exp $
# $NetBSD: Makefile,v 1.203 2020/11/13 20:35:58 he Exp $
DISTNAME= rustc-1.46.0-src
DISTNAME= rustc-1.47.0-src
PKGNAME= ${DISTNAME:S/rustc/rust/:S/-src//}
PKGREVISION= 2
CATEGORIES= lang
MASTER_SITES= https://static.rust-lang.org/dist/
@ -19,7 +18,7 @@ GCC_REQD+= 5
USE_GCC_RUNTIME= yes
USE_LANGUAGES= c c++11
USE_LIBTOOL= yes
USE_TOOLS+= bash ggrep gmake perl:build pkg-config
USE_TOOLS+= bash grep gmake perl:build pkg-config
# The NetBSD bootstraps are built for NetBSD 8 (because rust doesn't
# build on 7). Mark earlier versions as broken.
@ -155,7 +154,7 @@ BUILDLINK_TRANSFORM.NetBSD+= rm:-Wl,--enable-new-dtags
DISTFILES:= ${DEFAULT_DISTFILES}
.if !empty(MACHINE_PLATFORM:MDarwin-*-x86_64) || make(distinfo) || make (makesum) || make(mdi)
RUST_STAGE0_VER= 1.45.2
RUST_STAGE0_VER= 1.46.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
@ -163,7 +162,7 @@ DISTFILES:= ${DISTFILES} ${RUST_STAGE0} ${RUST_STD_STAGE0}
pre-build-fix:
.endif
.if !empty(MACHINE_PLATFORM:MLinux-*-i386) || make(distinfo) || make (makesum) || make(mdi)
RUST_STAGE0_VER= 1.45.2
RUST_STAGE0_VER= 1.46.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
@ -171,7 +170,7 @@ DISTFILES:= ${DISTFILES} ${RUST_STAGE0} ${RUST_STD_STAGE0}
pre-build-fix:
.endif
.if !empty(MACHINE_PLATFORM:MLinux-*-x86_64) || make(distinfo) || make (makesum) || make(mdi)
RUST_STAGE0_VER= 1.45.2
RUST_STAGE0_VER= 1.46.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
@ -179,7 +178,7 @@ DISTFILES:= ${DISTFILES} ${RUST_STAGE0} ${RUST_STD_STAGE0}
pre-build-fix:
.endif
.if !empty(MACHINE_PLATFORM:MSunOS-*-x86_64) || make(distinfo) || make (makesum) || make(mdi)
RUST_STAGE0_VER= 1.45.0
RUST_STAGE0_VER= 1.46.0
RUST_ARCH:= x86_64-sun-solaris
RUST_STAGE0:= rust-${RUST_STAGE0_VER}-${RUST_ARCH}.tar.gz
SITES.${RUST_STAGE0}= https://us-east.manta.joyent.com/pkgsrc/public/pkg-bootstraps/
@ -188,7 +187,7 @@ RUST_BOOTSTRAP_PATH?= ${WRKDIR}/rust-${RUST_STAGE0_VER}-${RUST_ARCH}
pre-build-fix:
.endif
.if !empty(MACHINE_PLATFORM:MFreeBSD-*-i386) || make(distinfo) || make (makesum) || make(mdi)
RUST_STAGE0_VER= 1.45.2
RUST_STAGE0_VER= 1.46.0
RUST_ARCH:= i686-unknown-freebsd
RUST_STAGE0:= rust-${RUST_STAGE0_VER}-${RUST_ARCH}.tar.gz
RUST_STD_STAGE0:= rust-std-${RUST_STAGE0_VER}-${RUST_ARCH}.tar.gz
@ -196,7 +195,7 @@ DISTFILES:= ${DISTFILES} ${RUST_STAGE0} ${RUST_STD_STAGE0}
pre-build-fix:
.endif
.if !empty(MACHINE_PLATFORM:MFreeBSD-*-x86_64) || make(distinfo) || make (makesum) || make(mdi)
RUST_STAGE0_VER= 1.45.2
RUST_STAGE0_VER= 1.46.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
@ -204,7 +203,7 @@ DISTFILES:= ${DISTFILES} ${RUST_STAGE0} ${RUST_STD_STAGE0}
pre-build-fix:
.endif
.if !empty(MACHINE_PLATFORM:MNetBSD-*-i386) || make(distinfo) || make (makesum) || make(mdi)
RUST_STAGE0_VER= 1.45.2
RUST_STAGE0_VER= 1.46.0
RUST_ARCH= i686-unknown-netbsd
RUST_STAGE0:= rust-${RUST_STAGE0_VER}-${RUST_ARCH}.tar.gz
RUST_STD_STAGE0:= rust-std-${RUST_STAGE0_VER}-${RUST_ARCH}.tar.gz
@ -221,7 +220,7 @@ pre-build-fix:
${TOOLS_PLATFORM.paxctl} +am ${WRKDIR}/rust-bootstrap/bin/rustc
.endif
.if !empty(MACHINE_PLATFORM:MNetBSD-*-x86_64) || make(distinfo) || make (makesum) || make(mdi)
RUST_STAGE0_VER= 1.45.2
RUST_STAGE0_VER= 1.46.0
RUST_ARCH= x86_64-unknown-netbsd
RUST_STAGE0:= rust-${RUST_STAGE0_VER}-${RUST_ARCH}.tar.gz
RUST_STD_STAGE0:= rust-std-${RUST_STAGE0_VER}-${RUST_ARCH}.tar.gz
@ -229,17 +228,31 @@ DISTFILES:= ${DISTFILES} ${RUST_STAGE0} ${RUST_STD_STAGE0}
pre-build-fix:
.endif
.if !empty(MACHINE_PLATFORM:MNetBSD-*-powerpc) || make(distinfo) || make (makesum) || make(mdi)
RUST_STAGE0_VER= 1.45.2
RUST_STAGE0_VER= 1.46.0
RUST_ARCH= powerpc-unknown-netbsd
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}
SITES.${RUST_STAGE0}= ${MASTER_SITE_LOCAL:=rust/}
# Cross-built against NetBSD 9.0
. if empty(OS_VERSION:M8.*) || make(distinfo) || make(makesum) || make(mdi)
RUST_STAGE0:= rust-${RUST_STAGE0_VER}-${RUST_ARCH}90.tar.gz
RUST_STD_STAGE0:= rust-std-${RUST_STAGE0_VER}-${RUST_ARCH}90.tar.gz
DISTFILES:= ${DISTFILES} ${RUST_STAGE0} ${RUST_STD_STAGE0}
SITES.${RUST_STAGE0}= ${MASTER_SITE_LOCAL:=rust/}
SITES.${RUST_STD_STAGE0}= ${MASTER_SITE_LOCAL:=rust/}
. endif
# Cross-built against NetBSD 8.0
. if !empty(OS_VERSION:M8.*) || make(distinfo) || make(makesum) || make(mdi)
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}
SITES.${RUST_STAGE0}= ${MASTER_SITE_LOCAL:=rust/}
SITES.${RUST_STD_STAGE0}= ${MASTER_SITE_LOCAL:=rust/}
. endif
pre-build-fix:
.endif
.if !empty(MACHINE_PLATFORM:MNetBSD-*-aarch64) || make(distinfo) || make (makesum) || make(mdi)
RUST_STAGE0_VER= 1.45.2
RUST_STAGE0_VER= 1.46.0
RUST_ARCH= aarch64-unknown-netbsd
RUST_STAGE0:= rust-${RUST_STAGE0_VER}-${RUST_ARCH}.tar.gz
RUST_STD_STAGE0:= rust-std-${RUST_STAGE0_VER}-${RUST_ARCH}.tar.gz
@ -249,7 +262,7 @@ SITES.${RUST_STD_STAGE0}= ${MASTER_SITE_LOCAL:=rust/}
pre-build-fix:
.endif
.if !empty(MACHINE_PLATFORM:MNetBSD-*-sparc64) || make(distinfo) || make (makesum) || make(mdi)
RUST_STAGE0_VER= 1.45.2
RUST_STAGE0_VER= 1.46.0
RUST_ARCH= sparc64-unknown-netbsd
RUST_STAGE0:= rust-${RUST_STAGE0_VER}-${RUST_ARCH}.tar.gz
RUST_STD_STAGE0:= rust-std-${RUST_STAGE0_VER}-${RUST_ARCH}.tar.gz
@ -260,7 +273,7 @@ pre-build-fix:
.endif
.if !empty(MACHINE_PLATFORM:MNetBSD-*-earmv7hf) || make(distinfo) || make (makesum) || make(mdi)
RUST_ARCH= armv7-unknown-netbsd-eabihf
RUST_STAGE0_VER= 1.45.2
RUST_STAGE0_VER= 1.46.0
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}
@ -296,10 +309,6 @@ SUBST_VARS.rpath= PREFIX
# than one substitution entry per file, but are kept separate below to ease
# updating and verification.
#
CKSUM_CRATES+= vendor/backtrace-sys
CKSUMS+= dbe2eb824252135e7a154805c148defb2142a26b0c2267f5b1033ad69f441e33
CKSUMS+= 323987bb2d5b7ec6044b881b70f339472d886fc23bf212392b8a0158b15d3862
CKSUM_CRATES+= vendor/libc
CKSUMS+= 8a4234e9fcf8f4a64ffcf74ff0bce3e6afa7601cd824e5e9eb6c5c41f709d084
CKSUMS+= b0f52c597f6f0ff7ff95e87754104b3957d1f2623cc53a3ef1986b9c0f0d466f
@ -312,13 +321,9 @@ CKSUM_CRATES+= vendor/lzma-sys
CKSUMS+= 51a9ca7a4576822dc4fa01b31bc4bbed21817777abb304f605ef5951f68c3ed2
CKSUMS+= 807c3aa4b5a62a70ba790df151e9ecf19f4bb562f2858575d690908751262db3
CKSUM_CRATES+= vendor/rand-0.6.1
CKSUMS+= 1e732c2e3b4bd1561f11e0979bf9d20669a96eae7afe0deff9dfbb980ee47bf1
CKSUMS+= bc03f2345d7cfa7000f9da817120b6afa073359789c21a9a790ebd8676c50cca
CKSUM_CRATES+= vendor/stacker
CKSUMS+= 0f3602e048ab4bc5304226b9c171aee46bd58d0e354ead9c7d2ba6ac6d6f262f
CKSUMS+= 978a71088fd5b6116eb9839d311b34a701d1429928fc536de872c2e5cd74dec8
CKSUMS+= 37ef9666d048191eeca23d8f7d99cf912b953cc489bf860107aec306b95b2d99
CKSUMS+= 410f22f5e95860530be1abaaf2e279d2f4226e5c17c2cee302661d8079246b3a
CKSUM_CRATES+= vendor/tokio-uds
CKSUMS+= 2d4ba4a488ebc43333a5a89dbf1bf614d157e916e97b0364c06e3056d5865913

View file

@ -1,9 +1,10 @@
# $NetBSD: buildlink3.mk,v 1.6 2020/07/08 14:46:14 jperkin Exp $
# $NetBSD: buildlink3.mk,v 1.7 2020/11/13 20:35:58 he Exp $
BUILDLINK_TREE+= rust
#
# DO NOT include this directly! Use rust.mk instead.
#
BUILDLINK_TREE+= rust
.if !defined(RUST_BUILDLINK3_MK)
RUST_BUILDLINK3_MK:=

View file

@ -1,101 +1,112 @@
$NetBSD: distinfo,v 1.120 2020/11/06 20:13:49 he Exp $
$NetBSD: distinfo,v 1.121 2020/11/13 20:35:58 he Exp $
SHA1 (rust-1.45.0-x86_64-sun-solaris.tar.gz) = f0c0ce644e0f72b240ecd797b22df271f6e24a5a
RMD160 (rust-1.45.0-x86_64-sun-solaris.tar.gz) = ebf9813d4e4626cdfa5d4bdceb8e4912b0d12ed2
SHA512 (rust-1.45.0-x86_64-sun-solaris.tar.gz) = 451b76f32d8e8d882ddc18f9722a17c5fba58348952c194e93efe6c093e7c3465ab34fcbb92f60edee979782409115d3f7b5ab9bcadbe61ed169fd381f0b777b
Size (rust-1.45.0-x86_64-sun-solaris.tar.gz) = 150890381 bytes
SHA1 (rust-1.45.2-aarch64-unknown-netbsd.tar.gz) = bed778692ce1d9f35b1e4ca09a02e97a9195ab7e
RMD160 (rust-1.45.2-aarch64-unknown-netbsd.tar.gz) = b1a5a7d5922e6e6166fb6452d30ce83bbdf5fbc8
SHA512 (rust-1.45.2-aarch64-unknown-netbsd.tar.gz) = 4def59250a963942179c1bfbccb3d15ee6bac09b8589dec18c6ebcbdd86bed8d71a2fa196a6fe3b78d5baae7571036ce37afdb5c5b1030f00ac107da292a44e3
Size (rust-1.45.2-aarch64-unknown-netbsd.tar.gz) = 165099975 bytes
SHA1 (rust-1.45.2-armv7-unknown-netbsd-eabihf.tar.gz) = 71b77c6f5eb75d02fb6c82b99deec2ce2adf9aa1
RMD160 (rust-1.45.2-armv7-unknown-netbsd-eabihf.tar.gz) = ec1ce866ff4f7a694295036348717be7703b2617
SHA512 (rust-1.45.2-armv7-unknown-netbsd-eabihf.tar.gz) = 21de4e7fd680f1fd3040761f568875ae9578eb28a1a2a910130a6c5e08b66ee3ba707152c764459d7f8615d2265aeb982411ed6d4bc8819e549acf69f933736c
Size (rust-1.45.2-armv7-unknown-netbsd-eabihf.tar.gz) = 159835409 bytes
SHA1 (rust-1.45.2-i686-unknown-freebsd.tar.gz) = d99c88f0e3bddd3563a91b809f36042468ec90b8
RMD160 (rust-1.45.2-i686-unknown-freebsd.tar.gz) = 52f6e9a9ac5f22205043dfffc28419590c11d2d4
SHA512 (rust-1.45.2-i686-unknown-freebsd.tar.gz) = 66dab73c258886da2a61cd650b128fc467ca42cc93cbf09b076c812e08c1f2be414745185dced3a60bdd333a8b0009659c76780acf9950fb60be0b92b00a7033
Size (rust-1.45.2-i686-unknown-freebsd.tar.gz) = 134904088 bytes
SHA1 (rust-1.45.2-i686-unknown-linux-gnu.tar.gz) = 74c4f66f260949d8a59955943aac0cb1c392a799
RMD160 (rust-1.45.2-i686-unknown-linux-gnu.tar.gz) = 36ae192f1a303c4423e4073084a1b88911510c3d
SHA512 (rust-1.45.2-i686-unknown-linux-gnu.tar.gz) = 812f1f6545859f9f5346b28929fd1cc185487d36b09a12f9125e8ce32dc947e3703eb5bc5bb7a7051d34e34fc43ce91b203ffd754a3c5cc60e13c0175104851c
Size (rust-1.45.2-i686-unknown-linux-gnu.tar.gz) = 219033716 bytes
SHA1 (rust-1.45.2-i686-unknown-netbsd.tar.gz) = d17d79a0f9436ee4e09f0493cc389746f19dfce9
RMD160 (rust-1.45.2-i686-unknown-netbsd.tar.gz) = cf00317d7187378c515038a55c621a40d1287c66
SHA512 (rust-1.45.2-i686-unknown-netbsd.tar.gz) = cf2b76aee7f1012f18603e2a3ba74f9dcae34ac7c30092a2f236bd3952dfd70f89f9c4a57a0e1f40c691422102f9b6e29f883fe770d0bd03b0c34bb47dd60988
Size (rust-1.45.2-i686-unknown-netbsd.tar.gz) = 175642779 bytes
SHA1 (rust-1.45.2-powerpc-unknown-netbsd.tar.gz) = 05f9a8717cdf696b514b3696d5142c1a717dabae
RMD160 (rust-1.45.2-powerpc-unknown-netbsd.tar.gz) = ed9a22e91579bac9274286f43d877876ce5cdbb7
SHA512 (rust-1.45.2-powerpc-unknown-netbsd.tar.gz) = f951e7ede88c6e44a0869f7ea1572148c81d59e12ff3260f4fc93f1104ed415cc83de1a017774f756f00c7f22bc2270113ff64b83e6533325f69d30ad232fce7
Size (rust-1.45.2-powerpc-unknown-netbsd.tar.gz) = 184349911 bytes
SHA1 (rust-1.45.2-sparc64-unknown-netbsd.tar.gz) = 1f580f07263329f10add7aecbc10a9f1b7f5a200
RMD160 (rust-1.45.2-sparc64-unknown-netbsd.tar.gz) = 4b72a04ebc8ff1b96aeca43a7d35715bc954b47a
SHA512 (rust-1.45.2-sparc64-unknown-netbsd.tar.gz) = a5cce820ac84183e68a5ccb104ad9c8acda49fca58b6f1b96b43acf4b1fec83bbe7a434b78420d959d2d04bbd15ab175f6fd92f7685e8ec5c8e5ab99d5ec96b4
Size (rust-1.45.2-sparc64-unknown-netbsd.tar.gz) = 175090780 bytes
SHA1 (rust-1.45.2-x86_64-apple-darwin.tar.gz) = 1b1fcd7a7c67b37945815bc14dbd694abf428b5c
RMD160 (rust-1.45.2-x86_64-apple-darwin.tar.gz) = 7e713e0547ad0986bf551f77ec399cb024e09dc3
SHA512 (rust-1.45.2-x86_64-apple-darwin.tar.gz) = 8b80b9c3dbb0a71cd52e876a336b851c60f96e063303bae5c92d1e3cc8da0ee0503088df0188fb5991a6aefc88d828597ccf8a3d13f0d53371c51959b88c7537
Size (rust-1.45.2-x86_64-apple-darwin.tar.gz) = 183140118 bytes
SHA1 (rust-1.45.2-x86_64-unknown-freebsd.tar.gz) = da17b74f8845f747a38ff4d23b43aed7036d352e
RMD160 (rust-1.45.2-x86_64-unknown-freebsd.tar.gz) = 489b7e7fd39140d1ef48848cf8568aeeb0a866a8
SHA512 (rust-1.45.2-x86_64-unknown-freebsd.tar.gz) = 594744c06ef7849193112a4e4257ffa9aa7857c3dc55cd2850e56a1f2a1e3e5f98e1cdddc7b7f2a0500a4f85fd447b137bdcb6b2487d8bf9afa3b826bf2a77f1
Size (rust-1.45.2-x86_64-unknown-freebsd.tar.gz) = 135121836 bytes
SHA1 (rust-1.45.2-x86_64-unknown-linux-gnu.tar.gz) = b678fa72d4acb78d7f016fb08904f7fa378f336d
RMD160 (rust-1.45.2-x86_64-unknown-linux-gnu.tar.gz) = 51c8468f6031d4b0e3df07ba00deadb1df06d0e3
SHA512 (rust-1.45.2-x86_64-unknown-linux-gnu.tar.gz) = d2d1c4114ed99665b85613c8cbf35c709f47443c3611f4e21eebd1ef2c5cbbe1d6670afec4852b7a05e665300aebe7d9dbcc0f571bc86600b5f37c456f9aeaec
Size (rust-1.45.2-x86_64-unknown-linux-gnu.tar.gz) = 200995880 bytes
SHA1 (rust-1.45.2-x86_64-unknown-netbsd.tar.gz) = 187c84df17efa94d182032b4f99521ba2641912a
RMD160 (rust-1.45.2-x86_64-unknown-netbsd.tar.gz) = 64af3db5e42bec9f01c44690510cea3c97e94507
SHA512 (rust-1.45.2-x86_64-unknown-netbsd.tar.gz) = b9d85539df70556ef05d5ce1e86058cbac4dff3138858c33bf30d3337e8d4b3d9830b36420ab7ec281129cdf701add23189cb5c6317ee62e9d1ec811d4c12fce
Size (rust-1.45.2-x86_64-unknown-netbsd.tar.gz) = 141060059 bytes
SHA1 (rust-std-1.45.2-aarch64-unknown-netbsd.tar.gz) = f16388a1430a38d5e0f93a43eb26e81a2ebfc087
RMD160 (rust-std-1.45.2-aarch64-unknown-netbsd.tar.gz) = 52e8fae7cc28481a8e0ac982d58c0f464c234296
SHA512 (rust-std-1.45.2-aarch64-unknown-netbsd.tar.gz) = a0960a1851239f982f917d1404465b33860da08cdff1fe2d1a6afb6532c0c618ab79b3d2b358bc1a31a0783252e992a02569f25878452ade6f249bd3fe5f0c46
Size (rust-std-1.45.2-aarch64-unknown-netbsd.tar.gz) = 17465550 bytes
SHA1 (rust-std-1.45.2-armv7-unknown-netbsd-eabihf.tar.gz) = ef0df7e4776fc38b66c4d874d249837c7caa592e
RMD160 (rust-std-1.45.2-armv7-unknown-netbsd-eabihf.tar.gz) = 40cf43ffdaac4a997fd38fdcd39a56a8c2b6e9ca
SHA512 (rust-std-1.45.2-armv7-unknown-netbsd-eabihf.tar.gz) = 58a62484e3abd6fe0dd925d843c20ee6ff7c7fe4ad49bab87b16d944ec07fc85c57d8d43b2b306e45ed452b6efda4b975c9d5a2832cdc8f40f7bf2de8f796abe
Size (rust-std-1.45.2-armv7-unknown-netbsd-eabihf.tar.gz) = 17189797 bytes
SHA1 (rust-std-1.45.2-i686-unknown-freebsd.tar.gz) = d1a0211af9131935b50a2b87d090b1561ead3d75
RMD160 (rust-std-1.45.2-i686-unknown-freebsd.tar.gz) = 5e5686830647e4307423c6e3cd5fb52d39b7937c
SHA512 (rust-std-1.45.2-i686-unknown-freebsd.tar.gz) = 753fe57e437a42c1ba06db3ac0b1641d29651a7714600a2bcfe58e1159a37ad51648df4d0fac99163af3d92162c8bdc47ac35f2d2289a9a0f63aef2698567f67
Size (rust-std-1.45.2-i686-unknown-freebsd.tar.gz) = 22121274 bytes
SHA1 (rust-std-1.45.2-i686-unknown-linux-gnu.tar.gz) = ba9ab9a7a200d2c2f4f1b1a1b8b2d14bfd8d179c
RMD160 (rust-std-1.45.2-i686-unknown-linux-gnu.tar.gz) = 805fa62c516c7256cf7b1bfc1a878ad54d3e706f
SHA512 (rust-std-1.45.2-i686-unknown-linux-gnu.tar.gz) = 7d6a231ebfbf95e6ba5218546e5a13a876ccb2a09b983010a6f1ebc382d554894254c03c7399fa0305810624f7f0eb1920b839804e65e55c8c7e05085de18bf7
Size (rust-std-1.45.2-i686-unknown-linux-gnu.tar.gz) = 22777434 bytes
SHA1 (rust-std-1.45.2-i686-unknown-netbsd.tar.gz) = 37988a74af079defdfa590687e80783d9fbe3ce4
RMD160 (rust-std-1.45.2-i686-unknown-netbsd.tar.gz) = 5bcb291b6c708134133773b4cc20c4829b76d514
SHA512 (rust-std-1.45.2-i686-unknown-netbsd.tar.gz) = 5623725a5b9391a52e27c5e8eb5f8165038b96f930f56106e00d202534bf7dc3bbb26362568bda62457da49db490b5588fe06fb39888021bb64cbb57d07c8228
Size (rust-std-1.45.2-i686-unknown-netbsd.tar.gz) = 18973808 bytes
SHA1 (rust-std-1.45.2-powerpc-unknown-netbsd.tar.gz) = 7311a7ce81394fa93baa7dac34a1f94ec9d5ad60
RMD160 (rust-std-1.45.2-powerpc-unknown-netbsd.tar.gz) = f26914497df14f0c30dcd502f6a83b406b0c6fbb
SHA512 (rust-std-1.45.2-powerpc-unknown-netbsd.tar.gz) = 1d6c623cbb820da5a08d76f9d2742989ab41da2d8e5f2e66c58dde48894c8740e9da6cb6c0165f40c373423687fdc0419176ccc660b37789394702aa5e6f87e1
Size (rust-std-1.45.2-powerpc-unknown-netbsd.tar.gz) = 17036148 bytes
SHA1 (rust-std-1.45.2-sparc64-unknown-netbsd.tar.gz) = ff7c9627d7c5a58b78c5203a9927a1ccad6c8b03
RMD160 (rust-std-1.45.2-sparc64-unknown-netbsd.tar.gz) = 01aed4905e53a58f54800cf569b30db284c86f0e
SHA512 (rust-std-1.45.2-sparc64-unknown-netbsd.tar.gz) = 32150036acf266795f78a64e50eada272f0f4c8e0826525b305a0b209d43391d5e051b320b29a41e15554e7cdf8fb021d62fce36f986a5fa88c65dab99e69107
Size (rust-std-1.45.2-sparc64-unknown-netbsd.tar.gz) = 17214160 bytes
SHA1 (rust-std-1.45.2-x86_64-apple-darwin.tar.gz) = c88831303cc0db81d4d0436f218c5f2f75e51019
RMD160 (rust-std-1.45.2-x86_64-apple-darwin.tar.gz) = b769e20421103ebb675394c46007db22410b120a
SHA512 (rust-std-1.45.2-x86_64-apple-darwin.tar.gz) = d89ffb361966d912aecbd53a3af882e5eedd4d48041bf6a559344d92419a41d42c464c489fc3c2a9e57c4f7e1dcd6fc0b2d2a49015dccb95cac0e883ba8a0f18
Size (rust-std-1.45.2-x86_64-apple-darwin.tar.gz) = 22623191 bytes
SHA1 (rust-std-1.45.2-x86_64-unknown-freebsd.tar.gz) = d04364bd7cb97c6c1b24371074c159ad0c830f64
RMD160 (rust-std-1.45.2-x86_64-unknown-freebsd.tar.gz) = 8e8a9b8c5cacd1d1547185fb14feb3d81410f9ce
SHA512 (rust-std-1.45.2-x86_64-unknown-freebsd.tar.gz) = 13e708ca8238f7a080c548a27c585e3d241c905495f1f879ac129ec3b2c67661b88a58885d8d01aef4d0faa7756b6a0c351ad2b3fb7b0840da6c578132dfcb26
Size (rust-std-1.45.2-x86_64-unknown-freebsd.tar.gz) = 22390155 bytes
SHA1 (rust-std-1.45.2-x86_64-unknown-linux-gnu.tar.gz) = d8e1a0b8fa93759eb5910f64c60a9c4d2ea50d53
RMD160 (rust-std-1.45.2-x86_64-unknown-linux-gnu.tar.gz) = 9206ee1dcfbf1d20a1910248fe82a9d6a2145665
SHA512 (rust-std-1.45.2-x86_64-unknown-linux-gnu.tar.gz) = 2d0ad09a0c0d1052e59ba29bdc9c0e3e5de0ba38099ecb838923fc75ac124b36066e4c5b9e45f2f373678f38cdd8367eb41d6058186be0b2d8387806e3c1c293
Size (rust-std-1.45.2-x86_64-unknown-linux-gnu.tar.gz) = 26069244 bytes
SHA1 (rust-std-1.45.2-x86_64-unknown-netbsd.tar.gz) = 40d931588d84637e6bd8e056589ae22d93c7e58f
RMD160 (rust-std-1.45.2-x86_64-unknown-netbsd.tar.gz) = a6b567cd316447dbf2512cfa53f69655d2113017
SHA512 (rust-std-1.45.2-x86_64-unknown-netbsd.tar.gz) = ff0d98b9836acc0de4286abd89f581537caf63c13da18c3c58f7a3e0df02ef6ba08e47087cb004c7589dbcdff67596ef27e8217528f7112880904758803ff32e
Size (rust-std-1.45.2-x86_64-unknown-netbsd.tar.gz) = 22405626 bytes
SHA1 (rustc-1.46.0-src.tar.gz) = 69e5da5a087c900311c7637f0f0d379fe7b883f7
RMD160 (rustc-1.46.0-src.tar.gz) = be052e3ebefd880f1738dca8f96dc946359dfd53
SHA512 (rustc-1.46.0-src.tar.gz) = 5c50f449930473577b1ffb5791e6a688394821b368873f788a7d6c984055500a01897523930b763a454982f31d0a2fd4e87dfe5c416dd83ec9c844017e92b98e
Size (rustc-1.46.0-src.tar.gz) = 149449054 bytes
SHA1 (rust-1.46.0-aarch64-unknown-netbsd.tar.gz) = eded0c71aa6a82c76d6cfbac118894a6f7da4ec6
RMD160 (rust-1.46.0-aarch64-unknown-netbsd.tar.gz) = 2cd29b4fbc4d0ef45b8c354143285d10544bbc99
SHA512 (rust-1.46.0-aarch64-unknown-netbsd.tar.gz) = c786388985624bca14f570fac428b3cf5c44651eb6b4531a772a37532aad0a483675ad14eb085a151e2df5158015b3304fc50f6891143b87db6062c631e03e0b
Size (rust-1.46.0-aarch64-unknown-netbsd.tar.gz) = 182621413 bytes
SHA1 (rust-1.46.0-armv7-unknown-netbsd-eabihf.tar.gz) = 893a266a63dfe09f9171ccdbc9f1ed0a5e1ed790
RMD160 (rust-1.46.0-armv7-unknown-netbsd-eabihf.tar.gz) = 784efe53365fb31e3c22b65665d787c6bcc7429e
SHA512 (rust-1.46.0-armv7-unknown-netbsd-eabihf.tar.gz) = b14d57936a2acf0b75ed06f993f6a3fc3d6256916a8779d95e32070035fa70244c438757cdaa7589e579a94506f4fd51b642c3741efcc4600fa74fe17b13289e
Size (rust-1.46.0-armv7-unknown-netbsd-eabihf.tar.gz) = 178391148 bytes
SHA1 (rust-1.46.0-i686-unknown-freebsd.tar.gz) = ae44f976ccf0d75fa628111066c837b30fe48552
RMD160 (rust-1.46.0-i686-unknown-freebsd.tar.gz) = 7192a7ec3466e052adff03276aa4a700056d9c6a
SHA512 (rust-1.46.0-i686-unknown-freebsd.tar.gz) = 83dc955a5d4ae662cc9d040f63ad4256f4f119840206e9a6cc63a50471e50e0ec2d8ba0d5a08c884be426f0c564e5aac8cdb72f3d53d1dcf9693721fb1907281
Size (rust-1.46.0-i686-unknown-freebsd.tar.gz) = 148236060 bytes
SHA1 (rust-1.46.0-i686-unknown-linux-gnu.tar.gz) = 03708900d3b598fb5d0744fc3231717583332480
RMD160 (rust-1.46.0-i686-unknown-linux-gnu.tar.gz) = b1b0edef4ef59fb45b10651be535e86ab39388cb
SHA512 (rust-1.46.0-i686-unknown-linux-gnu.tar.gz) = f1c31dd5ff2418558adc066ec28a30397174c98c430fe2d460e7fd8aa69bdf829c4664d6ce0e0865abe0826a2c4b984f657fbdd16434b652c246f9565e726e8e
Size (rust-1.46.0-i686-unknown-linux-gnu.tar.gz) = 239332716 bytes
SHA1 (rust-1.46.0-i686-unknown-netbsd.tar.gz) = b0df9421abd4fb83642b70f7e4b2110b7832d7b6
RMD160 (rust-1.46.0-i686-unknown-netbsd.tar.gz) = 607b734ba3ba0a22e72d90aea6e5a108e7f8349b
SHA512 (rust-1.46.0-i686-unknown-netbsd.tar.gz) = 9f3fe35d90560d421d2b6451c224ce25e428b503edeff0480ae641816de417114fc4625403c9de9ace25727ba3e96d0724972a1de8ca842436e1cc0b1a7fa3fa
Size (rust-1.46.0-i686-unknown-netbsd.tar.gz) = 188902391 bytes
SHA1 (rust-1.46.0-powerpc-unknown-netbsd.tar.gz) = cd9f2ead55fd0a352c49e8b8ec54d3d2dadfac9f
RMD160 (rust-1.46.0-powerpc-unknown-netbsd.tar.gz) = b7256e0585cc847ee7ce684df7eef9b2c3b33cab
SHA512 (rust-1.46.0-powerpc-unknown-netbsd.tar.gz) = cec587e5f637e98b7e84dbb98a7909761ff542a11db4a8bba803c23c5506f3e295c978a44d58b8dc04e1922eaa84a8975e51e94d6468a389a8269b4112be734a
Size (rust-1.46.0-powerpc-unknown-netbsd.tar.gz) = 203327311 bytes
SHA1 (rust-1.46.0-powerpc-unknown-netbsd90.tar.gz) = ab8486f96150a4538f04aad5a9c4c88d1f795126
RMD160 (rust-1.46.0-powerpc-unknown-netbsd90.tar.gz) = 426542e2df8ec7ed8fc146a67b53280a1a1571f2
SHA512 (rust-1.46.0-powerpc-unknown-netbsd90.tar.gz) = acacd26a56ef7b3fd53c86f59b32791df1aa068a182733be150a96a4c962b8452b1e0e0309a6d582459cd69dfbf63e2f4bf33e4cd427a786bcee9a6f925028cc
Size (rust-1.46.0-powerpc-unknown-netbsd90.tar.gz) = 203329451 bytes
SHA1 (rust-1.46.0-sparc64-unknown-netbsd.tar.gz) = 81496a47afde128a6e218372120d246443f4b8b6
RMD160 (rust-1.46.0-sparc64-unknown-netbsd.tar.gz) = 1cc4cef2f9cfd870c880f968f9e1f0886c7a3005
SHA512 (rust-1.46.0-sparc64-unknown-netbsd.tar.gz) = 13b71a650d6c654bf226d2e576e56f502bc09135db467e72bfc6a72a3487aa42a53ae5b3f8d5872cb5d984038c1331eaf2520e64fd54fa9b9342e8593f96bdda
Size (rust-1.46.0-sparc64-unknown-netbsd.tar.gz) = 194861080 bytes
SHA1 (rust-1.46.0-x86_64-apple-darwin.tar.gz) = ab50631713ba1ea0c9cf8759d4a4773dc2583133
RMD160 (rust-1.46.0-x86_64-apple-darwin.tar.gz) = 389cca70b6343be27ba0719803a00117a36b882d
SHA512 (rust-1.46.0-x86_64-apple-darwin.tar.gz) = a49f3e1205a0cf4419a0c910168f16c5566b665129ca5f7c7ba0b7c885a335672484aecffad1bf2fb8b462d1e08a7f70c5150e1a7394e138eec0e8c7f3ee8d28
Size (rust-1.46.0-x86_64-apple-darwin.tar.gz) = 200695610 bytes
SHA1 (rust-1.46.0-x86_64-sun-solaris.tar.gz) = 081ed2fab901b7b4fbf5035b731abe7793e927b8
RMD160 (rust-1.46.0-x86_64-sun-solaris.tar.gz) = fdac437710f87a228d4c56b569fc831784f193c5
SHA512 (rust-1.46.0-x86_64-sun-solaris.tar.gz) = cbb5be647b1ee0f2f2074d1e3138e6b1ec69e500e4411342255128b1625cb78797af15e0bc895601d62f43ce50049401b2f88edb7c951a405ee7aa645e4b67cf
Size (rust-1.46.0-x86_64-sun-solaris.tar.gz) = 174780795 bytes
SHA1 (rust-1.46.0-x86_64-unknown-freebsd.tar.gz) = 8232b2e76f71d56c3e274ca62c44767020926a56
RMD160 (rust-1.46.0-x86_64-unknown-freebsd.tar.gz) = 6dd5f589bb146c59139a56b023f76b6903d79eff
SHA512 (rust-1.46.0-x86_64-unknown-freebsd.tar.gz) = 1e1b0dbeaa17e27be58704b7c600d88b53322689a05471e8ffcfd65934b90a3ff4dddc49cbf2be8ae1f069ca4ee6512b5e3aebc7a88ee329baa3d37d12788118
Size (rust-1.46.0-x86_64-unknown-freebsd.tar.gz) = 148721211 bytes
SHA1 (rust-1.46.0-x86_64-unknown-linux-gnu.tar.gz) = 466e32dbaf6fe105e7d754c1daba4ab32365d3d6
RMD160 (rust-1.46.0-x86_64-unknown-linux-gnu.tar.gz) = 832375edc504d4b7eab308c64db86b4f13c76d4c
SHA512 (rust-1.46.0-x86_64-unknown-linux-gnu.tar.gz) = 1924938ad33a145c022d0880b6d2ae03dc263a2a3c316147f4ec44751d42a74a4280b4a74ea32f1723644f8299e26ddcb0876b12f32ee9a3d359072bfa55be22
Size (rust-1.46.0-x86_64-unknown-linux-gnu.tar.gz) = 220885103 bytes
SHA1 (rust-1.46.0-x86_64-unknown-netbsd.tar.gz) = 61956d35f668318f91523edf983ef280c967e4f8
RMD160 (rust-1.46.0-x86_64-unknown-netbsd.tar.gz) = f73fe050d4f536bba8577104eb93471a468b714c
SHA512 (rust-1.46.0-x86_64-unknown-netbsd.tar.gz) = afaeb235f445a8813838548ee694c90ab71c3a0fc235652ce0d35e932f0609e2be9f5986bd99ed80d03b24e1b1362ccb6db05cb1eff61284a523477b19f34d7a
Size (rust-1.46.0-x86_64-unknown-netbsd.tar.gz) = 154685586 bytes
SHA1 (rust-std-1.46.0-aarch64-unknown-netbsd.tar.gz) = d04cb25391069a02db58a04e23407c6334d34ae3
RMD160 (rust-std-1.46.0-aarch64-unknown-netbsd.tar.gz) = ee49ba41901143b8fafe71dad2e0b775458f7fac
SHA512 (rust-std-1.46.0-aarch64-unknown-netbsd.tar.gz) = 562418e30c7339caec19259fdf4154d3690e913ec1c2f6498f05acd9b877b13527acd7c5daecfe32dc0f0c30142860fcd1315488df0c585190bf96862bf68162
Size (rust-std-1.46.0-aarch64-unknown-netbsd.tar.gz) = 17642299 bytes
SHA1 (rust-std-1.46.0-armv7-unknown-netbsd-eabihf.tar.gz) = c2484f9088ac95a9121608a56b115fa5399cfea7
RMD160 (rust-std-1.46.0-armv7-unknown-netbsd-eabihf.tar.gz) = 32db03fbc65dcc85ab3336ba1ae6093977652683
SHA512 (rust-std-1.46.0-armv7-unknown-netbsd-eabihf.tar.gz) = 2400ff368953bd65b90b52354d1c037a6fe6ea1f9ede3cd7388678107af799b717187921716b5a479647e940010a746facadcc4a5d03106a17316132ae290548
Size (rust-std-1.46.0-armv7-unknown-netbsd-eabihf.tar.gz) = 17330293 bytes
SHA1 (rust-std-1.46.0-i686-unknown-freebsd.tar.gz) = 71034bf67db32451c92dd1c60ac106f6f47c4d3f
RMD160 (rust-std-1.46.0-i686-unknown-freebsd.tar.gz) = 900eec237b79d3fd8aa54954c8694d48024d7880
SHA512 (rust-std-1.46.0-i686-unknown-freebsd.tar.gz) = 1280f7b6571522d635e27c529fe32c4d4b65b796ed5ddf6a62dd64e96ee19136f9437027fcee282998c4b52b959c55590f418dfc17c1576339ccfbe88e9e3419
Size (rust-std-1.46.0-i686-unknown-freebsd.tar.gz) = 22264630 bytes
SHA1 (rust-std-1.46.0-i686-unknown-linux-gnu.tar.gz) = 9963b64d434d3119e3bc450f5316251ff79fd812
RMD160 (rust-std-1.46.0-i686-unknown-linux-gnu.tar.gz) = 8f5fa510347b15c0f7d02f56c5eb849a82dbded4
SHA512 (rust-std-1.46.0-i686-unknown-linux-gnu.tar.gz) = 64172faa19ef725748a3b219d8cdd3d919ceca61ee8dd3fdb11b6ef540f4956b759eb589888af83829bd5f95c033b0a528115a996b41e09c3dfa090b7aba5438
Size (rust-std-1.46.0-i686-unknown-linux-gnu.tar.gz) = 22931718 bytes
SHA1 (rust-std-1.46.0-i686-unknown-netbsd.tar.gz) = 4df47785a48a91b0e97447437281764617123f52
RMD160 (rust-std-1.46.0-i686-unknown-netbsd.tar.gz) = de36c4ec1da2923e6df222e1842ab9f862013038
SHA512 (rust-std-1.46.0-i686-unknown-netbsd.tar.gz) = e343a4be4d7bad99eb34c0a78b85a418b1745b92e01e0366dc4faee785d8abc64db86781508a184298085d6f4fef5e405b7c25a2c47461b4d7dd9ef63526ea25
Size (rust-std-1.46.0-i686-unknown-netbsd.tar.gz) = 19130660 bytes
SHA1 (rust-std-1.46.0-powerpc-unknown-netbsd.tar.gz) = 720f9223284f64c46b4a97b03646dbf49bdbd8b9
RMD160 (rust-std-1.46.0-powerpc-unknown-netbsd.tar.gz) = 383f5d6d0b1d5400c4350f4beb330bb7c845e070
SHA512 (rust-std-1.46.0-powerpc-unknown-netbsd.tar.gz) = 8c300cfbefe0e6d73da6db23bb29bd53f72f44f1fc141d35bf54b92253ad32f1a67b0a046a062dec748f2fe596b375d29b960de2461537bfdf2b07b2a1f5e812
Size (rust-std-1.46.0-powerpc-unknown-netbsd.tar.gz) = 17214042 bytes
SHA1 (rust-std-1.46.0-powerpc-unknown-netbsd90.tar.gz) = 75195d1390ddcd37ddd164c8edab87f313b79ea1
RMD160 (rust-std-1.46.0-powerpc-unknown-netbsd90.tar.gz) = d238c192968da2fd6d9a153264cba102ac509e68
SHA512 (rust-std-1.46.0-powerpc-unknown-netbsd90.tar.gz) = 3efd655b5040fbed02393b9be99175d2a33743049f37413e6374e71a59a697b24f583ec2f5ee88d2a7c7cda894c5effd559115fde298fdfe19eb6655b01f7063
Size (rust-std-1.46.0-powerpc-unknown-netbsd90.tar.gz) = 17214040 bytes
SHA1 (rust-std-1.46.0-sparc64-unknown-netbsd.tar.gz) = a8c7c0fc2ea161cc7b510fced1ffdd901606c72b
RMD160 (rust-std-1.46.0-sparc64-unknown-netbsd.tar.gz) = b33198386d7bc104ec2de32391dc743bcf34c90a
SHA512 (rust-std-1.46.0-sparc64-unknown-netbsd.tar.gz) = 5be3e09c41c30273422364e02c08152b0ad4566cdd9226c7f93b3d2ee4b6b61ff111deeb1f52c78fcdae83e70b45b3b318acb6a419053709d2fdbb976a06bb4c
Size (rust-std-1.46.0-sparc64-unknown-netbsd.tar.gz) = 17426659 bytes
SHA1 (rust-std-1.46.0-x86_64-apple-darwin.tar.gz) = b13298974a034fbabd93dfba6555a3a9d5615dfa
RMD160 (rust-std-1.46.0-x86_64-apple-darwin.tar.gz) = bd8d58fca200428b03603d770beeee8bf94e5de6
SHA512 (rust-std-1.46.0-x86_64-apple-darwin.tar.gz) = d8d46db3dd54c7b14115bf8da7c96a18dc62e7fcf1605ec3060c0760bd2db960fd9b5e0a22a0b7e39c3429454d60d24d67eca4a546dd8e5acf46aad33113e16b
Size (rust-std-1.46.0-x86_64-apple-darwin.tar.gz) = 22888748 bytes
SHA1 (rust-std-1.46.0-x86_64-unknown-freebsd.tar.gz) = 04bf127ce1d9037d8bd6eb5ca7fb86c0a34a8af1
RMD160 (rust-std-1.46.0-x86_64-unknown-freebsd.tar.gz) = 02f08dbccf2db9cfbcca54c295005c77597fef62
SHA512 (rust-std-1.46.0-x86_64-unknown-freebsd.tar.gz) = 3f55e514aff6dfcc61c1959a94d182d3c6ac0c2ac597de4770f400ade8905259f689b0e92854ed0ede6d82ca8ea2f0934c6acb51eef28e2346f38f8eec63bfec
Size (rust-std-1.46.0-x86_64-unknown-freebsd.tar.gz) = 22639606 bytes
SHA1 (rust-std-1.46.0-x86_64-unknown-linux-gnu.tar.gz) = deb1cb9d57777ef630b2acbda60794f902dc5a08
RMD160 (rust-std-1.46.0-x86_64-unknown-linux-gnu.tar.gz) = 928fa8cee3123af975ab3e5bbcc58f8258a37cd9
SHA512 (rust-std-1.46.0-x86_64-unknown-linux-gnu.tar.gz) = 0291f64bb01ca02dbfa8e25c23ff1c90ffc431e8455244e366bc1e88ce3db9ff5de452f744692b5bb3e9c34c50308fe11997737566f378ec3c09ac4345889c8a
Size (rust-std-1.46.0-x86_64-unknown-linux-gnu.tar.gz) = 26310833 bytes
SHA1 (rust-std-1.46.0-x86_64-unknown-netbsd.tar.gz) = 154767516a8f1e358c340d602efa9d86622cb4bd
RMD160 (rust-std-1.46.0-x86_64-unknown-netbsd.tar.gz) = 1f504e4f7053246067d0e41ddbcadd85ddf573c6
SHA512 (rust-std-1.46.0-x86_64-unknown-netbsd.tar.gz) = 2e3431bfe462408906b4553a181653b68c615bae6170362e73dd125ae538b499cd745cc903ca79db41aff9bff3ce366726c92570be5fa264723be7d7018fbbce
Size (rust-std-1.46.0-x86_64-unknown-netbsd.tar.gz) = 22644831 bytes
SHA1 (rustc-1.47.0-src.tar.gz) = 5a337c88aeb04a31011037671588fd66b046ca32
RMD160 (rustc-1.47.0-src.tar.gz) = 2fee85c5e52046982a51eff62f64e123f798ed56
SHA512 (rustc-1.47.0-src.tar.gz) = a6df9e2d599806eeddbfb35f7dea976781533f63d369a765b8a304221281c9f9e642ff952978f69eaaa0b28740ab5ea566b35ce481097c37fd5117bfec1f43dd
Size (rustc-1.47.0-src.tar.gz) = 151861620 bytes
SHA1 (patch-library_std_build.rs) = c69af2a424bca60bc91741b8d4cb5fd633bbacca
SHA1 (patch-library_std_src_sys_unix_thread.rs) = 517a1836d6c5c56d5b7ec642559ccbe1f980e9d5
SHA1 (patch-library_unwind_build.rs) = 68bd62f14c764a266b7e92a2a3cd36810d006847
SHA1 (patch-src_bootstrap_bootstrap.py) = 53e0409527f3e52dd00b5c86e6c38047626e2379
SHA1 (patch-src_bootstrap_builder.rs) = 5dd33ec8458cdcc6f1780d98c7e0b8e7a93e00d9
SHA1 (patch-src_bootstrap_compile.rs) = 67d5ad13e13e6818535a319f55e990d511e7b83f
@ -104,25 +115,16 @@ SHA1 (patch-src_librustc__codegen__ssa_back_linker.rs) = e7c592f78b9ee317521cf02
SHA1 (patch-src_librustc__llvm_build.rs) = 7cc2aa0568aa2cbf4eb1fdbb00922b10df0b3ff6
SHA1 (patch-src_librustc__target_spec_solaris__base.rs) = 5ed283e5ead1ec60f0c9879fa3c8190248976dc7
SHA1 (patch-src_librustc__target_spec_x86__64__sun__solaris.rs) = f6ad33b41906bbf83a1cbd0e2fe13a4da37266fa
SHA1 (patch-src_libstd_build.rs) = eb8faae53e997c14a40c0d35615f4ca5e316e7cc
SHA1 (patch-src_libstd_sys_unix_thread.rs) = 2554f1a42afaa0ddce5053860f4dabecdf6c527a
SHA1 (patch-src_libunwind_build.rs) = 723ded63580812f74d04c447f90925725ae9bfc9
SHA1 (patch-src_llvm-project_llvm_CMakeLists.txt) = d49503d19c30a64d571eb7fa79e7aad7038cd427
SHA1 (patch-src_llvm-project_llvm_cmake_modules_AddLLVM.cmake) = 199ae71ae2e42bb67e54354a051fc9faa71f9bfe
SHA1 (patch-src_llvm-project_llvm_cmake_modules_AddLLVM.cmake) = bfdf8dc323cc5e59e880627fc7a240be805941d8
SHA1 (patch-src_llvm-project_llvm_include_llvm-c_DataTypes.h) = 7588a46aaa277ef04b33ac6d904b9d1d81579f2a
SHA1 (patch-src_llvm-project_llvm_include_llvm_Analysis_ConstantFolding.h) = 977de4b2a9d37f7e7c782f2407c15591e032b6c6
SHA1 (patch-src_llvm-project_llvm_lib_Target_PowerPC_PPCInstrInfo.td) = b2e8c29a279d511b51414241b3fe6a2f14c26502
SHA1 (patch-src_llvm-project_llvm_utils_FileCheck_FileCheck.cpp) = 2675b93a1d636b297a3e1e84b915a15a3da67939
SHA1 (patch-src_tools_cargo_src_cargo_core_profiles.rs) = 3aac5d54a6fe96b9559552e67e497488142d4e80
SHA1 (patch-src_tools_cargo_tests_testsuite_build.rs) = 10e6c1253adac0262b000aec7636fa0d2ebb666c
SHA1 (patch-src_tools_rls_rls_src_cmd.rs) = fade3e60fecac5c4e4d4ee5bee82659b4eb385b7
SHA1 (patch-src_tools_rls_rls_src_server_io.rs) = 51af64526db55abcf6b4b3165df314a16cf62e34
SHA1 (patch-src_tools_rust-installer_install-template.sh) = f2ec6dced2be1fa23773d5827503ad07d0913dc2
SHA1 (patch-vendor_backtrace-sys_src_libbacktrace_configure) = 90e54f66edce65ebe23fbf2480deb193ca926733
SHA1 (patch-vendor_libc_src_unix_solarish_mod.rs) = 804ea03be546fef0d2bd37d7f8abb26d38a7892b
SHA1 (patch-vendor_libssh2-sys_libssh2_Makefile.am) = fc859243adffbe4e4202ed44792ecab09f347f31
SHA1 (patch-vendor_lzma-sys_config.h) = ab963fc8d7a847715e0e0dc2928333efe38e923f
SHA1 (patch-vendor_rand-0.6.1_src_rngs_os.rs) = c068ae41fb69a524336efcef7df7a9d1326d04f1
SHA1 (patch-vendor_rand__os_src_netbsd.rs) = 049df63c904abd81cb92f33fa0882f5c81cae51a
SHA1 (patch-vendor_stacker_src_lib.rs) = 2f4db9971c0558ec7034052c810b8c8be80c4ae3
SHA1 (patch-vendor_tokio-uds_src_ucred.rs) = 175f870a50fe27e9ada8b1a680b3bf5f8734a3a4

View file

@ -1,32 +1,32 @@
$NetBSD: patch-src_libstd_build.rs,v 1.9 2020/07/08 14:46:14 jperkin Exp $
$NetBSD: patch-library_std_build.rs,v 1.1 2020/11/13 20:35:58 he Exp $
- Support PKGSRC_USE_SSP (ugly for now).
- Add libexecinfo for backtrace().
--- src/libstd/build.rs.orig 2020-06-01 15:44:16.000000000 +0000
+++ src/libstd/build.rs
@@ -16,6 +16,7 @@ fn main() {
println!("cargo:rustc-link-lib=execinfo");
println!("cargo:rustc-link-lib=pthread");
--- library/std/build.rs.orig 2020-10-07 07:53:22.000000000 +0000
+++ library/std/build.rs
@@ -20,6 +20,7 @@ fn main() {
println!("cargo:rustc-cfg=freebsd12");
}
} else if target.contains("netbsd") {
+ println!("cargo:rustc-link-lib=execinfo");
println!("cargo:rustc-link-lib=pthread");
println!("cargo:rustc-link-lib=rt");
} else if target.contains("dragonfly") || target.contains("openbsd") {
@@ -25,12 +26,16 @@ fn main() {
@@ -29,12 +30,16 @@ fn main() {
println!("cargo:rustc-link-lib=posix4");
println!("cargo:rustc-link-lib=pthread");
println!("cargo:rustc-link-lib=resolv");
+ println!("cargo:rustc-link-lib=nsl");
+ println!("cargo:rustc-link-lib=ssp");
+ println!("cargo:rustc-link-lib=umem");
+ println!("cargo:rustc-link-lib=nsl");
+ println!("cargo:rustc-link-lib=ssp");
+ println!("cargo:rustc-link-lib=umem");
} else if target.contains("illumos") {
println!("cargo:rustc-link-lib=socket");
println!("cargo:rustc-link-lib=posix4");
println!("cargo:rustc-link-lib=pthread");
println!("cargo:rustc-link-lib=resolv");
println!("cargo:rustc-link-lib=nsl");
+ println!("cargo:rustc-link-lib=ssp");
+ println!("cargo:rustc-link-lib=ssp");
// Use libumem for the (malloc-compatible) allocator
println!("cargo:rustc-link-lib=umem");
} else if target.contains("apple-darwin") {

View file

@ -0,0 +1,15 @@
$NetBSD: patch-library_std_src_sys_unix_thread.rs,v 1.1 2020/11/13 20:35:58 he Exp $
Fix stack-clash on SunOS.
--- library/std/src/sys/unix/thread.rs.orig 2020-10-07 07:53:22.000000000 +0000
+++ library/std/src/sys/unix/thread.rs
@@ -333,7 +333,7 @@ pub mod guard {
let page_size = os::page_size();
PAGE_SIZE.store(page_size, Ordering::Relaxed);
- if cfg!(all(target_os = "linux", not(target_env = "musl"))) {
+ if cfg!(any(all(target_os = "linux", not(target_env = "musl")), target_os = "solaris")) {
// Linux doesn't allocate the whole stack right away, and
// the kernel has its own stack-guard mechanism to fault
// when growing too close to an existing mapping. If we map

View file

@ -1,17 +1,17 @@
$NetBSD: patch-src_libunwind_build.rs,v 1.4 2019/11/11 10:28:34 he Exp $
$NetBSD: patch-library_unwind_build.rs,v 1.1 2020/11/13 20:35:58 he Exp $
fix build on NetBSD HEAD-llvm. XXX there is probably a better way to do this.
--- src/libunwind/build.rs.orig 2018-12-18 23:11:17.000000000 +0000
+++ src/libunwind/build.rs
@@ -21,7 +21,9 @@ fn main() {
--- library/unwind/build.rs.orig 2020-10-07 07:53:22.000000000 +0000
+++ library/unwind/build.rs
@@ -23,7 +23,9 @@ fn main() {
} else if target.contains("rumprun") {
println!("cargo:rustc-link-lib=unwind");
} else if target.contains("netbsd") {
- println!("cargo:rustc-link-lib=gcc_s");
+ if !env::var_os("PKGSRC_HAVE_LIBCPP").is_some() {
+ if !env::var_os("PKGSRC_HAVE_LIBCPP").is_some() {
+ println!("cargo:rustc-link-lib=gcc_s");
+ }
+ }
} else if target.contains("openbsd") {
if target.contains("sparc64") {
println!("cargo:rustc-link-lib=gcc");

View file

@ -1,15 +0,0 @@
$NetBSD: patch-src_libstd_sys_unix_thread.rs,v 1.5 2019/03/03 09:16:21 he Exp $
Fix stack-clash on SunOS.
--- src/libstd/sys/unix/thread.rs.orig 2018-07-30 22:15:53.000000000 +0000
+++ src/libstd/sys/unix/thread.rs
@@ -300,7 +300,7 @@ pub mod guard {
let stackaddr = get_stack_start_aligned()?;
- if cfg!(target_os = "linux") {
+ if cfg!(any(target_os = "linux", target_os = "solaris")) {
// Linux doesn't allocate the whole stack right away, and
// the kernel has its own stack-guard mechanism to fault
// when growing too close to an existing mapping. If we map

View file

@ -1,20 +1,10 @@
$NetBSD: patch-src_llvm-project_llvm_cmake_modules_AddLLVM.cmake,v 1.3 2020/08/06 11:42:56 jperkin Exp $
$NetBSD: patch-src_llvm-project_llvm_cmake_modules_AddLLVM.cmake,v 1.4 2020/11/13 20:35:58 he Exp $
"-z discard-unused" is only supported by Oracle Solaris ld.
On Darwin, use correct install-name for shared libraries.
--- src/llvm-project/llvm/cmake/modules/AddLLVM.cmake.orig 2020-05-20 18:10:32.000000000 +0000
+++ src/llvm-project/llvm/cmake/modules/AddLLVM.cmake
@@ -234,8 +234,6 @@ function(add_link_opts target_name)
set_property(TARGET ${target_name} APPEND_STRING PROPERTY
LINK_FLAGS " -Wl,-dead_strip")
elseif(${CMAKE_SYSTEM_NAME} MATCHES "SunOS")
- set_property(TARGET ${target_name} APPEND_STRING PROPERTY
- LINK_FLAGS " -Wl,-z -Wl,discard-unused=sections")
elseif(NOT WIN32 AND NOT LLVM_LINKER_IS_GOLD AND
NOT ${CMAKE_SYSTEM_NAME} MATCHES "OpenBSD|AIX")
# Object files are compiled with -ffunction-data-sections.
@@ -1887,7 +1885,7 @@ function(llvm_setup_rpath name)
@@ -2063,7 +2063,7 @@ function(llvm_setup_rpath name)
endif()
if (APPLE)

View file

@ -1,22 +0,0 @@
$NetBSD: patch-src_llvm-project_llvm_lib_Target_PowerPC_PPCInstrInfo.td,v 1.1 2020/11/06 20:13:49 he Exp $
Apply fix from
https://github.com/llvm/llvm-project/commit/a5d161c119d5a03c1ce834c6f4ce2576d6a064e4
so we avoid emitting a 64-bit-only instruction in 32-bit ppc code.
--- src/llvm-project/llvm/lib/Target/PowerPC/PPCInstrInfo.td.orig 2020-07-07 06:39:17.000000000 +0000
+++ src/llvm-project/llvm/lib/Target/PowerPC/PPCInstrInfo.td
@@ -5025,8 +5025,11 @@ def RotateInsertByte1 {
dag Left = (RLWIMI RotateInsertByte3.Left, Swap4.Bits, 8, 24, 31);
}
-def : Pat<(i32 (bitreverse i32:$A)),
- (RLDICL_32 RotateInsertByte1.Left, 0, 32)>;
+// Clear the upper half of the register when in 64-bit mode
+let Predicates = [In64BitMode] in
+def : Pat<(i32 (bitreverse i32:$A)), (RLDICL_32 RotateInsertByte1.Left, 0, 32)>;
+let Predicates = [In32BitMode] in
+def : Pat<(i32 (bitreverse i32:$A)), RotateInsertByte1.Left>;
// Fast 64-bit reverse bits algorithm:
// Step 1: 1-bit swap (swap odd 1-bit and even 1-bit):

View file

@ -1,15 +0,0 @@
$NetBSD: patch-vendor_backtrace-sys_src_libbacktrace_configure,v 1.1 2019/03/03 09:16:21 he Exp $
Use pkgsrc libtool.
--- vendor/backtrace-sys/src/libbacktrace/configure.orig 2019-02-28 10:22:21.000000000 +0000
+++ vendor/backtrace-sys/src/libbacktrace/configure
@@ -7352,7 +7352,7 @@ fi
LIBTOOL_DEPS="$ltmain"
# Always use our own libtool.
-LIBTOOL='$(SHELL) $(top_builddir)/libtool'
+LIBTOOL='libtool'

View file

@ -1,15 +0,0 @@
$NetBSD: patch-vendor_libssh2-sys_libssh2_Makefile.am,v 1.2 2020/08/06 11:42:56 jperkin Exp $
Shell portability fix.
--- vendor/libssh2-sys/libssh2/Makefile.am.orig 2020-02-25 00:28:47.000000000 +0000
+++ vendor/libssh2-sys/libssh2/Makefile.am
@@ -119,7 +119,7 @@ $(DSP): win32/msvcproj.head win32/msvcpr
for file in $$sorted_hdrs; do \
echo "# Begin Source File"; \
echo ""; \
- if [ "$$file" == "libssh2_config.h" ]; \
+ if [ "$$file" = "libssh2_config.h" ]; \
then \
echo "SOURCE=.\\"$$file; \
else \

View file

@ -1,101 +0,0 @@
$NetBSD: patch-vendor_rand-0.6.1_src_rngs_os.rs,v 1.1 2020/08/06 11:42:56 jperkin Exp $
-Explicitly disable getrandom support on SunOS, the test fails.
-https://github.com/rust-random/rand/issues/637
The rand implementation for NetBSD drains a byte from /dev/random on every
rustc invocation, with the intent to ensure /dev/urandom is seeded.
This is inappropriate; seeding the rng should be handled by rc.d scripts only.
The result is that rustc eventually blocks for very long times when generating
temp file names, causing the lang/rust build to take days(!) in some cases.
The fix is to delete the NetBSD specific implementation and instead use the
FreeBSD implementation which relies on the kern.arandom sysctl instead of
/dev/{u,}random.
The bootstrap compiler of course has the same issue so I will raise a PR
with upstream authors to address this.
--- vendor/rand-0.6.1/src/rngs/os.rs.orig 2019-09-23 23:15:03.000000000 +0000
+++ vendor/rand-0.6.1/src/rngs/os.rs
@@ -246,7 +246,7 @@ trait OsRngImpl where Self: Sized {
// All instances use a single internal file handle, to prevent possible
// exhaustion of file descriptors.
#[cfg(any(target_os = "linux", target_os = "android",
- target_os = "netbsd", target_os = "dragonfly",
+ target_os = "dragonfly",
target_os = "solaris", target_os = "redox",
target_os = "haiku", target_os = "emscripten"))]
mod random_device {
@@ -487,56 +487,6 @@ mod imp {
}
}
-
-#[cfg(target_os = "netbsd")]
-mod imp {
- use Error;
- use super::random_device;
- use super::OsRngImpl;
-
- use std::fs::File;
- use std::io::Read;
- use std::sync::atomic::{AtomicBool, ATOMIC_BOOL_INIT, Ordering};
-
- #[derive(Clone, Debug)]
- pub struct OsRng { initialized: bool }
-
- impl OsRngImpl for OsRng {
- fn new() -> Result<OsRng, Error> {
- random_device::open("/dev/urandom", &|p| File::open(p))?;
- Ok(OsRng { initialized: false })
- }
-
- fn fill_chunk(&mut self, dest: &mut [u8]) -> Result<(), Error> {
- random_device::read(dest)
- }
-
- // Read a single byte from `/dev/random` to determine if the OS RNG is
- // already seeded. NetBSD always blocks if not yet ready.
- fn test_initialized(&mut self, dest: &mut [u8], _blocking: bool)
- -> Result<usize, Error>
- {
- static OS_RNG_INITIALIZED: AtomicBool = ATOMIC_BOOL_INIT;
- if !self.initialized {
- self.initialized = OS_RNG_INITIALIZED.load(Ordering::Relaxed);
- }
- if self.initialized { return Ok(0); }
-
- info!("OsRng: testing random device /dev/random");
- let mut file =
- File::open("/dev/random").map_err(random_device::map_err)?;
- file.read(&mut dest[..1]).map_err(random_device::map_err)?;
-
- OS_RNG_INITIALIZED.store(true, Ordering::Relaxed);
- self.initialized = true;
- Ok(1)
- }
-
- fn method_str(&self) -> &'static str { "/dev/urandom" }
- }
-}
-
-
#[cfg(any(target_os = "dragonfly",
target_os = "haiku",
target_os = "emscripten"))]
@@ -677,6 +627,7 @@ mod imp {
}
fn getrandom(buf: &mut [u8], blocking: bool) -> libc::c_long {
+ return -1;
extern "C" {
fn syscall(number: libc::c_long, ...) -> libc::c_long;
}
@@ -824,7 +775,7 @@ mod imp {
}
-#[cfg(target_os = "freebsd")]
+#[cfg(any(target_os = "freebsd", target_os = "netbsd"))]
mod imp {
extern crate libc;

View file

@ -1,95 +0,0 @@
$NetBSD: patch-vendor_rand__os_src_netbsd.rs,v 1.1 2019/10/02 12:51:43 he Exp $
Use the FreeBSD implementation on NetBSD instead of the
one using /dev/urandom.
The rand implementation for NetBSD drains a byte from /dev/random on every
rustc invocation, with the intent to ensure /dev/urandom is seeded.
This is inappropriate; seeding the rng should be handled by rc.d scripts only.
The result is that rustc eventually blocks for very long times when generating
temp file names, causing the lang/rust build to take days(!) in some cases.
The fix is to delete the NetBSD specific implementation and instead use the
FreeBSD implementation which relies on the kern.arandom sysctl instead of
/dev/{u,}random.
The bootstrap compiler of course has the same issue so I will raise a PR
with upstream authors to address this.
--- vendor/rand_os/src/netbsd.rs.orig 2019-09-28 20:13:53.155901674 +0000
+++ vendor/rand_os/src/netbsd.rs
@@ -6,52 +6,40 @@
// option. This file may not be copied, modified, or distributed
// except according to those terms.
-//! Implementation for NetBSD
+//! Implementation for FreeBSD
-use rand_core::Error;
-use super::random_device;
+extern crate libc;
+
+use rand_core::{Error, ErrorKind};
use super::OsRngImpl;
-use std::fs::File;
-use std::io::Read;
-use std::sync::atomic::{AtomicBool, Ordering};
-#[allow(deprecated)] // Required for compatibility with Rust < 1.24.
-use std::sync::atomic::ATOMIC_BOOL_INIT;
+use std::ptr;
+use std::io;
#[derive(Clone, Debug)]
-pub struct OsRng { initialized: bool }
+pub struct OsRng;
impl OsRngImpl for OsRng {
- fn new() -> Result<OsRng, Error> {
- random_device::open("/dev/urandom", &|p| File::open(p))?;
- Ok(OsRng { initialized: false })
- }
+ fn new() -> Result<OsRng, Error> { Ok(OsRng) }
fn fill_chunk(&mut self, dest: &mut [u8]) -> Result<(), Error> {
- random_device::read(dest)
- }
-
- // Read a single byte from `/dev/random` to determine if the OS RNG is
- // already seeded. NetBSD always blocks if not yet ready.
- fn test_initialized(&mut self, dest: &mut [u8], _blocking: bool)
- -> Result<usize, Error>
- {
- #[allow(deprecated)]
- static OS_RNG_INITIALIZED: AtomicBool = ATOMIC_BOOL_INIT;
- if !self.initialized {
- self.initialized = OS_RNG_INITIALIZED.load(Ordering::Relaxed);
+ let mib = [libc::CTL_KERN, libc::KERN_ARND];
+ let mut len = dest.len();
+ let ret = unsafe {
+ libc::sysctl(mib.as_ptr(), mib.len() as libc::c_uint,
+ dest.as_mut_ptr() as *mut _, &mut len,
+ ptr::null(), 0)
+ };
+ if ret == -1 || len != dest.len() {
+ return Err(Error::with_cause(
+ ErrorKind::Unavailable,
+ "kern.arandom sysctl failed",
+ io::Error::last_os_error()));
}
- if self.initialized { return Ok(0); }
-
- info!("OsRng: testing random device /dev/random");
- let mut file =
- File::open("/dev/random").map_err(random_device::map_err)?;
- file.read(&mut dest[..1]).map_err(random_device::map_err)?;
-
- OS_RNG_INITIALIZED.store(true, Ordering::Relaxed);
- self.initialized = true;
- Ok(1)
+ Ok(())
}
- fn method_str(&self) -> &'static str { "/dev/urandom" }
+ fn max_chunk_size(&self) -> usize { 256 }
+
+ fn method_str(&self) -> &'static str { "kern.arandom" }
}

View file

@ -1,24 +0,0 @@
$NetBSD: patch-vendor_tokio-uds_src_ucred.rs,v 1.1 2020/08/06 11:42:56 jperkin Exp $
Support illumos.
--- vendor/tokio-uds/src/ucred.rs.orig 2020-07-13 18:18:17.000000000 +0000
+++ vendor/tokio-uds/src/ucred.rs
@@ -15,7 +15,7 @@ pub use self::impl_linux::get_peer_cred;
#[cfg(any(target_os = "dragonfly", target_os = "macos", target_os = "ios", target_os = "freebsd", target_os = "netbsd", target_os = "openbsd"))]
pub use self::impl_macos::get_peer_cred;
-#[cfg(any(target_os = "solaris"))]
+#[cfg(any(target_os = "illumos", target_os = "solaris"))]
pub use self::impl_solaris::get_peer_cred;
#[cfg(any(target_os = "linux", target_os = "android"))]
@@ -89,7 +89,7 @@ pub mod impl_macos {
}
-#[cfg(any(target_os = "solaris"))]
+#[cfg(any(target_os = "illumos", target_os = "solaris"))]
pub mod impl_solaris {
use std::io;
use std::os::unix::io::AsRawFd;