Closed MaxIhlenfeldt closed 5 months ago
Some comments:
rust(-native)
directly, but inherits from the cargo
class. I chose not to do that because it created some problems (I'm not 100% sure what it was, but I think the libstd-rs
libraries were still being installed despite the line in rust_%.bbappend
). cc @rwmacleod (I think you are/were involved in meta-rust development?)0025-Make-toolchain_supports_rust_thin_lto-configurable.patch
upstream. I've talked to danakj@, she seemed open to accepting it.@MaxIhlenfeldt These days I'm mostly involved in Rust in trying to help @sundeep-kokkonda and @Yashinde145 so I've mentioned this thread to them and I see that Sundeep cloned meta-browser so he may reply to your question.
Also, for kirkstone, @g-scott-murray mentioned today that he is working on an update to (1.70?) of the rust mixin layer and that they are interested in chromium for AGL as you might already know.
Some comments:
- @nrpt-m as always, testing would be greatly appreciated! As discussed, this patch will mean we don't support dunfell any more. Also, please use https://git.yoctoproject.org/meta-lts-mixins/log/?h=kirkstone/rust-1.68 for kirkstone. I suspect the build will still fail even with that mixin because the Rust version is too old; but we should confirm it before adding a mixin with a newer version.
@MaxIhlenfeldt , Have successfully compiled the current chromium-120.0.6099.224 version after applying the patches mentioned in this PR. Have used poky/kirkstone source and all other required layers in kirkstone branch along with this https://git.yoctoproject.org/meta-lts-mixins/log/?h=kirkstone/rust-1.68 layer.
Have attached the console.log file as well. console-latest.log
Great to hear it works with the 1.68 mixin on kirkstone already!
One note, as Rust is a hard requirement for Chromium 121, it'd be easiest to have this PR merged before I start working on the update. I'd also like to do a separate PR that removes all dunfell-specific patches first. But if it takes too long to merge this, I can start working on the update already.
The toolchain_supports_rust_thin_lto
patch has been accepted upstream as https://crrev.com/c/5233602, so I moved the patch file to files/backports
and updated its Upstream-Status
.
@kraj @rakuco gentle ping as merging this before starting to work on the (already released) 121 update would be best.
This change will also mean we don't support any Yocto release older than kirkstone, as that is the first release with Rust in OE that isn't EOL yet. Most notably, we will drop support for dunfell.
@otavio @kraj @MaxIhlenfeldt we'd normally create a "dunfell" branch at the commit ea731e8d4fd8a0b40448ea286b2c92824ee591cc; I wonder if it makes sense given dunfell as a whole is going EoL in just a few months.
I am not opposed as this is the last working version.
I am not opposed as this is the last working version.
Done!
This adds a dependency on OE's Rust recipe, as well as all the necessary changes to make Chromium successfully use that toolchain.
This change will also mean we don't support any Yocto release older than kirkstone, as that is the first release with Rust in OE that isn't EOL yet. Most notably, we will drop support for dunfell.