Skip to content

fix: pack std.jsonnet with a CMake script instead of to_c_array - #1345

Open
olantwin wants to merge 1 commit into
google:masterfrom
olantwin:cmake-pack-stdlib-script
Open

olantwin wants to merge 1 commit into
google:masterfrom
olantwin:cmake-pack-stdlib-script

Conversation

@olantwin

Copy link
Copy Markdown

This is an alternative version of #1344 inspired by the Gemini review feedback. Unlike that version, this version doesn't only affect the cross-compilation branch, but all CMake builds (this is why I didn't update 1344 with this version, as I can understand if you'd prefer not to change all branches).

std.jsonnet.h was generated by building to_c_array and running it on
std.jsonnet. When cross-compiling, to_c_array is built for the target and
cannot run on the build machine, so the build fails.

Generate the header with a small script run through cmake -P at build
time. It writes the same comma-separated, NUL-terminated byte list, as hex
literals, and works the same for native and cross builds. The CMake build
no longer needs the to_c_array target. to_c_array.cpp stays because the
Makefile still uses it.

Assisted-by: Claude Code:claude-opus-5-5

This branch has not been deployed

No deployments
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.

1 participant