-
Notifications
You must be signed in to change notification settings - Fork 752
Nightly Node.js and Big Endian cross compilation Node.js #1590
New issue
Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.
By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.
Already on GitHub? Sign in to your account
Conversation
emsdk.py
Outdated
return None | ||
|
||
|
||
def build_node_nightly(tool): |
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
Is this actually building node from source? It looks like its just download it, so maybe this should be called "download_...to
fetch_...`?
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
check
emsdk_manifest.json
Outdated
"linux_url": "https://nodejs.org/download/release/v22.16.0/node-v22.16.0-linux-s390x.tar.gz", | ||
"activated_path": "%installation_dir%/bin", | ||
"activated_path_skip": "node", | ||
"activated_cfg": "NODE_JS=['qemu-s390x', '-L', '/usr/s390x-linux-gnu/', '%installation_dir%/bin/node']", |
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
NODE_JS_TEST
can be used here if you want to only use it for running tests.
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
Oh that's fantastic.
I'll land this to be able to continue working on top of this. If there are still more reviews, I can do a second PR. |
This seems to have caused regressions, see #1595 and also I just noticed this on Binaryen CI: https://github.com/WebAssembly/binaryen/actions/runs/17269266536/job/49009222269 |
Yeah sorry about that - I push-landed #1594 as soon as I noticed. |
Thanks! |
This PR adds support for
./emsdk install node-nightly-64bit
which finds the latest nightly node.js version and installs that. It is a moving target, so the next day when a new nightly is produced, reissuing
./emsdk install node-nightly-64bit
will install the newer published version.Also, this PR adds a fixed 22.18.0 version for the cross compilation s390x Node.js target as well. On an x64 Linux system, this allows running
./emsdk install node-big-endian-crosscompile-22.16.0-64bit
to install the big endian Node.js. This greatly simplifies the steps at emscripten-core/emscripten@main...juj:emscripten:bigendian_test_suite#diff-c36b90121be240017fa490a1c00e63e47fa3235f5c1be0593e2b7502d017c778R9985-R10000 and enables a trivial way to switch between LE and BE Node.js versions for testing.
CC @slavek-kucera