From 7b735753ebdd4799d94f1e579cc2fc26466977af Mon Sep 17 00:00:00 2001 From: Sunrisepeak Date: Tue, 10 Nov 2026 21:37:06 +0900 Subject: [PATCH 1/5] openkal-freebsd 0.1.0 (new), openkal-musl 0.29.1, openkal-llvm-runtime 0.20.1, openkal-image 0.6.0 --- pkgs/o/openkal-bind.lua | 21 +++++++++++++ pkgs/o/openkal-freebsd.lua | 52 +++++++++++++++++++++++++++++++++ pkgs/o/openkal-ld.lua | 21 +++++++++++++ pkgs/o/openkal-llvm-runtime.lua | 24 +++++++++++++++ pkgs/o/openkal-musl.lua | 25 ++++++++++++++++ pkgs/o/openkal-run.lua | 25 ++++++++++++++++ pkgs/o/openkal-tools.lua | 21 +++++++++++++ 7 files changed, 189 insertions(+) create mode 100644 pkgs/o/openkal-freebsd.lua diff --git a/pkgs/o/openkal-bind.lua b/pkgs/o/openkal-bind.lua index a7961c2c..27aa1cef 100644 --- a/pkgs/o/openkal-bind.lua +++ b/pkgs/o/openkal-bind.lua @@ -25,6 +25,13 @@ package = { xpm = { linux = { + ["0.6.0"] = { + url = { + GLOBAL = "https://github.com/mcpplibs/openkal-image/archive/refs/tags/0.6.0.tar.gz", + CN = "https://gitcode.com/mcpp-res/openkal-image/releases/download/0.6.0/openkal-image-0.6.0.tar.gz", + }, + sha256 = "12e9a22a664a6cf6149ea375bd21797479be5ba6e0b98b36ef5f83edc534ba2f", + }, ["0.5.5"] = { url = { GLOBAL = "https://github.com/mcpplibs/openkal-image/archive/refs/tags/0.5.5.tar.gz", @@ -195,6 +202,13 @@ package = { }, }, macosx = { + ["0.6.0"] = { + url = { + GLOBAL = "https://github.com/mcpplibs/openkal-image/archive/refs/tags/0.6.0.tar.gz", + CN = "https://gitcode.com/mcpp-res/openkal-image/releases/download/0.6.0/openkal-image-0.6.0.tar.gz", + }, + sha256 = "12e9a22a664a6cf6149ea375bd21797479be5ba6e0b98b36ef5f83edc534ba2f", + }, ["0.5.5"] = { url = { GLOBAL = "https://github.com/mcpplibs/openkal-image/archive/refs/tags/0.5.5.tar.gz", @@ -365,6 +379,13 @@ package = { }, }, windows = { + ["0.6.0"] = { + url = { + GLOBAL = "https://github.com/mcpplibs/openkal-image/archive/refs/tags/0.6.0.tar.gz", + CN = "https://gitcode.com/mcpp-res/openkal-image/releases/download/0.6.0/openkal-image-0.6.0.tar.gz", + }, + sha256 = "12e9a22a664a6cf6149ea375bd21797479be5ba6e0b98b36ef5f83edc534ba2f", + }, ["0.5.5"] = { url = { GLOBAL = "https://github.com/mcpplibs/openkal-image/archive/refs/tags/0.5.5.tar.gz", diff --git a/pkgs/o/openkal-freebsd.lua b/pkgs/o/openkal-freebsd.lua new file mode 100644 index 00000000..0acb52ab --- /dev/null +++ b/pkgs/o/openkal-freebsd.lua @@ -0,0 +1,52 @@ +-- openkal-freebsd --- openkal for FreeBSD, on the kernel's system-call interface. +-- +-- No descriptor-level `deps`: the source manifest names the openkal contract. +-- Two arrangements share the package. Hosted, a program keeps FreeBSD's own C +-- library beside it (mcpp's route A over a FreeBSD base package); standalone +-- (the feature `standalone`), it is the kernel layer beneath openkal-musl +-- (route B, the rows x86_64-freebsd-musl and aarch64-freebsd-musl), which +-- selects it in its own manifest. It needs mcpp 2026.11.10.1, the first release +-- whose built-in rows name FreeBSD. +-- +-- The package is listed for every platform because a descriptor's platform +-- table describes availability rather than applicability: it is built on any +-- host for a FreeBSD target. +package = { + spec = "1", + namespace = "mcpplibs", + name = "openkal-freebsd", + description = "An implementation of openkal for FreeBSD, written on the kernel's system-call interface, hosted beside the system's C library or standalone beneath openkal-musl", + licenses = {"Apache-2.0"}, + repo = "https://github.com/mcpplibs/openkal-freebsd", + type = "package", + + xpm = { + linux = { + ["0.1.0"] = { + url = { + GLOBAL = "https://github.com/mcpplibs/openkal-freebsd/archive/refs/tags/0.1.0.tar.gz", + CN = "https://gitcode.com/mcpp-res/openkal-freebsd/releases/download/0.1.0/openkal-freebsd-0.1.0.tar.gz", + }, + sha256 = "c9d4a73f7f76f09f2f0f5dfc484f3a0db10eb57971aae30d47677e657b8b30ac", + }, + }, + macosx = { + ["0.1.0"] = { + url = { + GLOBAL = "https://github.com/mcpplibs/openkal-freebsd/archive/refs/tags/0.1.0.tar.gz", + CN = "https://gitcode.com/mcpp-res/openkal-freebsd/releases/download/0.1.0/openkal-freebsd-0.1.0.tar.gz", + }, + sha256 = "c9d4a73f7f76f09f2f0f5dfc484f3a0db10eb57971aae30d47677e657b8b30ac", + }, + }, + windows = { + ["0.1.0"] = { + url = { + GLOBAL = "https://github.com/mcpplibs/openkal-freebsd/archive/refs/tags/0.1.0.tar.gz", + CN = "https://gitcode.com/mcpp-res/openkal-freebsd/releases/download/0.1.0/openkal-freebsd-0.1.0.tar.gz", + }, + sha256 = "c9d4a73f7f76f09f2f0f5dfc484f3a0db10eb57971aae30d47677e657b8b30ac", + }, + }, + }, +} diff --git a/pkgs/o/openkal-ld.lua b/pkgs/o/openkal-ld.lua index a7bf0f22..7a4740e2 100644 --- a/pkgs/o/openkal-ld.lua +++ b/pkgs/o/openkal-ld.lua @@ -18,6 +18,13 @@ package = { xpm = { linux = { + ["0.6.0"] = { + url = { + GLOBAL = "https://github.com/mcpplibs/openkal-image/archive/refs/tags/0.6.0.tar.gz", + CN = "https://gitcode.com/mcpp-res/openkal-image/releases/download/0.6.0/openkal-image-0.6.0.tar.gz", + }, + sha256 = "12e9a22a664a6cf6149ea375bd21797479be5ba6e0b98b36ef5f83edc534ba2f", + }, ["0.5.5"] = { url = { GLOBAL = "https://github.com/mcpplibs/openkal-image/archive/refs/tags/0.5.5.tar.gz", @@ -202,6 +209,13 @@ package = { }, }, macosx = { + ["0.6.0"] = { + url = { + GLOBAL = "https://github.com/mcpplibs/openkal-image/archive/refs/tags/0.6.0.tar.gz", + CN = "https://gitcode.com/mcpp-res/openkal-image/releases/download/0.6.0/openkal-image-0.6.0.tar.gz", + }, + sha256 = "12e9a22a664a6cf6149ea375bd21797479be5ba6e0b98b36ef5f83edc534ba2f", + }, ["0.5.5"] = { url = { GLOBAL = "https://github.com/mcpplibs/openkal-image/archive/refs/tags/0.5.5.tar.gz", @@ -386,6 +400,13 @@ package = { }, }, windows = { + ["0.6.0"] = { + url = { + GLOBAL = "https://github.com/mcpplibs/openkal-image/archive/refs/tags/0.6.0.tar.gz", + CN = "https://gitcode.com/mcpp-res/openkal-image/releases/download/0.6.0/openkal-image-0.6.0.tar.gz", + }, + sha256 = "12e9a22a664a6cf6149ea375bd21797479be5ba6e0b98b36ef5f83edc534ba2f", + }, ["0.5.5"] = { url = { GLOBAL = "https://github.com/mcpplibs/openkal-image/archive/refs/tags/0.5.5.tar.gz", diff --git a/pkgs/o/openkal-llvm-runtime.lua b/pkgs/o/openkal-llvm-runtime.lua index 9e59d6d1..1f3cce27 100644 --- a/pkgs/o/openkal-llvm-runtime.lua +++ b/pkgs/o/openkal-llvm-runtime.lua @@ -64,6 +64,9 @@ -- It pins openkal-musl 0.19.0, which carries the matching change to -- `bits/setjmp.h`. -- +-- +-- 0.20.1 adds FreeBSD above openkal-musl 0.29.1 (x86_64 and aarch64). No +-- other row changed. package = { spec = "1", namespace = "mcpplibs", @@ -75,6 +78,13 @@ package = { xpm = { linux = { + ["0.20.1"] = { + url = { + GLOBAL = "https://github.com/mcpplibs/openkal-llvm-runtime/archive/refs/tags/0.20.1.tar.gz", + CN = "https://gitcode.com/mcpp-res/openkal-llvm-runtime/releases/download/0.20.1/openkal-llvm-runtime-0.20.1.tar.gz", + }, + sha256 = "6739ffdc6c114ea8fa576e228f88b868c47c234a2bb2d0fc9b1c5e969c42b432", + }, ["0.20.0"] = { url = { GLOBAL = "https://github.com/mcpplibs/openkal-llvm-runtime/archive/refs/tags/0.20.0.tar.gz", @@ -511,6 +521,13 @@ package = { }, }, macosx = { + ["0.20.1"] = { + url = { + GLOBAL = "https://github.com/mcpplibs/openkal-llvm-runtime/archive/refs/tags/0.20.1.tar.gz", + CN = "https://gitcode.com/mcpp-res/openkal-llvm-runtime/releases/download/0.20.1/openkal-llvm-runtime-0.20.1.tar.gz", + }, + sha256 = "6739ffdc6c114ea8fa576e228f88b868c47c234a2bb2d0fc9b1c5e969c42b432", + }, ["0.20.0"] = { url = { GLOBAL = "https://github.com/mcpplibs/openkal-llvm-runtime/archive/refs/tags/0.20.0.tar.gz", @@ -947,6 +964,13 @@ package = { }, }, windows = { + ["0.20.1"] = { + url = { + GLOBAL = "https://github.com/mcpplibs/openkal-llvm-runtime/archive/refs/tags/0.20.1.tar.gz", + CN = "https://gitcode.com/mcpp-res/openkal-llvm-runtime/releases/download/0.20.1/openkal-llvm-runtime-0.20.1.tar.gz", + }, + sha256 = "6739ffdc6c114ea8fa576e228f88b868c47c234a2bb2d0fc9b1c5e969c42b432", + }, ["0.20.0"] = { url = { GLOBAL = "https://github.com/mcpplibs/openkal-llvm-runtime/archive/refs/tags/0.20.0.tar.gz", diff --git a/pkgs/o/openkal-musl.lua b/pkgs/o/openkal-musl.lua index a5590bf3..adc54fd6 100644 --- a/pkgs/o/openkal-musl.lua +++ b/pkgs/o/openkal-musl.lua @@ -64,6 +64,10 @@ -- arguments from a constructor of its own, in the order the linker loaded -- their objects; a program whose link loaded this library's first received -- argc 0 (mcppls on aarch64-macos). +-- +-- 0.29.1 adds FreeBSD: the rows x86_64-freebsd-musl and aarch64-freebsd-musl, +-- over openkal-freebsd's standalone arrangement, which the package's manifest +-- names under `cfg(os = "freebsd")`. No other row changed. package = { spec = "1", namespace = "mcpplibs", @@ -75,6 +79,13 @@ package = { xpm = { linux = { + ["0.29.1"] = { + url = { + GLOBAL = "https://github.com/mcpplibs/openkal-musl/archive/refs/tags/0.29.1.tar.gz", + CN = "https://gitcode.com/mcpp-res/openkal-musl/releases/download/0.29.1/openkal-musl-0.29.1.tar.gz", + }, + sha256 = "77a1f6df1f3a3b4d3e5f5e3b801c82b8b43b5b7d323027fdddcc679c05441215", + }, ["0.29.0"] = { url = { GLOBAL = "https://github.com/mcpplibs/openkal-musl/archive/refs/tags/0.29.0.tar.gz", @@ -518,6 +529,13 @@ package = { }, }, macosx = { + ["0.29.1"] = { + url = { + GLOBAL = "https://github.com/mcpplibs/openkal-musl/archive/refs/tags/0.29.1.tar.gz", + CN = "https://gitcode.com/mcpp-res/openkal-musl/releases/download/0.29.1/openkal-musl-0.29.1.tar.gz", + }, + sha256 = "77a1f6df1f3a3b4d3e5f5e3b801c82b8b43b5b7d323027fdddcc679c05441215", + }, ["0.29.0"] = { url = { GLOBAL = "https://github.com/mcpplibs/openkal-musl/archive/refs/tags/0.29.0.tar.gz", @@ -961,6 +979,13 @@ package = { }, }, windows = { + ["0.29.1"] = { + url = { + GLOBAL = "https://github.com/mcpplibs/openkal-musl/archive/refs/tags/0.29.1.tar.gz", + CN = "https://gitcode.com/mcpp-res/openkal-musl/releases/download/0.29.1/openkal-musl-0.29.1.tar.gz", + }, + sha256 = "77a1f6df1f3a3b4d3e5f5e3b801c82b8b43b5b7d323027fdddcc679c05441215", + }, ["0.29.0"] = { url = { GLOBAL = "https://github.com/mcpplibs/openkal-musl/archive/refs/tags/0.29.0.tar.gz", diff --git a/pkgs/o/openkal-run.lua b/pkgs/o/openkal-run.lua index a8dd01b6..6e4c32f6 100644 --- a/pkgs/o/openkal-run.lua +++ b/pkgs/o/openkal-run.lua @@ -7,6 +7,10 @@ -- that carries an image as a section (`mcpp pack --mode self-contained`, M3). -- -- No `deps'. The package names openkal, openkal-ld and the implementation. +-- +-- 0.6.0 binds only the interfaces its implementation provides, as mcpp +-- 2026.11.10.1 states them to its build program (MCPP_KERNEL_ABI_INTERFACES), +-- and needs that release. package = { spec = "1", namespace = "mcpplibs", @@ -18,6 +22,13 @@ package = { xpm = { linux = { + ["0.6.0"] = { + url = { + GLOBAL = "https://github.com/mcpplibs/openkal-image/archive/refs/tags/0.6.0.tar.gz", + CN = "https://gitcode.com/mcpp-res/openkal-image/releases/download/0.6.0/openkal-image-0.6.0.tar.gz", + }, + sha256 = "12e9a22a664a6cf6149ea375bd21797479be5ba6e0b98b36ef5f83edc534ba2f", + }, ["0.5.5"] = { url = { GLOBAL = "https://github.com/mcpplibs/openkal-image/archive/refs/tags/0.5.5.tar.gz", @@ -202,6 +213,13 @@ package = { }, }, macosx = { + ["0.6.0"] = { + url = { + GLOBAL = "https://github.com/mcpplibs/openkal-image/archive/refs/tags/0.6.0.tar.gz", + CN = "https://gitcode.com/mcpp-res/openkal-image/releases/download/0.6.0/openkal-image-0.6.0.tar.gz", + }, + sha256 = "12e9a22a664a6cf6149ea375bd21797479be5ba6e0b98b36ef5f83edc534ba2f", + }, ["0.5.5"] = { url = { GLOBAL = "https://github.com/mcpplibs/openkal-image/archive/refs/tags/0.5.5.tar.gz", @@ -386,6 +404,13 @@ package = { }, }, windows = { + ["0.6.0"] = { + url = { + GLOBAL = "https://github.com/mcpplibs/openkal-image/archive/refs/tags/0.6.0.tar.gz", + CN = "https://gitcode.com/mcpp-res/openkal-image/releases/download/0.6.0/openkal-image-0.6.0.tar.gz", + }, + sha256 = "12e9a22a664a6cf6149ea375bd21797479be5ba6e0b98b36ef5f83edc534ba2f", + }, ["0.5.5"] = { url = { GLOBAL = "https://github.com/mcpplibs/openkal-image/archive/refs/tags/0.5.5.tar.gz", diff --git a/pkgs/o/openkal-tools.lua b/pkgs/o/openkal-tools.lua index 9c421c50..b2c50842 100644 --- a/pkgs/o/openkal-tools.lua +++ b/pkgs/o/openkal-tools.lua @@ -20,6 +20,13 @@ package = { xpm = { linux = { + ["0.6.0"] = { + url = { + GLOBAL = "https://github.com/mcpplibs/openkal-image/archive/refs/tags/0.6.0.tar.gz", + CN = "https://gitcode.com/mcpp-res/openkal-image/releases/download/0.6.0/openkal-image-0.6.0.tar.gz", + }, + sha256 = "12e9a22a664a6cf6149ea375bd21797479be5ba6e0b98b36ef5f83edc534ba2f", + }, ["0.5.5"] = { url = { GLOBAL = "https://github.com/mcpplibs/openkal-image/archive/refs/tags/0.5.5.tar.gz", @@ -204,6 +211,13 @@ package = { }, }, macosx = { + ["0.6.0"] = { + url = { + GLOBAL = "https://github.com/mcpplibs/openkal-image/archive/refs/tags/0.6.0.tar.gz", + CN = "https://gitcode.com/mcpp-res/openkal-image/releases/download/0.6.0/openkal-image-0.6.0.tar.gz", + }, + sha256 = "12e9a22a664a6cf6149ea375bd21797479be5ba6e0b98b36ef5f83edc534ba2f", + }, ["0.5.5"] = { url = { GLOBAL = "https://github.com/mcpplibs/openkal-image/archive/refs/tags/0.5.5.tar.gz", @@ -388,6 +402,13 @@ package = { }, }, windows = { + ["0.6.0"] = { + url = { + GLOBAL = "https://github.com/mcpplibs/openkal-image/archive/refs/tags/0.6.0.tar.gz", + CN = "https://gitcode.com/mcpp-res/openkal-image/releases/download/0.6.0/openkal-image-0.6.0.tar.gz", + }, + sha256 = "12e9a22a664a6cf6149ea375bd21797479be5ba6e0b98b36ef5f83edc534ba2f", + }, ["0.5.5"] = { url = { GLOBAL = "https://github.com/mcpplibs/openkal-image/archive/refs/tags/0.5.5.tar.gz", From ecbc0239e277ac299c9b665b43e8dec637c2a9d4 Mon Sep 17 00:00:00 2001 From: Sunrisepeak Date: Tue, 10 Nov 2026 21:45:35 +0900 Subject: [PATCH 2/5] mtest 0.6.0: mcpplibs.mtest, .capi, .gtest, .manifest --- pkgs/m/mcpplibs.mtest.capi.lua | 21 +++++++++++++++++++++ pkgs/m/mcpplibs.mtest.gtest.lua | 21 +++++++++++++++++++++ pkgs/m/mcpplibs.mtest.manifest.lua | 21 +++++++++++++++++++++ pkgs/m/mtest.lua | 26 ++++++++++++++++++++++++++ 4 files changed, 89 insertions(+) diff --git a/pkgs/m/mcpplibs.mtest.capi.lua b/pkgs/m/mcpplibs.mtest.capi.lua index 6391a21b..0404240c 100644 --- a/pkgs/m/mcpplibs.mtest.capi.lua +++ b/pkgs/m/mcpplibs.mtest.capi.lua @@ -21,6 +21,13 @@ package = { xpm = { linux = { + ["0.6.0"] = { + url = { + GLOBAL = "https://github.com/mcpp-community/mtest/archive/refs/tags/v0.6.0.tar.gz", + CN = "https://gitcode.com/mcpp-res/mtest/releases/download/v0.6.0/mtest-v0.6.0.tar.gz", + }, + sha256 = "eb90f823b4b2c6e4407110cd7c4bac290b683fdf3c1b6b471a58e9e7016b5472", + }, ["0.5.2"] = { url = { GLOBAL = "https://github.com/mcpp-community/mtest/archive/refs/tags/v0.5.2.tar.gz", @@ -79,6 +86,13 @@ package = { }, }, macosx = { + ["0.6.0"] = { + url = { + GLOBAL = "https://github.com/mcpp-community/mtest/archive/refs/tags/v0.6.0.tar.gz", + CN = "https://gitcode.com/mcpp-res/mtest/releases/download/v0.6.0/mtest-v0.6.0.tar.gz", + }, + sha256 = "eb90f823b4b2c6e4407110cd7c4bac290b683fdf3c1b6b471a58e9e7016b5472", + }, ["0.5.2"] = { url = { GLOBAL = "https://github.com/mcpp-community/mtest/archive/refs/tags/v0.5.2.tar.gz", @@ -137,6 +151,13 @@ package = { }, }, windows = { + ["0.6.0"] = { + url = { + GLOBAL = "https://github.com/mcpp-community/mtest/archive/refs/tags/v0.6.0.tar.gz", + CN = "https://gitcode.com/mcpp-res/mtest/releases/download/v0.6.0/mtest-v0.6.0.tar.gz", + }, + sha256 = "eb90f823b4b2c6e4407110cd7c4bac290b683fdf3c1b6b471a58e9e7016b5472", + }, ["0.5.2"] = { url = { GLOBAL = "https://github.com/mcpp-community/mtest/archive/refs/tags/v0.5.2.tar.gz", diff --git a/pkgs/m/mcpplibs.mtest.gtest.lua b/pkgs/m/mcpplibs.mtest.gtest.lua index 6456862a..5bc0dda7 100644 --- a/pkgs/m/mcpplibs.mtest.gtest.lua +++ b/pkgs/m/mcpplibs.mtest.gtest.lua @@ -20,6 +20,13 @@ package = { xpm = { linux = { + ["0.6.0"] = { + url = { + GLOBAL = "https://github.com/mcpp-community/mtest/archive/refs/tags/v0.6.0.tar.gz", + CN = "https://gitcode.com/mcpp-res/mtest/releases/download/v0.6.0/mtest-v0.6.0.tar.gz", + }, + sha256 = "eb90f823b4b2c6e4407110cd7c4bac290b683fdf3c1b6b471a58e9e7016b5472", + }, ["0.5.2"] = { url = { GLOBAL = "https://github.com/mcpp-community/mtest/archive/refs/tags/v0.5.2.tar.gz", @@ -78,6 +85,13 @@ package = { }, }, macosx = { + ["0.6.0"] = { + url = { + GLOBAL = "https://github.com/mcpp-community/mtest/archive/refs/tags/v0.6.0.tar.gz", + CN = "https://gitcode.com/mcpp-res/mtest/releases/download/v0.6.0/mtest-v0.6.0.tar.gz", + }, + sha256 = "eb90f823b4b2c6e4407110cd7c4bac290b683fdf3c1b6b471a58e9e7016b5472", + }, ["0.5.2"] = { url = { GLOBAL = "https://github.com/mcpp-community/mtest/archive/refs/tags/v0.5.2.tar.gz", @@ -136,6 +150,13 @@ package = { }, }, windows = { + ["0.6.0"] = { + url = { + GLOBAL = "https://github.com/mcpp-community/mtest/archive/refs/tags/v0.6.0.tar.gz", + CN = "https://gitcode.com/mcpp-res/mtest/releases/download/v0.6.0/mtest-v0.6.0.tar.gz", + }, + sha256 = "eb90f823b4b2c6e4407110cd7c4bac290b683fdf3c1b6b471a58e9e7016b5472", + }, ["0.5.2"] = { url = { GLOBAL = "https://github.com/mcpp-community/mtest/archive/refs/tags/v0.5.2.tar.gz", diff --git a/pkgs/m/mcpplibs.mtest.manifest.lua b/pkgs/m/mcpplibs.mtest.manifest.lua index 16dafa73..c549ad91 100644 --- a/pkgs/m/mcpplibs.mtest.manifest.lua +++ b/pkgs/m/mcpplibs.mtest.manifest.lua @@ -22,6 +22,13 @@ package = { xpm = { linux = { + ["0.6.0"] = { + url = { + GLOBAL = "https://github.com/mcpp-community/mtest/archive/refs/tags/v0.6.0.tar.gz", + CN = "https://gitcode.com/mcpp-res/mtest/releases/download/v0.6.0/mtest-v0.6.0.tar.gz", + }, + sha256 = "eb90f823b4b2c6e4407110cd7c4bac290b683fdf3c1b6b471a58e9e7016b5472", + }, ["0.5.2"] = { url = { GLOBAL = "https://github.com/mcpp-community/mtest/archive/refs/tags/v0.5.2.tar.gz", @@ -66,6 +73,13 @@ package = { }, }, macosx = { + ["0.6.0"] = { + url = { + GLOBAL = "https://github.com/mcpp-community/mtest/archive/refs/tags/v0.6.0.tar.gz", + CN = "https://gitcode.com/mcpp-res/mtest/releases/download/v0.6.0/mtest-v0.6.0.tar.gz", + }, + sha256 = "eb90f823b4b2c6e4407110cd7c4bac290b683fdf3c1b6b471a58e9e7016b5472", + }, ["0.5.2"] = { url = { GLOBAL = "https://github.com/mcpp-community/mtest/archive/refs/tags/v0.5.2.tar.gz", @@ -110,6 +124,13 @@ package = { }, }, windows = { + ["0.6.0"] = { + url = { + GLOBAL = "https://github.com/mcpp-community/mtest/archive/refs/tags/v0.6.0.tar.gz", + CN = "https://gitcode.com/mcpp-res/mtest/releases/download/v0.6.0/mtest-v0.6.0.tar.gz", + }, + sha256 = "eb90f823b4b2c6e4407110cd7c4bac290b683fdf3c1b6b471a58e9e7016b5472", + }, ["0.5.2"] = { url = { GLOBAL = "https://github.com/mcpp-community/mtest/archive/refs/tags/v0.5.2.tar.gz", diff --git a/pkgs/m/mtest.lua b/pkgs/m/mtest.lua index 0c1f702d..21d963a8 100644 --- a/pkgs/m/mtest.lua +++ b/pkgs/m/mtest.lua @@ -5,6 +5,11 @@ -- fixtures and attributes with no macro and no header; a program built with it -- speaks the mtest test protocol (spec/protocol.md), and its entry begins a -- test file that defines no `main` (mcpp 2026.11.8.1 and later). +-- +-- 0.6.0 implements the mcpp test spec's optional capabilities (mcpp +-- docs/specs/test.md): each case's checks and output, and a test session the +-- engine serves (`mtest serve`); its entry states them (`test-capabilities`, +-- `test-session`), which mcpp 2026.11.10.1 reads and an earlier mcpp ignores. package = { spec = "1", namespace = "mcpplibs", @@ -23,6 +28,13 @@ package = { xpm = { linux = { + ["0.6.0"] = { + url = { + GLOBAL = "https://github.com/mcpp-community/mtest/archive/refs/tags/v0.6.0.tar.gz", + CN = "https://gitcode.com/mcpp-res/mtest/releases/download/v0.6.0/mtest-v0.6.0.tar.gz", + }, + sha256 = "eb90f823b4b2c6e4407110cd7c4bac290b683fdf3c1b6b471a58e9e7016b5472", + }, ["0.5.2"] = { url = { GLOBAL = "https://github.com/mcpp-community/mtest/archive/refs/tags/v0.5.2.tar.gz", @@ -81,6 +93,13 @@ package = { }, }, macosx = { + ["0.6.0"] = { + url = { + GLOBAL = "https://github.com/mcpp-community/mtest/archive/refs/tags/v0.6.0.tar.gz", + CN = "https://gitcode.com/mcpp-res/mtest/releases/download/v0.6.0/mtest-v0.6.0.tar.gz", + }, + sha256 = "eb90f823b4b2c6e4407110cd7c4bac290b683fdf3c1b6b471a58e9e7016b5472", + }, ["0.5.2"] = { url = { GLOBAL = "https://github.com/mcpp-community/mtest/archive/refs/tags/v0.5.2.tar.gz", @@ -139,6 +158,13 @@ package = { }, }, windows = { + ["0.6.0"] = { + url = { + GLOBAL = "https://github.com/mcpp-community/mtest/archive/refs/tags/v0.6.0.tar.gz", + CN = "https://gitcode.com/mcpp-res/mtest/releases/download/v0.6.0/mtest-v0.6.0.tar.gz", + }, + sha256 = "eb90f823b4b2c6e4407110cd7c4bac290b683fdf3c1b6b471a58e9e7016b5472", + }, ["0.5.2"] = { url = { GLOBAL = "https://github.com/mcpp-community/mtest/archive/refs/tags/v0.5.2.tar.gz", From 4586e704bbc7d1c9922c96d5378baf298d98bc5b Mon Sep 17 00:00:00 2001 From: Sunrisepeak Date: Tue, 10 Nov 2026 21:59:01 +0900 Subject: [PATCH 3/5] ci: measure and validate with mcpp 2026.11.10.1, the floor of openkal-image 0.6.0; CHANGELOG --- .github/workflows/openkal-compat.yml | 2 +- .github/workflows/xpkgindex-update.yml | 2 +- CHANGELOG.md | 10 ++++++++++ tests/openkal/pins.toml | 4 +++- 4 files changed, 15 insertions(+), 3 deletions(-) diff --git a/.github/workflows/openkal-compat.yml b/.github/workflows/openkal-compat.yml index a8e619e1..c860ab6a 100644 --- a/.github/workflows/openkal-compat.yml +++ b/.github/workflows/openkal-compat.yml @@ -42,7 +42,7 @@ env: # run if this drifts from pins.toml. See the comment beside `mcpp` in # pins.toml for why this pin, not just validate.yml's, is gated by the # index floor. - MCPP_VERSION: "2026.11.9.1" + MCPP_VERSION: "2026.11.10.1" # CROSS-VALIDATION BEFORE A RELEASE, NOT AFTER IT. # # Empty in an ordinary run, so this measurement keeps using the RELEASED diff --git a/.github/workflows/xpkgindex-update.yml b/.github/workflows/xpkgindex-update.yml index 049b6f83..c98d39fc 100644 --- a/.github/workflows/xpkgindex-update.yml +++ b/.github/workflows/xpkgindex-update.yml @@ -25,7 +25,7 @@ concurrency: env: PYTHONUTF8: '1' - MCPP_VERSION: '2026.11.9.1' + MCPP_VERSION: '2026.11.10.1' # CROSS-VALIDATION BEFORE A RELEASE: a candidate that needs an mcpp newer # than the pin (its package states the floor) is built with mcpp built from # this branch of mcpp-community/mcpp, as openkal-compat.yml measures with it. diff --git a/CHANGELOG.md b/CHANGELOG.md index 33857922..e94ad2d0 100644 --- a/CHANGELOG.md +++ b/CHANGELOG.md @@ -15,6 +15,9 @@ ### Chore +- **CI 的 mcpp 由 2026.11.9.1 改为 2026.11.10.1**(xpkgindex-update、openkal-compat 与 `tests/openkal/pins.toml`),以满足 + openkal-image 0.6.0 的版本下限。 + - **CI 的 mcpp 由 2026.11.7.2 改为 2026.11.9.1**(xpkgindex-update、openkal-compat 与 `tests/openkal/pins.toml`),以满足 openkal-platform 0.24.5 的版本下限。 @@ -25,6 +28,13 @@ ### Added +- **openkal-freebsd 0.1.0(新包)、openkal-musl 0.29.1、openkal-llvm-runtime 0.20.1、openkal-image 0.6.0(openkal-run、 + openkal-ld、openkal-bind、openkal-tools)、mtest 0.6.0(mcpplibs.mtest、.capi、.gtest、.manifest),一次变更。** + openkal-freebsd 在 FreeBSD 的系统调用接口上实现 openkal,可与系统 C 库并存(hosted),也可置于 openkal-musl 之下 + (`standalone`);openkal-musl 与 openkal-llvm-runtime 增加 `x86_64-freebsd-musl` 与 `aarch64-freebsd-musl` 两行。 + openkal-run 只绑定其实现提供的接口(mcpp 2026.11.10.1 的 `MCPP_KERNEL_ABI_INTERFACES`)。mtest 0.6.0 实现 mcpp 测试 + 规范中每个用例的检查计数、输出与测试会话,并在入口中声明。 + - **openkal-posix 0.1.0。** 写在 POSIX C 库之上的 openkal 实现,为没有自身实现的系统服务;提供十五个接口(net、datagram、 prof、debug 不提供,名字不定义);声明 `requires = ["mcpp:c-abi"]`。新增成员 `tests/examples/openkal-posix`(Linux、macOS)。 - **openkal-musl 0.29.0 与 openkal-llvm-runtime 0.20.0,一次变更。** musl 的 `execvp`、`execvpe`、`execlp` 与 `posix_spawnp` diff --git a/tests/openkal/pins.toml b/tests/openkal/pins.toml index f4fe1f08..59e2811f 100644 --- a/tests/openkal/pins.toml +++ b/tests/openkal/pins.toml @@ -18,6 +18,8 @@ toolchain = "llvm@22.1.8" # index requires mcpp >= 2026.9.18.1 but this is mcpp 2026.9.17.3 [E0006]" # before a single line of the member's own source is read. # +# 2026-11-10: measurement engine 2026.11.10.1 (openkal-image 0.6.0 states mcpp >= +# 2026.11.10.1) matches all CI workflows. # 2026-11-09: measurement engine 2026.11.9.1 (targets and providers; openkal-platform # 0.24.5 states mcpp >= 2026.11.9.1) matches all CI workflows. # 2026-11-08: measurement engine 2026.11.7.2 (the built-in platform is one @@ -153,7 +155,7 @@ toolchain = "llvm@22.1.8" # openkal-musl 0.16.0 and openkal-llvm-runtime 0.12.0), because a pin that # moves onto an unreachable or divergent asset fails every member at once and # reports it as a compatibility result. -mcpp = "2026.11.9.1" +mcpp = "2026.11.10.1" # The Windows target is named for the C environment the graph presents there, # which is musl's (openkal-musl declares `[c-abi] presents = "posix"`), not From 145ba20d3f7978e5339643e4119dc2a84220eb99 Mon Sep 17 00:00:00 2001 From: Sunrisepeak Date: Tue, 10 Nov 2026 23:00:28 +0900 Subject: [PATCH 4/5] openkal-musl 0.29.2: openkal-ld ^0.6.0 --- pkgs/o/openkal-musl.lua | 23 +++++++++++++++++++++++ 1 file changed, 23 insertions(+) diff --git a/pkgs/o/openkal-musl.lua b/pkgs/o/openkal-musl.lua index adc54fd6..d609d43a 100644 --- a/pkgs/o/openkal-musl.lua +++ b/pkgs/o/openkal-musl.lua @@ -68,6 +68,8 @@ -- 0.29.1 adds FreeBSD: the rows x86_64-freebsd-musl and aarch64-freebsd-musl, -- over openkal-freebsd's standalone arrangement, which the package's manifest -- names under `cfg(os = "freebsd")`. No other row changed. +-- +-- 0.29.2 places further images with openkal-ld ^0.6.0 (openkal-image 0.6.0). package = { spec = "1", namespace = "mcpplibs", @@ -79,6 +81,13 @@ package = { xpm = { linux = { + ["0.29.2"] = { + url = { + GLOBAL = "https://github.com/mcpplibs/openkal-musl/archive/refs/tags/0.29.2.tar.gz", + CN = "https://gitcode.com/mcpp-res/openkal-musl/releases/download/0.29.2/openkal-musl-0.29.2.tar.gz", + }, + sha256 = "c0961da4912b8e87b4564710b395bdf2e5a0bbf7fd32c4cbf85945dc95aad6d3", + }, ["0.29.1"] = { url = { GLOBAL = "https://github.com/mcpplibs/openkal-musl/archive/refs/tags/0.29.1.tar.gz", @@ -529,6 +538,13 @@ package = { }, }, macosx = { + ["0.29.2"] = { + url = { + GLOBAL = "https://github.com/mcpplibs/openkal-musl/archive/refs/tags/0.29.2.tar.gz", + CN = "https://gitcode.com/mcpp-res/openkal-musl/releases/download/0.29.2/openkal-musl-0.29.2.tar.gz", + }, + sha256 = "c0961da4912b8e87b4564710b395bdf2e5a0bbf7fd32c4cbf85945dc95aad6d3", + }, ["0.29.1"] = { url = { GLOBAL = "https://github.com/mcpplibs/openkal-musl/archive/refs/tags/0.29.1.tar.gz", @@ -979,6 +995,13 @@ package = { }, }, windows = { + ["0.29.2"] = { + url = { + GLOBAL = "https://github.com/mcpplibs/openkal-musl/archive/refs/tags/0.29.2.tar.gz", + CN = "https://gitcode.com/mcpp-res/openkal-musl/releases/download/0.29.2/openkal-musl-0.29.2.tar.gz", + }, + sha256 = "c0961da4912b8e87b4564710b395bdf2e5a0bbf7fd32c4cbf85945dc95aad6d3", + }, ["0.29.1"] = { url = { GLOBAL = "https://github.com/mcpplibs/openkal-musl/archive/refs/tags/0.29.1.tar.gz", From 2e40ee4a318afc0eebc1e2ff1261c00e1efe0f4d Mon Sep 17 00:00:00 2001 From: Sunrisepeak Date: Tue, 10 Nov 2026 23:29:12 +0900 Subject: [PATCH 5/5] openkal-image 0.6.1: openkal-run's default on FreeBSD is openkal-freebsd --- CHANGELOG.md | 5 +++-- pkgs/o/openkal-bind.lua | 21 +++++++++++++++++++++ pkgs/o/openkal-ld.lua | 21 +++++++++++++++++++++ pkgs/o/openkal-run.lua | 23 ++++++++++++++++++++++- pkgs/o/openkal-tools.lua | 21 +++++++++++++++++++++ 5 files changed, 88 insertions(+), 3 deletions(-) diff --git a/CHANGELOG.md b/CHANGELOG.md index e94ad2d0..63390099 100644 --- a/CHANGELOG.md +++ b/CHANGELOG.md @@ -28,11 +28,12 @@ ### Added -- **openkal-freebsd 0.1.0(新包)、openkal-musl 0.29.1、openkal-llvm-runtime 0.20.1、openkal-image 0.6.0(openkal-run、 +- **openkal-freebsd 0.1.0(新包)、openkal-musl 0.29.1 与 0.29.2、openkal-llvm-runtime 0.20.1、openkal-image 0.6.0 与 0.6.1(openkal-run、 openkal-ld、openkal-bind、openkal-tools)、mtest 0.6.0(mcpplibs.mtest、.capi、.gtest、.manifest),一次变更。** openkal-freebsd 在 FreeBSD 的系统调用接口上实现 openkal,可与系统 C 库并存(hosted),也可置于 openkal-musl 之下 (`standalone`);openkal-musl 与 openkal-llvm-runtime 增加 `x86_64-freebsd-musl` 与 `aarch64-freebsd-musl` 两行。 - openkal-run 只绑定其实现提供的接口(mcpp 2026.11.10.1 的 `MCPP_KERNEL_ABI_INTERFACES`)。mtest 0.6.0 实现 mcpp 测试 + openkal-run 只绑定其实现提供的接口(mcpp 2026.11.10.1 的 `MCPP_KERNEL_ABI_INTERFACES`),0.6.1 在 FreeBSD 上以 + openkal-freebsd 为缺省实现;openkal-musl 0.29.2 改用 openkal-ld ^0.6.0。mtest 0.6.0 实现 mcpp 测试 规范中每个用例的检查计数、输出与测试会话,并在入口中声明。 - **openkal-posix 0.1.0。** 写在 POSIX C 库之上的 openkal 实现,为没有自身实现的系统服务;提供十五个接口(net、datagram、 diff --git a/pkgs/o/openkal-bind.lua b/pkgs/o/openkal-bind.lua index 27aa1cef..1e7af01e 100644 --- a/pkgs/o/openkal-bind.lua +++ b/pkgs/o/openkal-bind.lua @@ -25,6 +25,13 @@ package = { xpm = { linux = { + ["0.6.1"] = { + url = { + GLOBAL = "https://github.com/mcpplibs/openkal-image/archive/refs/tags/0.6.1.tar.gz", + CN = "https://gitcode.com/mcpp-res/openkal-image/releases/download/0.6.1/openkal-image-0.6.1.tar.gz", + }, + sha256 = "36b792acadf4423aa5b4a90a020bb4b3dddd085ae0239f7860d12a02db0bfd99", + }, ["0.6.0"] = { url = { GLOBAL = "https://github.com/mcpplibs/openkal-image/archive/refs/tags/0.6.0.tar.gz", @@ -202,6 +209,13 @@ package = { }, }, macosx = { + ["0.6.1"] = { + url = { + GLOBAL = "https://github.com/mcpplibs/openkal-image/archive/refs/tags/0.6.1.tar.gz", + CN = "https://gitcode.com/mcpp-res/openkal-image/releases/download/0.6.1/openkal-image-0.6.1.tar.gz", + }, + sha256 = "36b792acadf4423aa5b4a90a020bb4b3dddd085ae0239f7860d12a02db0bfd99", + }, ["0.6.0"] = { url = { GLOBAL = "https://github.com/mcpplibs/openkal-image/archive/refs/tags/0.6.0.tar.gz", @@ -379,6 +393,13 @@ package = { }, }, windows = { + ["0.6.1"] = { + url = { + GLOBAL = "https://github.com/mcpplibs/openkal-image/archive/refs/tags/0.6.1.tar.gz", + CN = "https://gitcode.com/mcpp-res/openkal-image/releases/download/0.6.1/openkal-image-0.6.1.tar.gz", + }, + sha256 = "36b792acadf4423aa5b4a90a020bb4b3dddd085ae0239f7860d12a02db0bfd99", + }, ["0.6.0"] = { url = { GLOBAL = "https://github.com/mcpplibs/openkal-image/archive/refs/tags/0.6.0.tar.gz", diff --git a/pkgs/o/openkal-ld.lua b/pkgs/o/openkal-ld.lua index 7a4740e2..80ad8c7f 100644 --- a/pkgs/o/openkal-ld.lua +++ b/pkgs/o/openkal-ld.lua @@ -18,6 +18,13 @@ package = { xpm = { linux = { + ["0.6.1"] = { + url = { + GLOBAL = "https://github.com/mcpplibs/openkal-image/archive/refs/tags/0.6.1.tar.gz", + CN = "https://gitcode.com/mcpp-res/openkal-image/releases/download/0.6.1/openkal-image-0.6.1.tar.gz", + }, + sha256 = "36b792acadf4423aa5b4a90a020bb4b3dddd085ae0239f7860d12a02db0bfd99", + }, ["0.6.0"] = { url = { GLOBAL = "https://github.com/mcpplibs/openkal-image/archive/refs/tags/0.6.0.tar.gz", @@ -209,6 +216,13 @@ package = { }, }, macosx = { + ["0.6.1"] = { + url = { + GLOBAL = "https://github.com/mcpplibs/openkal-image/archive/refs/tags/0.6.1.tar.gz", + CN = "https://gitcode.com/mcpp-res/openkal-image/releases/download/0.6.1/openkal-image-0.6.1.tar.gz", + }, + sha256 = "36b792acadf4423aa5b4a90a020bb4b3dddd085ae0239f7860d12a02db0bfd99", + }, ["0.6.0"] = { url = { GLOBAL = "https://github.com/mcpplibs/openkal-image/archive/refs/tags/0.6.0.tar.gz", @@ -400,6 +414,13 @@ package = { }, }, windows = { + ["0.6.1"] = { + url = { + GLOBAL = "https://github.com/mcpplibs/openkal-image/archive/refs/tags/0.6.1.tar.gz", + CN = "https://gitcode.com/mcpp-res/openkal-image/releases/download/0.6.1/openkal-image-0.6.1.tar.gz", + }, + sha256 = "36b792acadf4423aa5b4a90a020bb4b3dddd085ae0239f7860d12a02db0bfd99", + }, ["0.6.0"] = { url = { GLOBAL = "https://github.com/mcpplibs/openkal-image/archive/refs/tags/0.6.0.tar.gz", diff --git a/pkgs/o/openkal-run.lua b/pkgs/o/openkal-run.lua index 6e4c32f6..635bdf8d 100644 --- a/pkgs/o/openkal-run.lua +++ b/pkgs/o/openkal-run.lua @@ -10,7 +10,7 @@ -- -- 0.6.0 binds only the interfaces its implementation provides, as mcpp -- 2026.11.10.1 states them to its build program (MCPP_KERNEL_ABI_INTERFACES), --- and needs that release. +-- and needs that release. 0.6.1 names openkal-freebsd as the default on FreeBSD. package = { spec = "1", namespace = "mcpplibs", @@ -22,6 +22,13 @@ package = { xpm = { linux = { + ["0.6.1"] = { + url = { + GLOBAL = "https://github.com/mcpplibs/openkal-image/archive/refs/tags/0.6.1.tar.gz", + CN = "https://gitcode.com/mcpp-res/openkal-image/releases/download/0.6.1/openkal-image-0.6.1.tar.gz", + }, + sha256 = "36b792acadf4423aa5b4a90a020bb4b3dddd085ae0239f7860d12a02db0bfd99", + }, ["0.6.0"] = { url = { GLOBAL = "https://github.com/mcpplibs/openkal-image/archive/refs/tags/0.6.0.tar.gz", @@ -213,6 +220,13 @@ package = { }, }, macosx = { + ["0.6.1"] = { + url = { + GLOBAL = "https://github.com/mcpplibs/openkal-image/archive/refs/tags/0.6.1.tar.gz", + CN = "https://gitcode.com/mcpp-res/openkal-image/releases/download/0.6.1/openkal-image-0.6.1.tar.gz", + }, + sha256 = "36b792acadf4423aa5b4a90a020bb4b3dddd085ae0239f7860d12a02db0bfd99", + }, ["0.6.0"] = { url = { GLOBAL = "https://github.com/mcpplibs/openkal-image/archive/refs/tags/0.6.0.tar.gz", @@ -404,6 +418,13 @@ package = { }, }, windows = { + ["0.6.1"] = { + url = { + GLOBAL = "https://github.com/mcpplibs/openkal-image/archive/refs/tags/0.6.1.tar.gz", + CN = "https://gitcode.com/mcpp-res/openkal-image/releases/download/0.6.1/openkal-image-0.6.1.tar.gz", + }, + sha256 = "36b792acadf4423aa5b4a90a020bb4b3dddd085ae0239f7860d12a02db0bfd99", + }, ["0.6.0"] = { url = { GLOBAL = "https://github.com/mcpplibs/openkal-image/archive/refs/tags/0.6.0.tar.gz", diff --git a/pkgs/o/openkal-tools.lua b/pkgs/o/openkal-tools.lua index b2c50842..8c95b718 100644 --- a/pkgs/o/openkal-tools.lua +++ b/pkgs/o/openkal-tools.lua @@ -20,6 +20,13 @@ package = { xpm = { linux = { + ["0.6.1"] = { + url = { + GLOBAL = "https://github.com/mcpplibs/openkal-image/archive/refs/tags/0.6.1.tar.gz", + CN = "https://gitcode.com/mcpp-res/openkal-image/releases/download/0.6.1/openkal-image-0.6.1.tar.gz", + }, + sha256 = "36b792acadf4423aa5b4a90a020bb4b3dddd085ae0239f7860d12a02db0bfd99", + }, ["0.6.0"] = { url = { GLOBAL = "https://github.com/mcpplibs/openkal-image/archive/refs/tags/0.6.0.tar.gz", @@ -211,6 +218,13 @@ package = { }, }, macosx = { + ["0.6.1"] = { + url = { + GLOBAL = "https://github.com/mcpplibs/openkal-image/archive/refs/tags/0.6.1.tar.gz", + CN = "https://gitcode.com/mcpp-res/openkal-image/releases/download/0.6.1/openkal-image-0.6.1.tar.gz", + }, + sha256 = "36b792acadf4423aa5b4a90a020bb4b3dddd085ae0239f7860d12a02db0bfd99", + }, ["0.6.0"] = { url = { GLOBAL = "https://github.com/mcpplibs/openkal-image/archive/refs/tags/0.6.0.tar.gz", @@ -402,6 +416,13 @@ package = { }, }, windows = { + ["0.6.1"] = { + url = { + GLOBAL = "https://github.com/mcpplibs/openkal-image/archive/refs/tags/0.6.1.tar.gz", + CN = "https://gitcode.com/mcpp-res/openkal-image/releases/download/0.6.1/openkal-image-0.6.1.tar.gz", + }, + sha256 = "36b792acadf4423aa5b4a90a020bb4b3dddd085ae0239f7860d12a02db0bfd99", + }, ["0.6.0"] = { url = { GLOBAL = "https://github.com/mcpplibs/openkal-image/archive/refs/tags/0.6.0.tar.gz",