Skip to content
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

nxodejs: fix cross #6573

Merged
merged 1 commit into from
Jan 6, 2019
Merged

nxodejs: fix cross #6573

merged 1 commit into from
Jan 6, 2019

Conversation

Cogitri
Copy link
Contributor

@Cogitri Cogitri commented Jan 4, 2019

No description provided.

@Cogitri
Copy link
Contributor Author

Cogitri commented Jan 4, 2019

aarch64 binaries tested on my RPI3

@Hoshpak
Copy link
Member

Hoshpak commented Jan 4, 2019

there's a typo in the commit message. Besides, it still fails on armv6l and armv7l.

@Cogitri
Copy link
Contributor Author

Cogitri commented Jan 4, 2019

Besides, it still fails on armv6l and armv7l.

Hum, seems like V8 assumes that we build for 32-bit if we compile to a 32-bit platform

FWIW, we have to do this due to nodejs/node#21079, their code generation tool links against V8 so we have to build it for the host too (sigh)

@Cogitri
Copy link
Contributor Author

Cogitri commented Jan 4, 2019

https://github.com/nodejs/node/blob/master/deps/v8/src/base/build_config.h#L149

Seems like we actually have to build nodejs >= 10.9.0 from a i686 host...

@Hoshpak
Copy link
Member

Hoshpak commented Jan 4, 2019

Since all builders are x86_64 and that is not likely to change (especially not to a legacy architecture like i686), that means we just cannot build nodejs for 32 bit arm architectures any more.

@Cogitri
Copy link
Contributor Author

Cogitri commented Jan 4, 2019

Yup, currently marking it as broken

@Cogitri Cogitri force-pushed the node branch 3 times, most recently from 1611a78 to 46cbb9d Compare January 4, 2019 13:48
@Cogitri
Copy link
Contributor Author

Cogitri commented Jan 4, 2019

Alright, this should work on aarch64* now, but I'll do some more testing - CI and builders seem busy anyway :P

@Hoshpak
Copy link
Member

Hoshpak commented Jan 4, 2019

this will also require removal of nodejs from the armv[67]l* repositories as the builders are currently staging because of nodejs.

@pullmoll
Copy link
Member

pullmoll commented Jan 4, 2019

Perhaps disabling the v8-snapshot option, however it is called in the nodejs v8 source, can fix the problems when cross compiling from 64 to 32 bit. We do that for qt5-webengine's v8 and IIRC I had similar problems before doing that in a previous qt5 version.

@Cogitri
Copy link
Contributor Author

Cogitri commented Jan 4, 2019

I don't think node >=10 has that option anymore and looking at https://github.com/void-linux/void-packages/pull/6573/files#diff-8421a2e1c1611cb3b4ee616adbdd6a15L38 it seems like we did pass that to node.

srcpkgs/nodejs/template Outdated Show resolved Hide resolved
srcpkgs/nodejs/template Outdated Show resolved Hide resolved
Also mark x86_64* -> arm* as broken, we can only build
32bit -> 32bit (i686 -> arm*) , see
https://github.com/nodejs/node/blob/master/deps/v8/src/base/build_config.h#L149
@maxice8
Copy link
Contributor

maxice8 commented Jan 6, 2019

Please notify when proposed changes are made

@maxice8 maxice8 merged commit fbab1e8 into void-linux:master Jan 6, 2019
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
None yet
Projects
None yet
Development

Successfully merging this pull request may close these issues.

4 participants