diff --git a/CHANGELOG.md b/CHANGELOG.md index a36ce448..7d7ecfe1 100644 --- a/CHANGELOG.md +++ b/CHANGELOG.md @@ -7,6 +7,17 @@ ## [Unreleased] +### Added + +- **openkal-platform 0.28.0。** 增加四行:`i686-linux-musl`(Linux 的 32 位行)、`x86_64-uefi`(openkal-uefi 0.10.0 之上的 UEFI 应用, + OVMF 下由 dirun 运行;ok 映像也可作为被承载程序打包为 UEFI)、`i686-openkal`(i386 的 ok 映像)与 `i686-dos-musl`(openkal-dos 之上的 DOS 程序, + 仅为技术实验)。版本组随 openkal 0.25.3、openkal-macos 0.23.3、openkal-musl 0.29.6、openkal-llvm-runtime 0.20.3 与 openkal-image 0.6.3; + 需要 mcpp 2026.11.14.1(mcpplibs/openkal-platform#31)。 +- **djgpp-platform 0.1.0(新包)。** DJGPP 构建的 32 位 DOS 程序的平台包:行 `i586-dos-djgpp`(COFF 目标文件、`.exe`、ILP32、 + 执行系统 `dos`),其 GCC 由行的 GCC 目标 `i586-pc-msdosdjgpp` 指定(xim 包 `i586-pc-msdosdjgpp-gcc` 12.2.0),运行器为带 + DOSBox Staging 配置的 dirun。仅 C:DJGPP 的 GCC 12.2.0 不支持 C++ 模块的依赖扫描。它与 openkal 的 DOS 路线 + (openkal-platform 的 `i686-dos-musl`,社区默认)并存;需要 mcpp 2026.11.13.1(mcpplibs/djgpp-platform#1)。 + ### Fixed - **openkal 0.25.3。** 一致性套件是独立的 mtest 项目(`tests/cts/mtest.toml`):引擎在套件目录启动程序并把运行记录存入 diff --git a/pkgs/d/djgpp-platform.lua b/pkgs/d/djgpp-platform.lua new file mode 100644 index 00000000..c19a5311 --- /dev/null +++ b/pkgs/d/djgpp-platform.lua @@ -0,0 +1,57 @@ +-- djgpp-platform --- 32-bit DOS programs built by DJGPP (mcpp SPEC-013). +-- +-- A data package mcpp reads: the row `i586-dos-djgpp' (COFF objects, `.exe', +-- ILP32, the execution system `dos'), its GCC named by the row's GCC target +-- `i586-pc-msdosdjgpp' (the xim package `i586-pc-msdosdjgpp-gcc'), and its +-- runner, dirun with DOSBox Staging's profile. C only: DJGPP's GCC 12.2.0 has +-- no dependency scanning for C++ modules. It stands beside the openkal route +-- to DOS (openkal-platform's `i686-dos-musl'), which is the community default. +-- A project selects it for the row: +-- [target.i586-dos-djgpp] platform = "djgpp-platform@0.1.0" +-- Read by mcpp 2026.11.13.1 and later (the package states the floor). +package = { + spec = "1", + namespace = "mcpplibs", + name = "djgpp-platform", + description = "32-bit DOS programs built by DJGPP: the i586-dos-djgpp row, its GCC payload, and DOSBox Staging as its runner", + licenses = {"Apache-2.0"}, + repo = "https://github.com/mcpplibs/djgpp-platform", + type = "package", + + extensions = { + autoupdate = { + tag = "${version}", + url = "https://github.com/mcpplibs/djgpp-platform/archive/refs/tags/${tag}.tar.gz", + }, + }, + + xpm = { + linux = { + ["0.1.0"] = { + url = { + GLOBAL = "https://github.com/mcpplibs/djgpp-platform/archive/refs/tags/0.1.0.tar.gz", + CN = "https://gitcode.com/mcpp-res/djgpp-platform/releases/download/0.1.0/djgpp-platform-0.1.0.tar.gz", + }, + sha256 = "f25356cae01bbd8da40a1e37030365e230b1b1f30fbf2b696203ce663e86dbfa", + }, + }, + macosx = { + ["0.1.0"] = { + url = { + GLOBAL = "https://github.com/mcpplibs/djgpp-platform/archive/refs/tags/0.1.0.tar.gz", + CN = "https://gitcode.com/mcpp-res/djgpp-platform/releases/download/0.1.0/djgpp-platform-0.1.0.tar.gz", + }, + sha256 = "f25356cae01bbd8da40a1e37030365e230b1b1f30fbf2b696203ce663e86dbfa", + }, + }, + windows = { + ["0.1.0"] = { + url = { + GLOBAL = "https://github.com/mcpplibs/djgpp-platform/archive/refs/tags/0.1.0.tar.gz", + CN = "https://gitcode.com/mcpp-res/djgpp-platform/releases/download/0.1.0/djgpp-platform-0.1.0.tar.gz", + }, + sha256 = "f25356cae01bbd8da40a1e37030365e230b1b1f30fbf2b696203ce663e86dbfa", + }, + }, + }, +} diff --git a/pkgs/o/openkal-platform.lua b/pkgs/o/openkal-platform.lua index b067bfb6..e05eff71 100644 --- a/pkgs/o/openkal-platform.lua +++ b/pkgs/o/openkal-platform.lua @@ -26,6 +26,13 @@ package = { xpm = { linux = { + ["0.28.0"] = { + url = { + GLOBAL = "https://github.com/mcpplibs/openkal-platform/archive/refs/tags/0.28.0.tar.gz", + CN = "https://gitcode.com/mcpp-res/openkal-platform/releases/download/0.28.0/openkal-platform-0.28.0.tar.gz", + }, + sha256 = "94fe7ce6d60b76863fc44afe6eafbc671b01798bf73f726f7ecf93859e62b595", + }, ["0.27.1"] = { url = { GLOBAL = "https://github.com/mcpplibs/openkal-platform/archive/refs/tags/0.27.1.tar.gz", @@ -238,6 +245,13 @@ package = { }, }, macosx = { + ["0.28.0"] = { + url = { + GLOBAL = "https://github.com/mcpplibs/openkal-platform/archive/refs/tags/0.28.0.tar.gz", + CN = "https://gitcode.com/mcpp-res/openkal-platform/releases/download/0.28.0/openkal-platform-0.28.0.tar.gz", + }, + sha256 = "94fe7ce6d60b76863fc44afe6eafbc671b01798bf73f726f7ecf93859e62b595", + }, ["0.27.1"] = { url = { GLOBAL = "https://github.com/mcpplibs/openkal-platform/archive/refs/tags/0.27.1.tar.gz", @@ -450,6 +464,13 @@ package = { }, }, windows = { + ["0.28.0"] = { + url = { + GLOBAL = "https://github.com/mcpplibs/openkal-platform/archive/refs/tags/0.28.0.tar.gz", + CN = "https://gitcode.com/mcpp-res/openkal-platform/releases/download/0.28.0/openkal-platform-0.28.0.tar.gz", + }, + sha256 = "94fe7ce6d60b76863fc44afe6eafbc671b01798bf73f726f7ecf93859e62b595", + }, ["0.27.1"] = { url = { GLOBAL = "https://github.com/mcpplibs/openkal-platform/archive/refs/tags/0.27.1.tar.gz",