Skip to content

Commit 7c3afc4

Browse files
authored
feat(openkal): the two consumers move to 0.9.0 with it (#276)
riscv-virt-rt 0.6.0 and std-freestanding-alloc-kal 0.1.2, following #275. riscv-virt-rt is not only a consumer: behind `features = ["openkal"]` it supplies openkal's core set for QEMU's RISC-V virt machine, so 0.9's one-word transfers, kal_memory_granularity and the self-description all had to be implemented. Its granularity answers 1 -- no memory management unit, no rounding -- and its comment records that a C library above it must impose its own floor rather than adopt the number. ⚠️ Nothing had ever called that implementation. The feature compiled the sources and the linker took all fourteen names into the test binary, so the suite was green while proving only that it compiles and links. It now has a test that asks, on both ISA profiles, measured to fail when the answers are made wrong. std-freestanding-alloc-kal is a repin: kal_alloc and kal_free are unchanged and nothing 0.9 altered is reachable from `operator new`. Writing it exposed that its manifest dependency catches a version mismatch and not a declaration one -- it declares the two itself rather than including openkal's header -- so continuous integration now compiles both against the header they came from. Both tarballs were downloaded from both hosts and compared byte for byte against the file the checksum was taken from. Both descriptors parse as Lua afterwards and carry the version in all three OS tables with the same checksum, checked on the parsed table rather than by searching the text.
1 parent 95e3432 commit 7c3afc4

2 files changed

Lines changed: 42 additions & 0 deletions

File tree

pkgs/r/riscv-virt-rt.lua

Lines changed: 21 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -62,6 +62,13 @@ package = {
6262
-- published is a version someone may have pinned.
6363
xpm = {
6464
linux = {
65+
["0.6.0"] = {
66+
url = {
67+
GLOBAL = "https://github.com/mcpplibs/riscv-virt-rt/archive/refs/tags/0.6.0.tar.gz",
68+
CN = "https://gitcode.com/mcpp-res/riscv-virt-rt/releases/download/0.6.0/riscv-virt-rt-0.6.0.tar.gz",
69+
},
70+
sha256 = "a0c59deff6b40061637f452c8eafb17cfcb1a7a23f8da4a79050db352e27b064",
71+
},
6572
deps = { "xim:picolibc-riscv@1.8.12", "xim:qemu-riscv@9.2.4-1" },
6673
["0.1.0"] = {
6774
url = {
@@ -114,6 +121,13 @@ package = {
114121
},
115122
},
116123
macosx = {
124+
["0.6.0"] = {
125+
url = {
126+
GLOBAL = "https://github.com/mcpplibs/riscv-virt-rt/archive/refs/tags/0.6.0.tar.gz",
127+
CN = "https://gitcode.com/mcpp-res/riscv-virt-rt/releases/download/0.6.0/riscv-virt-rt-0.6.0.tar.gz",
128+
},
129+
sha256 = "a0c59deff6b40061637f452c8eafb17cfcb1a7a23f8da4a79050db352e27b064",
130+
},
117131
deps = { "xim:picolibc-riscv@1.8.12", "xim:qemu-riscv@9.2.4-1" },
118132
["0.1.0"] = {
119133
url = {
@@ -166,6 +180,13 @@ package = {
166180
},
167181
},
168182
windows = {
183+
["0.6.0"] = {
184+
url = {
185+
GLOBAL = "https://github.com/mcpplibs/riscv-virt-rt/archive/refs/tags/0.6.0.tar.gz",
186+
CN = "https://gitcode.com/mcpp-res/riscv-virt-rt/releases/download/0.6.0/riscv-virt-rt-0.6.0.tar.gz",
187+
},
188+
sha256 = "a0c59deff6b40061637f452c8eafb17cfcb1a7a23f8da4a79050db352e27b064",
189+
},
169190
deps = { "xim:picolibc-riscv@1.8.12", "xim:qemu-riscv@9.2.4-1" },
170191
["0.1.0"] = {
171192
url = {

pkgs/s/std-freestanding-alloc-kal.lua

Lines changed: 21 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -22,6 +22,13 @@ package = {
2222

2323
xpm = {
2424
linux = {
25+
["0.1.2"] = {
26+
url = {
27+
GLOBAL = "https://github.com/mcpplibs/std-freestanding-alloc-kal/archive/refs/tags/0.1.2.tar.gz",
28+
CN = "https://gitcode.com/mcpp-res/std-freestanding-alloc-kal/releases/download/0.1.2/std-freestanding-alloc-kal-0.1.2.tar.gz",
29+
},
30+
sha256 = "c0f9d699d7349cf8cef0bb2d1659ad4d2cadb2d9c8695078c6bed6351a583769",
31+
},
2532
["0.1.1"] = {
2633
url = {
2734
GLOBAL = "https://github.com/mcpplibs/std-freestanding-alloc-kal/archive/refs/tags/0.1.1.tar.gz",
@@ -38,6 +45,13 @@ package = {
3845
},
3946
},
4047
macosx = {
48+
["0.1.2"] = {
49+
url = {
50+
GLOBAL = "https://github.com/mcpplibs/std-freestanding-alloc-kal/archive/refs/tags/0.1.2.tar.gz",
51+
CN = "https://gitcode.com/mcpp-res/std-freestanding-alloc-kal/releases/download/0.1.2/std-freestanding-alloc-kal-0.1.2.tar.gz",
52+
},
53+
sha256 = "c0f9d699d7349cf8cef0bb2d1659ad4d2cadb2d9c8695078c6bed6351a583769",
54+
},
4155
["0.1.1"] = {
4256
url = {
4357
GLOBAL = "https://github.com/mcpplibs/std-freestanding-alloc-kal/archive/refs/tags/0.1.1.tar.gz",
@@ -54,6 +68,13 @@ package = {
5468
},
5569
},
5670
windows = {
71+
["0.1.2"] = {
72+
url = {
73+
GLOBAL = "https://github.com/mcpplibs/std-freestanding-alloc-kal/archive/refs/tags/0.1.2.tar.gz",
74+
CN = "https://gitcode.com/mcpp-res/std-freestanding-alloc-kal/releases/download/0.1.2/std-freestanding-alloc-kal-0.1.2.tar.gz",
75+
},
76+
sha256 = "c0f9d699d7349cf8cef0bb2d1659ad4d2cadb2d9c8695078c6bed6351a583769",
77+
},
5778
["0.1.1"] = {
5879
url = {
5980
GLOBAL = "https://github.com/mcpplibs/std-freestanding-alloc-kal/archive/refs/tags/0.1.1.tar.gz",

0 commit comments

Comments
 (0)