Change to wasi-sysroot bootstrapping broke wasi JS engine builds
Categories
(Firefox Build System :: Bootstrap Configuration, defect)
Tracking
(firefox-esr78 unaffected, firefox-esr91 unaffected, firefox91 unaffected, firefox92 wontfix, firefox93 fixed)
| Tracking | Status | |
|---|---|---|
| firefox-esr78 | --- | unaffected |
| firefox-esr91 | --- | unaffected |
| firefox91 | --- | unaffected |
| firefox92 | --- | wontfix |
| firefox93 | --- | fixed |
People
(Reporter: till, Assigned: glandium)
References
(Regression)
Details
(Keywords: regression)
Attachments
(4 files)
Bug 1722439 changed the way the wasi-sysroot is bootstrapped. This causes the JS engine not to build anymore on freshly-bootstrapped machines.
STR (tested on Ubuntu 20.04):
- ensure that
~/.mozbuild/wasi-sysrootdoesn't exist (either by removing it, or by not having a.mozbuilddirectory at all) - run
mach bootstrap --application-choice=js - run
MOZ_FETCHES_DIR=~/.mozbuild js/src/devtools/automation/autospider.py wasi
Expected result: a successful wasm32-wasi build of SpiderMonkey
Actual result: wasm-ld: error: cannot open crt1.o: No such file or directory
It looks like the idea is to only have the sysroot installed when targeting wasm-sandboxing, which unfortunately doesn't cover this use case. Is there any chance to change the configure script to install the sysroot whenever the target platform is wasm32-wasi?
Updated•4 years ago
|
| Assignee | ||
Updated•4 years ago
|
Comment 1•4 years ago
|
||
Set release status flags based on info from the regressing bug 1722439
| Assignee | ||
Comment 2•4 years ago
|
||
| Assignee | ||
Comment 3•4 years ago
|
||
We don't need wasi support in versions other than the ones currently used
to build Firefox.
| Assignee | ||
Comment 4•4 years ago
|
||
The wasi-sysroot toolchain contains both a sysroot for wasi and a
compiler-rt for clang. That makes it impractical to use as a
bootstrapped sysroot for wasm32-wasi builds of Spidermonkey.
We thus split the toolchain in two, one for the compiler-rt and one
for the sysroot. Ideally, the compiler-rt one would avoid building
clang/llvm the same way the sysroot one does, but that leads to
a case of chicken-and-egg, because the compiler-rt is needed to build
the clang toolchain. Eventually, the clang build would be split from
the addition of the compiler-rt, but we're not there yet.
| Assignee | ||
Comment 5•4 years ago
|
||
Comment 7•4 years ago
|
||
| bugherder | ||
https://hg.mozilla.org/mozilla-central/rev/beeb98ddf00a
https://hg.mozilla.org/mozilla-central/rev/c92fa0fa4c57
https://hg.mozilla.org/mozilla-central/rev/a94ba4247ce9
https://hg.mozilla.org/mozilla-central/rev/8018783bd4b8
Comment 8•4 years ago
|
||
The patch landed in nightly and beta is affected.
:glandium, is this bug important enough to require an uplift?
If not please set status_beta to wontfix.
For more information, please visit auto_nag documentation.
| Assignee | ||
Updated•4 years ago
|
Updated•4 years ago
|
Description
•