From 3771f35f51c38f86d7ba517f093399c77e0f77e3 Mon Sep 17 00:00:00 2001 From: Sunrisepeak Date: Sun, 15 Nov 2026 05:18:10 +0900 Subject: [PATCH 1/2] djgpp-platform 0.1.0 (new): the i586-dos-djgpp row, DJGPP's GCC, DOSBox Staging through dirun GLOBAL is the tag's source archive and CN its copy at gitcode.com/mcpp-res/djgpp-platform (sha256 f25356ca...). --- CHANGELOG.md | 7 +++++ pkgs/d/djgpp-platform.lua | 57 +++++++++++++++++++++++++++++++++++++++ 2 files changed, 64 insertions(+) create mode 100644 pkgs/d/djgpp-platform.lua diff --git a/CHANGELOG.md b/CHANGELOG.md index a36ce448..2222f15d 100644 --- a/CHANGELOG.md +++ b/CHANGELOG.md @@ -7,6 +7,13 @@ ## [Unreleased] +### Added + +- **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", + }, + }, + }, +} From aa6a82859e81ec80326d3702a4e9a3c1d4bec145 Mon Sep 17 00:00:00 2001 From: Sunrisepeak Date: Sun, 15 Nov 2026 06:48:27 +0900 Subject: [PATCH 2/2] openkal-platform 0.28.0 (i686-linux-musl, x86_64-uefi, i686-openkal, i686-dos-musl); the family on openkal 0.25.3 Written by openkal-platform's tools/family_release.py index; every other member of the group is indexed. GLOBAL is the tag's source archive and CN its copy at gitcode.com/mcpp-res/openkal-platform (sha256 94fe7ce6...). --- CHANGELOG.md | 4 ++++ pkgs/o/openkal-platform.lua | 21 +++++++++++++++++++++ 2 files changed, 25 insertions(+) diff --git a/CHANGELOG.md b/CHANGELOG.md index 2222f15d..7d7ecfe1 100644 --- a/CHANGELOG.md +++ b/CHANGELOG.md @@ -9,6 +9,10 @@ ### 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 路线 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",