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

new armv6l recipe for Node.js 16 and later #33

Merged
merged 2 commits into from
May 4, 2021

Conversation

richardlau
Copy link
Member

Node.js 16 has raised the minimum version of some of the build toolchain (Python 3.6+ is now required and gcc/g++ 8) and the existing recipe for armv6l fails to build Node.js 16 as it doesn't have a new enough version of Python: https://unofficial-builds.nodejs.org/logs/202104220522-v16.0.0/armv6l.log

Moved the existing recipe to armv6l-old and added a should-build.sh script to stop it running on Node.js 16 and later. Add a new armv6l recipe, based on the existing arm6vl recipe, but using Ubuntu 18.04 and gcc/g++ 8 to match what we're using for the official armv7l builds.

@richardlau
Copy link
Member Author

Refs: nodejs/node#38496

@rvagg
Copy link
Member

rvagg commented May 3, 2021

I think old is going to become a problem into the future and we should be more specific. I think something like pre16 (or something along those lines) would be a better differentiator and will scale as we have to do more of this.
Otherwise this LGTM I think, it'd be good to test it out on old and new once merged to verify.

In preparation for a new recipe to build armv6l binaries for Node.js 16
and later, rename the existing recipe and add a should-build.sh script
to stop it running for Node.js 16 and later.
Based on the existing arm6vl recipe, but using Ubuntu 18.04 and
gcc/g++ 8 to match what we're using for the official armv7l builds.
@richardlau
Copy link
Member Author

Renamed the "old" recipe to armv6l-pre16.

Copy link
Member

@rvagg rvagg left a comment

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

give it a go I suppose

@richardlau richardlau merged commit 0d49da5 into nodejs:master May 4, 2021
@richardlau
Copy link
Member Author

I queued v15.10.0-rc.0 as a pre-16 build and it's currently running: https://unofficial-builds.nodejs.org/logs/202105041004-v15.10.0-rc.0/
There should be a new 16 release later today (nodejs/node#38522).

@richardlau richardlau mentioned this pull request May 4, 2021
@richardlau
Copy link
Member Author

Oops, missed that build.sh has a list of recipes to build that needs to be updated: #34

@richardlau
Copy link
Member Author

16.1.0 build on the new recipe failed due to a missing package -- added the fix to #34:
https://unofficial-builds.nodejs.org/logs/202105041543-v16.1.0/armv6l.log

python3 ./configure \
	--prefix=/ \
	--dest-cpu=arm \
	--tag= \
	--release-urlbase=https://unofficial-builds.nodejs.org/download/release/ \
	 --download=all --with-intl=full-icu
Traceback (most recent call last):
  File "./configure", line 18, in <module>
    from distutils.spawn import find_executable
ModuleNotFoundError: No module named 'distutils.spawn'

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.

2 participants