Commit Graph

270 Commits

Author SHA1 Message Date
Brad Parham
8015eb2f02 update sha sorting algorithm to coerce to semver sorting 2023-03-28 10:15:03 +02:00
Brad Parham
fbac6b2ddf ci: add more automation to release and asset creation 2023-03-28 10:15:03 +02:00
Brad Parham
2e9af3a5a8 expected: Refactor SHAs into sorted, machine-updatable json format 2023-03-28 10:15:03 +02:00
Brad Parham
009e09e5e6 ci: revive cross compile 2023-03-15 12:06:22 +01:00
Blaine Bublitz
7b2305001c
patches: add patch for node 19.6 (#274) 2023-02-14 08:11:41 +01:00
Brad Parham
9220fc167d
Add applyPatches script and some basic patch documentation (#251)
* build: add applyPatches script and docs

Adds a new package.json script to only apply patches as well as some
basic documentation on applying patches and building binaries

* README: add example of patch updates to readme

* tests: add simple patch application checker

* CI: always run lint in ci job matrix

* patches: fix 10.24.1 patch to apply with no offset
2023-01-27 20:09:06 -06:00
Jesse Chan
d67a7f4dc3 expected: add hashes of 14.20.0, 16.16.0 and 18.5.0 2022-07-11 12:50:24 -07:00
Jesse Chan
78034df375 expected: update hashes of 18.1.0, add hashes of 14.19.2 2022-05-05 15:33:11 -07:00
Jesse Chan
5011c53839 expected: update hashes of 14.19.1, add hashes of 16.15.0 and 18.1.0 2022-05-04 20:30:08 -07:00
Jesse Chan
e4003188d6 system: add a fallback for musl detection
Bug: #222
2022-05-03 12:38:24 -07:00
Jesse Chan
7f3403bd71 build: disable NODE_OPTIONS
Production binaries shall NOT take NODE_OPTIONS from end-users.

Only the users (developers who use pkg to package their project) should
have control over the flags via the "bake in" (--options) mechanism.

Bug: vercel/pkg#954, vercel/pkg#989, vercel/pkg#1194, vercel/pkg#1517
2022-05-03 12:38:24 -07:00
Jesse Chan
512c3706d3 expected: add hashes of 12.22.11, 14.19.1, 16.14.2, 17.8.0 2022-03-31 16:13:07 -07:00
Jesse Chan
e34c57f612 build: explicitly call "/bin/sh" for configure 2022-03-30 20:30:09 -07:00
Jesse Chan
04b4a49b41
3.2.6 (#230) 2022-01-12 15:43:53 -06:00
Jesse Chan
e5a5247ff7 expected: add hashes of 16.13.0, replace "linuxstatic" 2021-11-09 18:14:26 -08:00
Jesse Chan
da210e4c6f build: fetch Node.js sources from tar.gz archive instead of Git
Bug: #204, #212
2021-11-07 09:02:31 -08:00
Jesse Chan
fcc782fb45 expected: add hashes of 12.22.7, 14.18.1 and 16.12.0 2021-10-22 15:27:08 -07:00
Jesse Chan
58dde54aae Remove armv7 config flag override 2021-10-20 03:13:54 -07:00
Jesse Chan
86476f2480 Remove "uname" ARM variant detection
It is not accurate to read architecture from uname if the user wants
to compile binaries for armv7 on a arm64 machine. As such, always use
architecture from "process.arch", the same as other architectures.
2021-10-18 18:55:27 -07:00
Jesse Chan
e4c14b74fd expected: add hashes of 12.22.6, 14.17.6 and 16.8.0 2021-09-09 18:36:11 +01:00
Jesse Chan
925111ba5e build: workaround nodejs/node#39313 for macOS
All supported macOS versions have zlib as a system library.
2021-08-20 12:11:44 +08:00
Jesse Chan
1f58c6cfb8 expected: add hashes of Node v12.22.2, v14.17.2 and v16.4.1 2021-07-02 12:55:05 +08:00
Jesse Chan
aff1abe9d0 expected: update hashes for v3.2.1
- macOS binaries replaced due to #199
2021-06-09 20:42:42 +08:00
Jesse Chan
5bbafb7e09
expected: add hashes of Node v16.3.0 binaries (#197) 2021-06-04 19:53:17 -05:00
Jesse Chan
3d13d2aeff expected: update hashes for v3.2
- node8 carried over from v3.1
- node(10/12/14/16)-(alpine/linuxstatic/win) carried over from v3.1
- node(10/12/14/16)-linux-x64 carried over from v3.1
- macOS binaries replaced due to 93de534a9
- linux-arm64 binaries replaced due to 6de6de36a
- linuxstatic-armv7 binaries added (#194, @Hypfer)
2021-05-31 02:50:41 +01:00
Sören Beye
27e00d1d72 Add support for linuxstatic armv7 binaries 2021-05-29 15:24:58 +01:00
Jesse Chan
93de534a9d build: enable LTO on macOS 2021-05-27 23:49:53 +01:00
Jesse Chan
45687270be expected: add hashes of Node v16.2.0 binaries 2021-05-21 20:09:20 +08:00
Jesse Chan
137f295461 expected: add hashes of Node v14.17.0 binaries 2021-05-14 13:08:31 +01:00
Jesse Chan
11e94a53bc expected: update hashes for v3.1
- replaced macOS binaries due to 5d2bc3b
- node(8/10/12/14)-(alpine/linux/linuxstatic/win) carried over from v3.0
- added Node v16.1 binaries
- added macos-arm64 binaries (Node 14/16 only)
2021-05-13 07:22:54 +01:00
Jesse Chan
6e5bccd731 utils: switch to "node-fetch" and add proxy support
Bug: #177, vercel/pkg#1163
2021-05-11 15:01:57 +01:00
Jesse Chan
5d2bc3bb24 build: don't strip global symbols of macOS binaries
Bug: vercel/pkg#1155
2021-05-10 16:59:53 +01:00
Jesse Chan
a062bb42f5 build: strip signature from compiled macOS base binary
Newer versions of Apple Clang automatically ad-hoc sign the compiled
executable, due to the new mandatory code signing requirement [1].

However, for final executable to be signable, base binary MUST NOT
have an existing signature.

This change strips the ad-hoc signature from compiled macOS base binary.

[1]: https://developer.apple.com/documentation/macos-release-notes/macos-big-sur-11_0_1-universal-apps-release-notes

Refs: vercel/pkg#1164
Bug: vercel/pkg#1023
2021-05-10 16:58:56 +01:00
Jesse Chan
815ca0b354 expected: add hashes of Node.js 16.0.0 binaries 2021-04-24 18:20:29 +08:00
Jesse Chan
f28cbd6cf7
log: expand progress bar width to 35 (#170)
Otherwise we can't use "linuxstatic" due to progress bar out of range...
2021-04-22 10:28:23 -05:00
Jesse Chan
629cc71d26 Validate hash of fetched binary 2021-04-22 22:54:06 +08:00
Jesse Chan
7467b7f9d8 Move small utility functions to "utils" 2021-04-22 22:54:06 +08:00
Jesse Chan
b11eb6679a build: stop when a procedure failed 2021-04-22 22:54:06 +08:00
Jesse Chan
2a68741776 Revert "--without-snapshot for alpine builds as a temporary workaround"
This reverts commit d4b89a9511.

No longer needed.
2021-04-15 23:47:45 +08:00
Jesse Chan
b5d926af84 Add a fully static "linuxstatic" variant
Bug: #72
2021-04-15 23:47:45 +08:00
Jesse Chan
21ab8a26c8 build: statically link against libgcc and libstdc++ on Alpine
Bug: vercel/pkg#555
2021-04-15 23:47:45 +08:00
Jesse Chan
e59b746f26 build: fix improper use of ".concat" 2021-04-13 10:45:03 +08:00
Jesse Chan
748f67a0fe build: workaround win-arm64 cross compilation issue with small-icu 2021-04-11 23:59:25 +08:00
Jesse Chan
97c892758f build: defaults to small ICU
Bug: #164
2021-04-11 23:59:25 +08:00
Jesse Chan
0cc2634d4f
build: tweak Node configure flags (#160)
* build: consolidate common configure args

* build: re-enable LTCG for Windows

* build: enable LTO for Linux

* build: disable DTrace and bundled npm

* build: strip debug symbols from executable
2021-04-08 22:39:28 +08:00
Jesse Chan
52a1754e42
build: hash and create ".sha256sum" for binary built (#157) 2021-04-07 22:09:21 +08:00
Jesse Chan
549db84226
CI: output to dist/ with "node-*" prefix (#156)
* Add "--output" CLI argument

* CI: output to dist/ with "node-*" prefix

* requests: remove tempFile when download failed
2021-04-07 17:59:50 +08:00
Jesse Chan
b47c260d38
Cleanup, remove unused dependencies (#154)
* places: simplify and remove dependency on "expand-template"

* Remove dependency on "unique-temp-dir"

* Remove unused dependencies
2021-04-06 16:34:39 +08:00
Jesse Chan
532fb10d91
Allow to override build path with PKG_BUILD_PATH (#152)
To workaround a path problem with older Node versions and some
Windows environments.
2021-04-02 20:01:47 +08:00
Jesse Chan
d7f74907ad
Allow cross compiling (#150) 2021-04-02 19:05:18 +08:00