Skip to content
Merged
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
36 changes: 20 additions & 16 deletions mcpp.toml
Original file line number Diff line number Diff line change
Expand Up @@ -12,7 +12,7 @@
[package]
namespace = "mcpplibs"
name = "openkal-platform"
version = "0.28.0"
version = "0.28.1"
description = "The platform of ok images (<arch>-openkal): their toolchain, C library and C++ run-time, tools, compile and link conventions, seal, runner and carrier, as one versioned statement mcpp reads."
license = "Apache-2.0"
authors = ["mcpplibs"]
Expand Down Expand Up @@ -53,7 +53,7 @@ toolchain = "llvm@23.1.3"
runner = { cmd = ["okrun", "{}"], host = "same-arch", hosts = ["linux-x86_64", "linux-aarch64", "macos-aarch64", "windows-x86_64", "freebsd-x86_64", "freebsd-aarch64", "uefi-x86_64", "dos-i686"], built-as = { "freebsd-x86_64" = "x86_64-freebsd-musl", "freebsd-aarch64" = "aarch64-freebsd-musl" } }
# `mcpp pack --mode self-contained`: a program of the packing machine that
# carries the image in a section and runs it through libokrun (M3).
carrier = { package = "openkal-run@0.6.3", section = ".oke", main = "carrier/main.cpp" }
carrier = { package = "openkal-run@0.6.4", section = ".oke", main = "carrier/main.cpp" }
# The `okb` package format (`mcpp pack --pkg-format okb`): the images of every
# architecture as one file okrun runs (openkal-image docs/okb.md).
plugin = "build.mcpp"
Expand All @@ -67,16 +67,16 @@ debuggee = ["okrun", "--debugger", "{}"]
[platform.layers]
compiler-runtime = "openkal-llvm-runtime@0.20.3"
"c++-abi" = "openkal-llvm-runtime@0.20.3"
c-abi = { name = "openkal-musl", version = "0.29.6", default-features = false, features = ["posix", "malloc-mimalloc"] }
c-abi = { name = "openkal-musl", version = "0.29.7", default-features = false, features = ["posix", "malloc-mimalloc"] }

# Built for the building machine: `okld` writes and checks the notes, `okrun`
# runs an image, `okprof` reads what a measured run recorded (0.23.0: the
# order of a start's first executions, which a producer lays its code out by
# and writes as the touch note).
[platform.tools]
okld = "openkal-tools@0.6.3"
okrun = "openkal-tools@0.6.3"
okprof = "openkal-tools@0.6.3"
okld = "openkal-tools@0.6.4"
okrun = "openkal-tools@0.6.4"
okprof = "openkal-tools@0.6.4"
# The seal of the DOS row (0.28.0): the stub of openkal-dos before an executable.
okdos = "openkal-dos-tools@0.1.0"

Expand Down Expand Up @@ -216,7 +216,7 @@ toolchain = "llvm@23.1.3"
[platform.hosted.layers]
compiler-runtime = "openkal-llvm-runtime@0.20.3"
"c++-abi" = "openkal-llvm-runtime@0.20.3"
c-abi = { name = "openkal-musl", version = "0.29.6", default-features = false, features = ["posix", "malloc-mimalloc"] }
c-abi = { name = "openkal-musl", version = "0.29.7", default-features = false, features = ["posix", "malloc-mimalloc"] }

# UEFI (0.28.0): applications the firmware loads, on the same C library and C++
# run-time over openkal-uefi (openkal-musl names it, `standalone', on
Expand Down Expand Up @@ -247,7 +247,7 @@ serves = ["x86_64-uefi"]
base = "none"
hosted = true

