Page MenuHomeSolus

Update rust to 1.39.0
ClosedPublic

Authored by livingsilver94 on Nov 8 2019, 12:09 PM.
Tags
None
Referenced Files
F11052281: D7599.id19198.diff
Thu, Aug 10, 9:13 PM
F11052280: D7599.id.diff
Thu, Aug 10, 9:13 PM
F11052278: D7599.id18225.diff
Thu, Aug 10, 9:13 PM
F11052277: D7599.id18291.diff
Thu, Aug 10, 9:13 PM
F11052276: D7599.id18281.diff
Thu, Aug 10, 9:13 PM
F11037025: D7599.diff
Wed, Aug 9, 7:58 PM
F10969119: D7599.id.diff
Thu, Jul 20, 8:58 PM
F10942078: D7599.diff
Fri, Jul 14, 9:20 AM

Details

Summary

This patch is only needed to correctly build D7865 since Rust 1.38 cannot compile Rust 1.40.

Test Plan

Built ripgrep and Firefox successfully.

Diff Detail

Repository
R2839 rust
Branch
master
Lint
No Lint Coverage
Unit
No Test Coverage

Event Timeline

I'm statically linking our LLVM. This leads to a slightly reduced package size (see T8434). If anyone familiar with LLVM can tell me that the toolchain doesn't break its ABI often, I could even link Rust dynamically against it to save even more space.

This is fine with me. Eventually, to enable cross-lang PGO/LTO in firefox, both firefox and rust will need to link/use the same llvm/clang to maintain compatibility and reduce the risk of weird compiler mismatch errors. I think this is how you link it as a shared lib:

[llvm]
link-shared = true

@joebonrichie are you the LLVM maintainer? So that I know if your reply suffices or I have to wait for Core.

@joebonrichie please notify me when you've pushed your LLVM 9 patch.

Actually build Rust dynamically against LLVM 9

I confirm, as @ermo anticipated, that Firefox 70 does not build using Rust 1.39.0.

Well, unless you want to patch it.

livingsilver94 edited the summary of this revision. (Show Details)
livingsilver94 edited the summary of this revision. (Show Details)
This revision is now accepted and ready to land.Jan 9 2020, 9:31 AM
This revision was automatically updated to reflect the committed changes.