Skip to content

build: use a single producer for shared generated files - #66804

Open
inoway46 wants to merge 1 commit into
nodejs:mainfrom
inoway46:build-shared-generation-producers
Open

inoway46 wants to merge 1 commit into
nodejs:mainfrom
inoway46:build-shared-generation-producers

Conversation

@inoway46

@inoway46 inoway46 commented Oct 17, 2026 •

Copy link
Copy Markdown
Contributor

Cross builds register multiple producers for shared generated files. Ninja rejects the duplicate output rules, while Make reports recipe overrides.

Use a single producer for these files and make both toolsets depend on it explicitly. Generator executables still run on the host. Rust archive generation is unchanged.

Validation

Focused validation passed for both native x64 and RISC-V cross builds (Temporal disabled):

Verified:

  • Single producer per shared generator, correct host/target dependencies, and no dependency cycles.
  • Successful graph generation, dry-runs, and generated-file actions.
  • Compilation of representative generated sources for both host and target.
  • Identical generated content after rebuilding.

A full RISC-V cross-build passed with Temporal enabled, using this PR, #66823, the V8 MutablePage cache-line fix, and the V8 Highway CappedTag fix.

Refs: #66803

Cross builds instantiate several shared generation actions in both
toolsets, producing duplicate output rules that Ninja rejects.

Register these actions once in the target toolset and explicitly share
them with host consumers. Keep generator executables in the host toolset
for cross builds.

Refs: nodejs#66803
Assisted-by: Codex
Signed-off-by: inoway46 <inoueyuya416@gmail.com>
@nodejs-github-bot

Copy link
Copy Markdown
Collaborator

Review requested:

  • @nodejs/gyp
  • @nodejs/inspector
  • @nodejs/security-wg
  • @nodejs/v8-update

@nodejs-github-bot nodejs-github-bot added c++ Issues and PRs that require attention from people who are familiar with C++. lib / src Issues and PRs involving general changes in the lib/ or src/ directories. needs-ci PRs that need a full CI run. labels Oct 17, 2026
@inoway46
inoway46 marked this pull request as ready for review October 17, 2026 06:26
@inoway46 inoway46 added the build Issues and PRs related to Node.js builds or CI infrastructure. label Oct 17, 2026
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

build Issues and PRs related to Node.js builds or CI infrastructure. c++ Issues and PRs that require attention from people who are familiar with C++. lib / src Issues and PRs involving general changes in the lib/ or src/ directories. needs-ci PRs that need a full CI run.

Projects

None yet

Development

Successfully merging this pull request may close these issues.

2 participants