Skip to content

Commit 89c2566

Browse files
deps: 跟随 openkal 的开发线 (#1)
* deps: 改用 git + 分支跟随 openkal 的开发线 同时把 origin 换成 SSH:它此前指向 HTTPS,而这个账号在那条路径上没有写权限 —— 报出来的是 403,读起来像仓库不存在。 * deps: 例子也要跟着这条线 例子仍用版本号依赖 openkal,而仓库本身改成了 git 依赖 —— 两种形式不能并存, CI 报的是 'requested as both a version dep and a git dep'。 一次改依赖形式,要改的是**图里的每一处**,而例子也在图里。 * feat: declare the kernel-abi layer this package supplies mcpp resolves the target side per layer after the dependency graph is known, and reads which layer a package fills from its capabilities. Declaring `mcpp:kernel-abi=openkal` states that this package implements the platform interface a C library sits on, and that it answers to the name `openkal`. The engine knows the three layer names and none of the implementations that fill them, so nothing about openkal appears in mcpp for this to work. Claude-Session: https://claude.ai/code/session_01Q4ucduLuSsETHYJ1RkGVVD * chore: 0.1.1 The manifest states a capability the previous release did not, and the index serves published tarballs rather than branches. A consumer resolving through the index would otherwise get content in which this package declares no layer, and the engine would resolve its target side to the compiler payload. Claude-Session: https://claude.ai/code/session_01Q4ucduLuSsETHYJ1RkGVVD --------- Co-authored-by: speak-agent <x.d2learn.org@gmail.com>
1 parent 6fbd9db commit 89c2566

2 files changed

Lines changed: 13 additions & 3 deletions

File tree

examples/hello/mcpp.toml

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -11,5 +11,5 @@ target = "x86_64-windows-gnu"
1111
ldflags = ["-nostdlib", "-Wl,--subsystem,10", "-Wl,-e,efi_main"]
1212

1313
[dependencies]
14-
openkal = "0.5.1"
14+
openkal = { git = "https://github.com/mcpplibs/openkal", branch = "feat/openkal-closure" }
1515
openkal-uefi = { path = "../.." }

mcpp.toml

Lines changed: 12 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -15,14 +15,24 @@
1515
[package]
1616
namespace = "mcpplibs"
1717
name = "openkal-uefi"
18-
version = "0.1.0"
18+
version = "0.1.1"
1919
description = "An implementation of openkal on UEFI Boot Services, for applications the firmware loads before an operating system exists"
2020
license = "Apache-2.0"
21+
22+
# The layer this package supplies, in the vocabulary the engine resolves.
23+
#
24+
# `mcpp:kernel-abi` names the platform interface a C library sits on. On a
25+
# traditional stack that seam is unnamed — a C library issues system calls or
26+
# calls the platform's own entry points directly — and naming it is what lets
27+
# one C library sit above several platforms. `=openkal` is the interface this
28+
# package answers to; several packages answer to it and the engine knows none
29+
# of them by name.
30+
provides = ["mcpp:kernel-abi=openkal"]
2131
authors = ["mcpplibs"]
2232
repo = "https://github.com/mcpplibs/openkal-uefi"
2333

2434
[dependencies]
25-
openkal = "0.5.1"
35+
openkal = { git = "https://github.com/mcpplibs/openkal", branch = "feat/openkal-closure" }
2636

2737
[build]
2838
flags = [

0 commit comments

Comments
 (0)