layers = { compiler-runtime = "openkal-llvm-runtime@0.20.3", "c++-abi" = "openkal-llvm-runtime@0.20.3", c-abi = { name = "openkal-musl", version = "0.29.6", default-features = false, features = ["posix", "malloc-mimalloc"] } }
layers = { compiler-runtime = "openkal-llvm-runtime@0.20.3", "c++-abi" = "openkal-llvm-runtime@0.20.3", c-abi = { name = "openkal-musl", version = "0.29.7", default-features = false, features = ["posix", "malloc-mimalloc"] } }
link = { driver = "lld", start = "efi_main", flags = ["--subsystem", "efi_application", "--gc-sections"], exe = "{name}.efi", inputs = [{ file = "board/qemu-exit.S" }], seal = [] }
runner = { cmd = ["dirun", "--payload", "{}", "--profile", "{pkg:ovmf}/dirun.toml", "--emulator", "{pkg:qemu-x86}/bin/qemu-system-x86_64", "--memory", "2048"], hosts = ["linux-x86_64", "linux-aarch64", "macos-aarch64", "windows-x86_64"], requires = ["xim:dirun@0.3.2", "xim:qemu-x86@9.2.4-1", "xim:ovmf@9.2.4-1"] }

Expand Down Expand Up @@ -283,7 +283,7 @@ serves = ["i686-dos-musl"]
base = "none"
hosted = true

layers = { compiler-runtime = "openkal-llvm-runtime@0.20.3", "c++-abi" = "openkal-llvm-runtime@0.20.3", c-abi = { name = "openkal-musl", version = "0.29.6", default-features = false, features = ["posix", "malloc-mallocng"] } }
layers = { compiler-runtime = "openkal-llvm-runtime@0.20.3", "c++-abi" = "openkal-llvm-runtime@0.20.3", c-abi = { name = "openkal-musl", version = "0.29.7", default-features = false, features = ["posix", "malloc-mallocng"] } }
link = { driver = "lld", start = "okdos_entry", flags = ["-static", "--image-base=0x1000", "-z", "norelro", "--gc-sections", "--eh-frame-hdr"], seal = [["okdos", "seal", "{}"]] }
runner = { cmd = ["dirun", "--payload", "{}", "--profile", "{pkg:dosbox-staging}/dirun.toml", "--"], hosts = ["linux-x86_64", "macos-aarch64", "windows-x86_64"], requires = ["xim:dirun@0.3.2", "xim:dosbox-staging@0.83.0"] }

Expand Down Expand Up @@ -340,30 +340,34 @@ runner = { cmd = ["dirun", "--payload", "{}", "--profile", "{pkg:dosbox-staging}
# 0.20.3, which take the optional interfaces from the implementation (or, in an
# image, at run time) and serve the PE rows by their container, and openkal-image
# 0.6.3, whose runner has a core for an implementation without files, processes
# or threads): one version of each in a build. From 0.24.1 the members name one another by
# or threads); 0.28.1, openkal-image 0.6.4 (the runner folds the path it is
# given, `//', `.' and `..', before it looks for the image), openkal-macos 0.23.4
# (`___bzero' in the stub of a link without an SDK, x86_64) and openkal-musl
# 0.29.7 (`uname' names the system a hosted program runs on): one version of
# each in a build. From 0.24.1 the members name one another by
# compatible ranges (`^0.28.0`) and this group chooses the versions: mcpp
# 2026.11.7.1 resolves within it, and a fix of one member is that member's
# release and a patch of this group, released together through one index change
# (tools/family_release.py, .github/workflows/family-release.yml).
[platform.versions]
openkal = "0.25.3"
openkal-linux = "0.26.3"
openkal-macos = "0.23.3"
openkal-macos = "0.23.4"
openkal-windows = "0.21.2"
openkal-freebsd = "0.1.2"
openkal-uefi = "0.10.0"
openkal-dos = "0.1.0"
openkal-dos-tools = "0.1.0"
openkal-musl = "0.29.6"
openkal-musl = "0.29.7"
openkal-llvm-runtime = "0.20.3"
openkal-ld = "0.6.3"
openkal-run = "0.6.3"
openkal-tools = "0.6.3"
openkal-ld = "0.6.4"
openkal-run = "0.6.4"
openkal-tools = "0.6.4"

# The plugin's tool, `okld bundle`, which writes the okb, and its library, the
# provider of a package format (mcpp.plugins.platform).
[build-dependencies]
openkal-tools = { version = "0.6.3", tools = ["okld"] }
openkal-tools = { version = "0.6.4", tools = ["okld"] }

[build-dependencies.mcpp]
plugins = { version = "0.20.0", features = ["plugins-platform"], host-module = true }
Loading