lang/rust: Update to 1.29.0
Release notes:
- https://blog.rust-lang.org/2018/07/20/Rust-1.27.2.html
- https://blog.rust-lang.org/2018/08/02/Rust-1.28.html
- https://blog.rust-lang.org/2018/09/13/Rust-1.29.html
Up to and including Rust 1.27.x, the Rust build system shelled out to
a configure script to detect the presence and usability of libunwind.
Since Rust 1.28.0, it's using a static result in a build.rs file and
expects libunwind to be used. It was not the case on FreeBSD so far, so
we need a patch to this build.rs to disable that. We still need to
study if the FreeBSD port should use libunwind and what to do with this
patch. But this problem prevented the update to Rust 1.28.0 already, so
enough delay.
The update also comes with a patch to a few USE_GECKO-based ports such
as Firefox [1]. Their configure script has some asumptions on the output
of rustc --print target-list which are not true anymore. The patch was
already committed upstream.
The aarch64 version is still marked as BROKEN because I didn't find the
time to work on it. As a consequence, there is also no aarch64 bootstrap
for Rust 1.29.0.
PR: 229826
Approved by: jbeich [1]
Obtained from: https://bugzilla.mozilla.org/show_bug.cgi?id=1479540 [1]
Differential Revision: https://reviews.freebsd.org/D17178