Skip to content

2026.11.2.2: openkal-platform 0.21.0; an embedded dependency's link requirements are its embedder's; response files as link inputs; cache fill - #883

Merged
Sunrisepeak merged 4 commits into
mainfrom
release/2026.11.2.2
Nov 2, 2026
Merged

Sunrisepeak merged 4 commits into
mainfrom
release/2026.11.2.2

Conversation

@Sunrisepeak

Copy link
Copy Markdown
Member

Summary

  • openkal-platform 0.21.0 is the built-in <arch>-openkal platform (openkal 0.21: a loader maps an image's instructions from its file; openkal-image 0.3, openkal-musl 0.26 with mimalloc, openkal-llvm-runtime 0.17).
  • An embedded dependency's link flags and libraries are its embedder's (docs/05). openkal-musl embeds compat.mimalloc without prim.c; a Windows program cross-built on Linux was linked against psapi/user32/advapi32 from mimalloc's Windows block (openkal-llvm-runtime#55). e2e 1002 F.
  • @<file> in link flags: the response file and every file it names are link inputs; the hermetic check expands response files for -###. mcpp.build.command_line gains shell_words and response_file_words (unit test). e2e 1006.
  • Build-cache fill: a unit whose outputs fill an entry is in ninja's default, so the engine package's mcpp.core is built in a build plugin's configuration (bmi cache populate failed ... mcpp.core.gcm). e2e 910 B.
  • release.yml: SHA256SUMS names every archive.
  • Design part 3 rev 4: the decisions taken during implementation (§16.6) and the revisions (§17).

Order

e2e 992–996 resolve openkal-platform@0.21.0 from the index; they pass once the openkal family (image 0.3.0 → musl 0.26.0 → llvm-runtime 0.17.0 → platform 0.21.0) is indexed. openkal-llvm-runtime#55 is validated against this branch through its mcpp_ref input.

Test plan

  • e2e 1002, 1006, 910 fail with the previous binary and pass with this one
  • e2e cache/plugin/embed/variant/build_mcpp subset: 47 pass; 992–996 wait for the platform in the index (the same with the previous binary)
  • unit test_command_words
  • CI

…equirements are its embedder's; a response file and what it names are link inputs; a cache entry's every unit is built

- The built-in <arch>-openkal platform is mcpplibs.openkal-platform@0.21.0
  (openkal 0.21, openkal-image 0.3, openkal-musl 0.26, openkal-llvm-runtime 0.17).
- `embed = true`: the dependency's [build] ldflags and [runtime] libraries are
  withdrawn; the embedder states what its definitions link against (e2e 1002).
- `@<file>` in link flags: the file and every absolute file it names are inputs
  of the link edge; the hermetic check expands response files for its -### run
  (e2e 1006). The words of a shell command and of a response file are read by
  mcpp.build.command_line (shell_words, response_file_words; unit test).
- A unit whose outputs fill a build-cache entry is in ninja's default, so the
  engine package's mcpp.core is built in a build plugin's configuration and the
  entry is filled (e2e 910).
- release.yml: SHA256SUMS names every archive of the release.
- Design part 3 rev 4: the decisions taken in implementation (16.6) and the
  revisions (17).

Co-authored-by: speak-agent <248744407+speak-agent@users.noreply.github.com>
…tls frees a thread's blocks in musl's last round

Co-authored-by: speak-agent <248744407+speak-agent@users.noreply.github.com>
Sunrisepeak and others added 2 commits November 2, 2026 15:55
…-in platform's openkal

Co-authored-by: speak-agent <248744407+speak-agent@users.noreply.github.com>
Co-authored-by: speak-agent <248744407+speak-agent@users.noreply.github.com>
@Sunrisepeak
Sunrisepeak merged commit 8d099cb into main Nov 2, 2026
78 checks passed
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