Skip to content
Merged
Show file tree
Hide file tree
Changes from all commits
Commits
File filter

Filter by extension

Filter by extension


Conversations
Failed to load comments.
Loading
Jump to
Jump to file
Failed to load files.
Loading
Diff view
Diff view
2 changes: 1 addition & 1 deletion .github/workflows/ci.yml
Original file line number Diff line number Diff line change
Expand Up @@ -29,7 +29,7 @@ on:
env:
XLINGS_VERSION: v2026.10.26.1
XLINGS_NON_INTERACTIVE: '1'
MCPP_VERSION: 2026.11.5.1
MCPP_VERSION: 2026.11.9.1
LLVM: llvm@23.1.3

jobs:
Expand Down
4 changes: 2 additions & 2 deletions .github/workflows/release-binaries.yml
Original file line number Diff line number Diff line change
Expand Up @@ -33,9 +33,9 @@ env:
RELEASE_TAG: ${{ github.event.inputs.tag }}
ASSET_REVISION: ${{ github.event.inputs.asset_revision || '' }}
MCPP_SOURCE_REF: ${{ github.event.inputs.mcpp_ref || vars.MCPP_SOURCE_REF || '' }}
# 2026.11.3.1 compiles the std module with the selected platform's flags.
# 2026.11.9.1: openkal-run states its implementation as a capability with defaults.
# mcpp_ref supplies the candidate until this release is installable.
MCPP_VERSION: 2026.11.3.1
MCPP_VERSION: 2026.11.9.1
# The platform whose hosted arrangement the programs are built over, named by
# the dispatch beside the tag: a tag's tools pin exact implementations, and the
# platform is the one whose version group holds them (0.1.4: 0.18.0; 0.1.5:
Expand Down
8 changes: 8 additions & 0 deletions README.md
Original file line number Diff line number Diff line change
Expand Up @@ -44,6 +44,14 @@ image starts; a binding makes each call from a program of the system in it and
restores the caller's after it (`okrun_call_enter`, `okrun_call_leave`). The
`fpstate` example and the `bind` example check it on every system.

Version 0.5.4 states the implementation of openkal the runner binds as a
capability with a default per system rather than a dependency per system:
`requires = ["mcpp:kernel-abi=openkal"]` with `[defaults."mcpp:kernel-abi=openkal"]`
naming openkal-linux, openkal-macos and openkal-windows (mcpp 2026.11.9.1). An
implementation the graph already has --- the consumer's own, or the one its
platform adds, such as openkal-posix on another system --- is the one bound,
without a patch of this package.

## An image

```sh
Expand Down
2 changes: 1 addition & 1 deletion bind/mcpp.toml
Original file line number Diff line number Diff line change
@@ -1,7 +1,7 @@
[package]
namespace = "mcpplibs"
name = "openkal-bind"
version = "0.5.3"
version = "0.5.4"
# `mcpp::xpkg_request', `mcpp::decision' (protocol 15).
mcpp = ">=2026.10.1.3"
description = "A build plugin: a library published as an ok image (.okso) and a C header is called from a program of any system, through a binding generated from the header and libokrun."
Expand Down
2 changes: 1 addition & 1 deletion ld/mcpp.toml
Original file line number Diff line number Diff line change
@@ -1,7 +1,7 @@
[package]
namespace = "mcpplibs"
name = "openkal-ld"
version = "0.5.3"
version = "0.5.4"
description = "libokld: the ok format (openkal image format) --- its definition, a reader of bytes, a checker, a signer, and a loader. Freestanding: no C library, no exceptions."
license = "Apache-2.0"
authors = ["mcpplibs"]
Expand Down
20 changes: 11 additions & 9 deletions run/mcpp.toml
Original file line number Diff line number Diff line change
@@ -1,11 +1,17 @@
[package]
namespace = "mcpplibs"
name = "openkal-run"
version = "0.5.3"
version = "0.5.4"
description = "libokrun: the runner's core --- an ok image's names bound to this process's one openkal implementation, in the image's calling convention, and its entry entered."
license = "Apache-2.0"
authors = ["mcpplibs"]
repo = "https://github.com/mcpplibs/openkal-image"
# `[defaults]' (mcpp 2026.11.9.1, SPEC-002 §3.7).
mcpp = ">=2026.11.9.1"
# The runner binds an image's names to this process's one implementation of
# openkal: whichever the graph has --- the consumer's, or the one its
# platform adds --- else the default of the system below.
requires = ["mcpp:kernel-abi=openkal"]

[targets.okrun]
kind = "lib"
Expand All @@ -14,14 +20,10 @@ kind = "lib"
openkal = "^0.24.0"
openkal-ld = { path = "../ld" }

[target.linux.dependencies]
openkal-linux = "^0.25.0"

[target.macos.dependencies]
openkal-macos = "^0.22.1"

[target.windows.dependencies]
openkal-windows = "^0.20.0"
[defaults."mcpp:kernel-abi=openkal"]
linux = "openkal-linux@^0.25.0"
macos = "openkal-macos@^0.22.1"
windows = "openkal-windows@^0.20.0"

# The interfaces each system's implementation provides decide one unit: where
# openkal.space is provided its names are bound, and elsewhere an image that
Expand Down
2 changes: 1 addition & 1 deletion tools/mcpp.toml
Original file line number Diff line number Diff line change
@@ -1,7 +1,7 @@
[package]
namespace = "mcpplibs"
name = "openkal-tools"
version = "0.5.3"
version = "0.5.4"
description = "okrun, which runs an ok image on this system, and okld, the format's tool on a build machine (check, note, sign, inspect)."
license = "Apache-2.0"
authors = ["mcpplibs"]
Expand Down
Loading