You signed in with another tab or window. Reload to refresh your session.You signed out in another tab or window. Reload to refresh your session.You switched accounts on another tab or window. Reload to refresh your session.Dismiss alert
Firefox 137 requires at least Rust 1.82. Due to the old Rust provided
by meta-lts-mixins layers, meta-rust is needed to compile the latest
Firefox.
This requires some small changes:
- In mozilla.bbclass the value of RUST_TARGET and RUST_HOST are set with
weak assignement, so they can be easily overriden from other configs.
The reason for this is the different target-triple schemes used by
meta-lts-mixins (and oe-core) and meta-rust. The default value is set to work with
meta-lts-mixins (and oe-core), but it is easy to change it to work
with meta-rust.
- To avoid unnecessary Rust pollution on the build system, the mandatory
layer dependency on meta-lts-mixins have been dropped, at least
temporarily.
- CRATE_CC_NO_DEFAULTS is set in the mozilla.bbclass. This is used by
default by meta-lts-mixins and oe-core, but not by meta-rust. Without
this Firefox is compiled by host-default compiler flags, which fails
cross-compilation.
Copy file name to clipboardExpand all lines: meta-firefox/README.md
+60-38Lines changed: 60 additions & 38 deletions
Original file line number
Diff line number
Diff line change
@@ -29,27 +29,48 @@ the kas folder - that contains all the branch/revision information used for test
29
29
install it, in case it is missing (e.g. on Debian based systems install `libstdc++-dev` or
30
30
on Fedora install `libstdc++-devel`)
31
31
32
-
Note: Firefox requires at least Rust 1.76 starting from version 127. meta-rust layer provides
33
-
1.78, however this layer is not compatible with Scarthgap (nor newer). Fortunately lately a
34
-
meta-lts-mixins layer has been created with a more up to date version of Rust, for Scarthgap.
32
+
Note: Firefox requires at least Rust 1.76 starting from version 127, and Rust 1.82 from version 137.
35
33
36
-
The state of Rust needs some caution when it comes to the the version used, and its provider.
37
-
Testing is performed using the following combinations:
34
+
At this time the state of Rust in the Yocto ecosystem is not the best. Master/Walnascar provides
35
+
1.83 - so this works for all Firefox. meta-lts-mixins layers however are below 1.82 for both
36
+
Kirkstone and Scarthgap, and until this doesn't change, meta-rust layer should be used.
38
37
39
-
| Yocto version | Rust version |
40
-
| ---------------- | ----- |
41
-
| Kirkstone | Rust 1.80.1 from meta-lts-mixins (kirkstone/rust branch) |
42
-
| Scarthgap | Rust 1.81.0 from meta-lts-mixins (scarthgap/rust branch) |
43
-
| Styhead | Rust 1.79 from oe-core |
44
-
| Walnascar | Rust 1.83.0 from oe-core |
38
+
For Styhead there is no up to date Rust available officially.
45
39
46
-
Based on my testing, some datalayouts has changed in Rust 1.76, which also made it necessary to change them for Arm achitectures, by adding the following to local.conf:
40
+
When using meta-rust, make sure to add the following to a bbappend or local.conf:
| 128.9.0esr + 137.0 | unicode-bidi | ca612daf1c08c53abe07327cb3e6ef6e0a760f0c | Required by top level Cargo.toml |
213
+
| 128.9.0esr | jsparagus | 61f399c53a641ebd3077c1f39f054f6d396a633c | Required by `js/src/frontend/smoosh/Cargo.toml`|
194
214
| 128.9.0esr | gpu-descriptor | 7b71a4e47c81903ad75e2c53deb5ab1310f6ff4d | Required by top level Cargo.toml |
195
215
| 128.9.0esr | aa-stroke | d94278ed9c7020f50232689a26d1277eb0eb74d2 | Required by `toolkit/library/rust/shared/Cargo.toml`|
196
216
| 128.9.0esr | warp | 9d081461ae1167eb321585ce424f4fef6cf0092b | Required by top level Cargo.toml |
197
217
| 128.9.0esr | application-services | 7c275b9088557abcbc8f3c2834f9aaa9064ca5e4 | Required by top level Cargo.toml |
198
218
| 128.9.0esr | mio | 9a2ef335c366044ffe73b1c4acabe50a1daefe05 | Required by top level Cargo.toml |
219
+
| 128.9.0esr | mp4parse | a138e40ec1c603615873e524b5b22e11c0ec4820 | Required by `toolkit/library/rust/shared/Cargo.toml`|
199
220
| 128.9.0esr | cubeb-coreaudio | 8bce3b333a920999055397a397e59c2b81a93b9a | Required by `toolkit/library/rust/shared/Cargo.toml`|
200
221
| 128.9.0esr | audioipc | e1071472c55193032aa4c1403317844005f9d0fc | Required by `toolkit/library/rust/shared/Cargo.toml`|
201
222
| 128.9.0esr | mapped_hyph | c7651a0cffff41996ad13c44f689bd9cd2192c01 | Required by `toolkit/library/rust/shared/Cargo.toml`|
202
223
| 128.9.0esr |~~neqo~~|~~121fe683ae4b39a5b694f671abfd397cbd9b4322~~| Required by `netwerk/socket/neqo_glue/Cargo.toml` - Not used by 128.9.0esr, uses vendored version. |
203
224
| 128.9.0esr | wgpu | c7458638d14921c7562e4197ddeefa17be413587 | Required by `gfx/wgpu_bindings/Cargo.toml`|
204
-
| 136.0.3 | application-services | 25934715ecc08fc922c80797c637dea64ee742d1 | Required by top level Cargo.toml |
205
-
| 136.0.3 | aa-stroke | a821fa621c2def48e90c82774b4c6563b5a8ea4a | Required by `toolkit/library/rust/shared/Cargo.toml`|
206
-
| 136.0.3 | cubeb-coreaudio | 2407441a2f67341a0e13b4ba6547555e387c671c | Required by `toolkit/library/rust/shared/Cargo.toml`|
207
-
| 136.0.3 | audioipc | e6f44a2bd1e57d11dfc737632a9e849077632330 | Required by `toolkit/library/rust/shared/Cargo.toml`|
208
-
| 136.0.3 | mapped_hyph | eff105f6ad7ec9b79816cfc1985a28e5340ad14b | Required by `toolkit/library/rust/shared/Cargo.toml`|
209
-
| 136.0.3 | neqo | c6d5502fb5b827473e7c5d7c4c380275cdb3d931 | Required by `netwerk/socket/neqo_glue/Cargo.toml`|
210
-
| 136.0.3 | wgpu | aa7bec65b90028e4db6ec8def8589b52097d92f9 | Required by `gfx/wgpu_bindings/Cargo.toml`|
211
-
| 136.0.3 | glutin | 03285da9c14ec56296c2400c781d2c32b80d745a | Required by `gfx/wr/Cargo.toml`|
212
-
| 136.0.3 | zlib | 4aa430ccb77537d0d60dab8db993ca51bb1194c5 | Required by `toolkit/library/rust/shared/Cargo.toml`|
213
-
| 136.0.3 | nss-gk-api | e48a946811ffd64abc78de3ee284957d8d1c0d63 | Required by top level Cargo.toml and `third-party/rust/mls-rs-crypto-nss/Cargo.toml`|
| 136.0.3 | mls-platform-api | 19c3f18b747d13354370ba84440bb0b963932634 | Required by `security/mls/mls_gk/Cargo.toml`|
216
-
| 136.0.3 | objc | 4de89f5aa9851ceca4d40e7ac1e2759410c04324 | Required by top level Cargo.toml |
225
+
| 137.0 | application-services | 25934715ecc08fc922c80797c637dea64ee742d1 | Required by top level Cargo.toml |
226
+
| 137.0 | mp4parse | e64650a686e5c5732395cd059e17cfd3b1e5b63b | Required by `toolkit/library/rust/shared/Cargo.toml`|
227
+
| 137.0 | aa-stroke | a821fa621c2def48e90c82774b4c6563b5a8ea4a | Required by `toolkit/library/rust/shared/Cargo.toml`|
228
+
| 137.0 | cubeb-coreaudio | 2407441a2f67341a0e13b4ba6547555e387c671c | Required by `toolkit/library/rust/shared/Cargo.toml`|
229
+
| 137.0 | audioipc | e6f44a2bd1e57d11dfc737632a9e849077632330 | Required by `toolkit/library/rust/shared/Cargo.toml`|
230
+
| 137.0 | mapped_hyph | eff105f6ad7ec9b79816cfc1985a28e5340ad14b | Required by `toolkit/library/rust/shared/Cargo.toml`|
231
+
| 137.0 | neqo | f8946d5187271b3e63e8d0209343510bdeac1451 | Required by `netwerk/socket/neqo_glue/Cargo.toml`|
232
+
| 137.0 | wgpu | 93f64dc847a0e6788b17b292ae4d7d59361e3be0 | Required by `gfx/wgpu_bindings/Cargo.toml`|
233
+
| 137.0 | glutin | 03285da9c14ec56296c2400c781d2c32b80d745a | Required by `gfx/wr/Cargo.toml`|
234
+
| 137.0 | nss-gk-api | e48a946811ffd64abc78de3ee284957d8d1c0d63 | Required by top level Cargo.toml and `third-party/rust/mls-rs-crypto-nss/Cargo.toml`|
0 commit comments