mirror of
https://github.com/vercel-labs/scriptc.git
synced 2026-11-04 08:04:37 +08:00
Add the @scriptc/libnode-<platform> packs (linux-x64-gnu, linux-arm64-gnu, darwin-arm64, darwin-x64): the pinned Node.js 24.22.0 built as a stripped shared library with full ICU and its startup snapshot, the scriptc bridge compiled against that release's headers, Node's LICENSE and a manifest with the Node version, NODE_MODULE_VERSION, bridge ABI and file hashes. packages/libnode-common holds the pin, the build (fetch and verify the source tarball, configure --shared, build only the libnode target, strip, stage with headers in a cache keyed by release, flags, platform and toolchain; the bridge rebuilds in seconds against the cached headers), a verifier, and a smoke test: a C program that loads a pack the way the runtime does, starts Node from the snapshot and evaluates expressions synchronously, asynchronously and throwing. The libnode-packs workflow builds the packs on native runners, Linux in the manylinux_2_28 images for a glibc 2.28 floor, caches each libnode build, smoke-tests and uploads every pack. It never runs in the ordinary build or test path. The compiler gains the pack lookup (SCRIPTC_LIBNODE, then the installed package), validation, the nodeIslands.libnode placements and the license notices for the Node island loader to use. The bridge source and its C ABI header are the NI-1 bridge agent's, included here so the packs build; the packs stay private until the in-process island runtime ships. Co-Authored-By: Claude Opus 5.5 <noreply@anthropic.com>
36 lines
836 B
JSON
36 lines
836 B
JSON
{
|
|
"name": "@scriptc/libnode-linux-arm64-gnu",
|
|
"version": "0.4.1",
|
|
"private": true,
|
|
"description": "Prebuilt Node.js shared library and scriptc bridge for Node islands on Linux arm64 glibc",
|
|
"license": "SEE LICENSE IN LICENSE",
|
|
"homepage": "https://scriptc.dev",
|
|
"repository": {
|
|
"type": "git",
|
|
"url": "git+https://github.com/vercel-labs/scriptc.git",
|
|
"directory": "packages/libnode-linux-arm64-gnu"
|
|
},
|
|
"os": [
|
|
"linux"
|
|
],
|
|
"cpu": [
|
|
"arm64"
|
|
],
|
|
"files": [
|
|
"libnode.so.137",
|
|
"libscr_node_bridge.so",
|
|
"manifest.json",
|
|
"LICENSE",
|
|
"SCRIPTC_LICENSE",
|
|
"THIRD_PARTY_NOTICES"
|
|
],
|
|
"scripts": {
|
|
"build": "true",
|
|
"build:native": "node scripts/build.mjs",
|
|
"prepack": "node ../libnode-common/scripts/verify.mjs ."
|
|
},
|
|
"publishConfig": {
|
|
"access": "public"
|
|
}
|
|
}
|