Skip to content

Conversation

@OldManYellsAtCloud
Copy link
Collaborator

This the regular FF update, however it is not ready yet - version 144 requires a newer wasi sdk, I really can't postpone that upgrade any further. This will become a real PR once I succeed with that - will try to spend some time on that in the coming day.

@OldManYellsAtCloud OldManYellsAtCloud force-pushed the master branch 4 times, most recently from 377f17d to 98d3022 Compare November 6, 2025 10:36
@OldManYellsAtCloud
Copy link
Collaborator Author

There are some strange build failures with the latest FF w/ musl on 32-bit arm, using walnascar and master (but not kirkstone and scarthgap). Looking at that.

@OldManYellsAtCloud OldManYellsAtCloud marked this pull request as ready for review November 10, 2025 17:23
@OldManYellsAtCloud
Copy link
Collaborator Author

I couldn't get still make wasi-sdk work in a way that doesn't take forever to build. It builds its own clang, which of course takes forever. But making it work with the already existing clang just keeps beating me up. For now I have disabled the wasi-sdk part in the latest Firefox recipe (enabled disable-sandboxed-libraries PACKAGECONFIG by default)

Release notes: https://www.firefox.com/firefox/144.0/releasenotes/
https://www.firefox.com/firefox/144.0.2/releasenotes/
https://www.firefox.com/firefox/145.0/releasenotes/
https://www.firefox.com/en-US/firefox/145.0.1/releasenotes/
https://www.firefox.com/en-US/firefox/145.0.2/releasenotes/

musl-remove-single-threaded.h.patch: Firefox requires now single_threaded.h
header, which is however glibc specific, and not provided by musl.
The patch is applied conditionally, only using musl.

fix-musl-with-arm.patch: compilation fails with "incomplete stat64 type"
with musl-libc for 32-bit arm platform, on Walnascar and newer. Adding this
extra define fixes it on the short term - on the long term it needs
to be investigated what's the difference between these Yocto/OE branches.

Signed-off-by: Gyorgy Sarvari <skandigraun@gmail.com>
It is a runtime requirement for the new updated wasi-sdk.

Signed-off-by: Gyorgy Sarvari <skandigraun@gmail.com>
@OldManYellsAtCloud OldManYellsAtCloud force-pushed the master branch 4 times, most recently from 65b79fe to e06de3c Compare November 27, 2025 13:22
This update is an optional build-time requirement for Firefox 144+ to be
able to build some sandboxed libraries.

Since the build system was overhauled by upstream, the original recipe
was split into two also: one recipe builds the toolchain (which is essentially
a WebAssembly-only clang), and the second recipe populates the actual sysroot.

Though they use the same main CMakeLists.txt file, the environment is quite
different for the two steps, hence the split.

One notable change is that building this recipe requires at least Clang 18,
which is a bump from the previous Clang 14. Though Kirkstone can still build
it, it requires switching to a new meta-clang branch.

Signed-off-by: Gyorgy Sarvari <skandigraun@gmail.com>
@OldManYellsAtCloud OldManYellsAtCloud marked this pull request as ready for review November 27, 2025 19:36
@OldManYellsAtCloud
Copy link
Collaborator Author

I believe I managed to update wasi-sdk successfully.

The Github workflow has just started, but did a couple of tests locally on all branches, and the basics look correct. I don't expect big issues during the I run (\me knocking on wood).

Unfortunately I couldn't make my original goal work (to use the main clang for WebAssembly also), mostly due to compiler-rt: wasi-sdk wants its own compiler-rt, and I'm not sure if that is possible at all without having its own sysroot. Maybe I will take another look at it on a rainy day. For now it will build its own toolchain, just as until now.

A couple of further notes about this update:

  • When using wasi-sdk as a dependency, at least clang 18 is required. This is only a little bit notable, since it is available for Kirkstone also in meta-clang (and other branches have this or newer by default). When not using wasi-sdk, clang 14 should still work. Currently I switched to test only with clang 18 on Kirkstone.
  • This is the last main Firefox version that is tested with Walnascar. Starting with Firefox 146 I plan to drop testing on Walnascar - though I plan to keep it in the compatibility list and give user support as long as it makes sense.
  • Since Whinlatter is essentially still Master, I'm not testing it specifically for this version. Starting with Firefox 146 Whinlatter will be part of the test suite explicitly.

Will ping back when/if the workflow finishes successfully. Meanwhile, please feel free to review/comment.

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

Development

Successfully merging this pull request may close these issues.

1 participant