lang/rust: Update to 1.35.0
Scheduled to be released on 2019-05-23.
https://internals.rust-lang.org/t/rust-1-35-0-pre-release-testing/10226
https://github.com/rust-lang/rust/blob/stable/RELEASES.md#version-1350-2019-05-23
Differential D20332
lang/rust: Update to 1.35.0 tobik on May 21 2019, 10:53 AM. Authored by Tags None Referenced Files
Details
lang/rust: Update to 1.35.0 Scheduled to be released on 2019-05-23. https://internals.rust-lang.org/t/rust-1-35-0-pre-release-testing/10226 11.2/i386 ok @pkubaj @mikael.urankar_gmail.com Please let me now before release date if you want to do test builds on powerpc64, arm and need more time for it. Otherwise this will land on 2019-05-23 or 2019-05-24 assuming QA on amd64 and i386 is ok.
Diff Detail
Event TimelineComment Actions Build failed: Compiling petgraph v0.4.13 error[E0428]: the name `c_char` is defined multiple times --> /usr/local/poudriere/ports/default/lang/rust/work/rustc-1.35.0-src/vendor/libc/src/unix/bsd/freebsdlike/freebsd/powerpc64.rs:32:1 | 1 | pub type c_char = u8; | --------------------- previous definition of the type `c_char` here ... 32 | pub type c_char = u8; | ^^^^^^^^^^^^^^^^^^^^^ `c_char` redefined here | = note: `c_char` must be defined only once in the type namespace of this module error[E0428]: the name `c_long` is defined multiple times --> /usr/local/poudriere/ports/default/lang/rust/work/rustc-1.35.0-src/vendor/libc/src/unix/bsd/freebsdlike/freebsd/powerpc64.rs:33:1 | 2 | pub type c_long = i64; | ---------------------- previous definition of the type `c_long` here ... 33 | pub type c_long = i64; | ^^^^^^^^^^^^^^^^^^^^^^ `c_long` redefined here | = note: `c_long` must be defined only once in the type namespace of this module error[E0428]: the name `c_ulong` is defined multiple times --> /usr/local/poudriere/ports/default/lang/rust/work/rustc-1.35.0-src/vendor/libc/src/unix/bsd/freebsdlike/freebsd/powerpc64.rs:34:1 | 3 | pub type c_ulong = u64; | ----------------------- previous definition of the type `c_ulong` here ... 34 | pub type c_ulong = u64; | ^^^^^^^^^^^^^^^^^^^^^^^ `c_ulong` redefined here | = note: `c_ulong` must be defined only once in the type namespace of this module error[E0428]: the name `time_t` is defined multiple times --> /usr/local/poudriere/ports/default/lang/rust/work/rustc-1.35.0-src/vendor/libc/src/unix/bsd/freebsdlike/freebsd/powerpc64.rs:35:1 | 4 | pub type time_t = i64; | ---------------------- previous definition of the type `time_t` here ... 35 | pub type time_t = i64; | ^^^^^^^^^^^^^^^^^^^^^^ `time_t` redefined here | = note: `time_t` must be defined only once in the type namespace of this module error[E0428]: the name `suseconds_t` is defined multiple times --> /usr/local/poudriere/ports/default/lang/rust/work/rustc-1.35.0-src/vendor/libc/src/unix/bsd/freebsdlike/freebsd/powerpc64.rs:36:1 | 5 | pub type suseconds_t = i64; | --------------------------- previous definition of the type `suseconds_t` here ... 36 | pub type suseconds_t = i64; | ^^^^^^^^^^^^^^^^^^^^^^^^^^^ `suseconds_t` redefined here | = note: `suseconds_t` must be defined only once in the type namespace of this module error[E0428]: the name `stat` is defined multiple times --> /usr/local/poudriere/ports/default/lang/rust/work/rustc-1.35.0-src/vendor/libc/src/macros.rs:78:13 | 78 | pub struct $i { $($field)* } | ------------- | | | `stat` redefined here | previous definition of the type `stat` here | ::: /usr/local/poudriere/ports/default/lang/rust/work/rustc-1.35.0-src/vendor/libc/src/unix/bsd/freebsdlike/freebsd/powerpc64.rs:7:1 | 7 | / s! { 8 | | pub struct stat { 9 | | pub st_dev: ::dev_t, 10 | | pub st_ino: ::ino_t, ... | 30 | | } 31 | | } | |_- in this macro invocation | = note: `stat` must be defined only once in the type namespace of this module Compiling cmake v0.1.33 error[E0119]: conflicting implementations of trait `core::marker::Copy` for type `unix::bsd::freebsdlike::freebsd::powerpc64::stat`: --> /usr/local/poudriere/ports/default/lang/rust/work/rustc-1.35.0-src/vendor/libc/src/macros.rs:80:9 | 80 | impl ::Copy for $i {} | ^^^^^^^^^^^^^^^^^^ | | | first implementation here | conflicting implementation for `unix::bsd::freebsdlike::freebsd::powerpc64::stat` | ::: /usr/local/poudriere/ports/default/lang/rust/work/rustc-1.35.0-src/vendor/libc/src/unix/bsd/freebsdlike/freebsd/powerpc64.rs:38:1 | 38 | / s! { 39 | | pub struct stat { 40 | | pub st_dev: ::dev_t, 41 | | pub st_ino: ::ino_t, ... | 61 | | } 62 | | } | |_- in this macro invocation error[E0119]: conflicting implementations of trait `core::clone::Clone` for type `unix::bsd::freebsdlike::freebsd::powerpc64::stat`: --> /usr/local/poudriere/ports/default/lang/rust/work/rustc-1.35.0-src/vendor/libc/src/macros.rs:81:9 | 81 | impl ::Clone for $i { | ^^^^^^^^^^^^^^^^^^^ | | | first implementation here | conflicting implementation for `unix::bsd::freebsdlike::freebsd::powerpc64::stat` | ::: /usr/local/poudriere/ports/default/lang/rust/work/rustc-1.35.0-src/vendor/libc/src/unix/bsd/freebsdlike/freebsd/powerpc64.rs:38:1 | 38 | / s! { 39 | | pub struct stat { 40 | | pub st_dev: ::dev_t, 41 | | pub st_ino: ::ino_t, ... | 61 | | } 62 | | } | |_- in this macro invocation error: aborting due to 8 previous errors Some errors occurred: E0119, E0428. For more information about an error, try `rustc --explain E0119`. error: Could not compile `libc`. warning: build failed, waiting for other jobs to finish... Comment Actions
We need updated bootstraps for armv6, armv7, aarch64, powerpc64. rustc 1.34.2 (though probably 1.34.0 and 1.34.1 would also be ok) and cargo 0.35.0. Comment Actions
fetch http://mikael.urankar.free.fr/FreeBSD/rust/1.34.0/cargo-0.35.0-aarch64-unknown-freebsd.tar.gz Hope they are fine. Comment Actions Sorry about that. I forgot to remove a bunch of patches. It builds Comment Actions
Comment Actions Looks like there's some change in Altivec code: error[E0432]: unresolved import `mem` --> src/libstd/../stdsimd/crates/std_detect/src/detect/os/freebsd/auxvec.rs:45:9 | 45 | use mem; | ^^^ no `mem` external crate error: aborting due to previous error For more information about this error, try `rustc --explain E0432`. error: Could not compile `std`. Comment Actions
@jbeich Thanks for pointing this out. It seems that Rust is now always assuming that it needs to rebuild LLVM during install when it is not being built from a Git checkout. And since we are passing DESTDIR=${STAGEDIR} explicitly in do-install it gets copied into STAGEDIR the second time around. |