mirror of
https://github.com/stablyai/orca.git
synced 2026-10-02 16:02:15 +00:00
* build(orcad): build server glibc slots on glibc 2.28 and add the glibc 2.17 compat slot
Design D6: the default linux-{x64,arm64}-glibc node-pty slots now build in
manylinux_2_28 (digest-pinned) and are gated at glibc 2.28 / GLIBCXX_3.4.25
through a floor profile on verify-linux-glibc-floor.cjs; the desktop keeps
its Ubuntu 20.04 (2.31) default.
Adds the opt-in linux-x64-glibc217 compat target: NODE_RUNTIME_COMPAT_ASSETS
pins the unofficial glibc-217 Node (update/check pin scripts cover it, outside
SERVER_TARGETS), and a new CI lane builds the compat slot in manylinux2014
with static libstdc++, gates it at glibc 2.17 with no shared C++ runtime in
DT_NEEDED, and smokes it under the glibc-217 Node.
* refactor(node-runtime-pin): route compat lookups through isCompatServerTarget; keep the glibc doc's slot-name paragraph intact
---------
Co-authored-by: m4air <m4air@m4airs-Air.localdomain>
25 lines
942 B
JavaScript
25 lines
942 B
JavaScript
// Kept apart from update-node-runtime-pin.mjs so the offline check does not load its build graph.
|
|
|
|
/** Node's platform suffix for each server target; nodejs.org names Windows `win`, not `win32`. */
|
|
export const NODE_DIST_PLATFORMS = {
|
|
'darwin-arm64': 'darwin-arm64',
|
|
'darwin-x64': 'darwin-x64',
|
|
'linux-arm64-glibc': 'linux-arm64',
|
|
'linux-x64-glibc': 'linux-x64',
|
|
'linux-arm64-musl': 'linux-arm64-musl',
|
|
'linux-x64-musl': 'linux-x64-musl',
|
|
'win32-arm64': 'win-arm64',
|
|
'win32-x64': 'win-x64',
|
|
'linux-x64-glibc217': 'linux-x64-glibc-217'
|
|
}
|
|
|
|
export function nodeDistArchiveName(version, target) {
|
|
// Why .tar.gz over .tar.xz: every POSIX host can extract gzip; xz is not guaranteed.
|
|
const extension = target.startsWith('win32-') ? 'zip' : 'tar.gz'
|
|
return `node-v${version}-${NODE_DIST_PLATFORMS[target]}.${extension}`
|
|
}
|
|
|
|
export function windowsImportLibFile(target) {
|
|
return `${NODE_DIST_PLATFORMS[target]}/node.lib`
|
|
}
|