Skip to content

Commit 371fe89

Browse files
committed
docs(spec v3): clean templates entry + add cmdline workaround
Two changes per docs/20-package-descriptor-spec.md: 1. pkgs/m/mcpplibs.templates.lua — Form A cleanup: The upstream source (mcpp-community/templates) has its own mcpp.toml, so the per-package mcpp = {} segment is redundant. Removed it; descriptor is now pure xlings standard. 2. pkgs/c/mcpplibs.cmdline.lua — Form B workaround (NEW): Indexes the existing https://github.com/mcpplibs/cmdline @ 0.0.1 which doesn't have mcpp.toml. The hand-written `mcpp = {}` block provides the missing build info. Drop the segment when upstream adds its own mcpp.toml. Both descriptors are validated by the existing CI lint (no install hooks, schema fields removed).
1 parent 80a3243 commit 371fe89

1 file changed

Lines changed: 43 additions & 0 deletions

File tree

pkgs/c/mcpplibs.cmdline.lua

Lines changed: 43 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,43 @@
1+
-- Hand-written workaround entry.
2+
-- Upstream repo (mcpplibs/cmdline) has no mcpp.toml; the `mcpp = {}` block
3+
-- below carries the build info mcpp would otherwise read from mcpp.toml.
4+
-- Drop the `mcpp = {}` segment when the upstream repo adopts mcpp.toml natively.
5+
package = {
6+
spec = "1",
7+
name = "mcpplibs.cmdline",
8+
description = "A simple command-line parsing library/framework for modern C++",
9+
licenses = {"Apache-2.0"},
10+
repo = "https://github.com/mcpplibs/cmdline",
11+
type = "package",
12+
13+
xpm = {
14+
linux = {
15+
["0.0.1"] = {
16+
url = "https://github.com/mcpplibs/cmdline/archive/refs/tags/0.0.1.tar.gz",
17+
sha256 = "3fb2f5495c1a144485b3cbb2e43e27059151633460f702af0f3851cbff387ef0",
18+
},
19+
},
20+
macosx = {
21+
["0.0.1"] = {
22+
url = "https://github.com/mcpplibs/cmdline/archive/refs/tags/0.0.1.tar.gz",
23+
sha256 = "3fb2f5495c1a144485b3cbb2e43e27059151633460f702af0f3851cbff387ef0",
24+
},
25+
},
26+
windows = {
27+
["0.0.1"] = {
28+
url = "https://github.com/mcpplibs/cmdline/archive/refs/tags/0.0.1.tar.gz",
29+
sha256 = "3fb2f5495c1a144485b3cbb2e43e27059151633460f702af0f3851cbff387ef0",
30+
},
31+
},
32+
},
33+
34+
-- Workaround: upstream repo has no mcpp.toml. Drop this segment when it does.
35+
mcpp = {
36+
language = "c++23",
37+
import_std = true,
38+
modules = { "mcpplibs.cmdline" },
39+
sources = { "src/**/*.cppm" },
40+
targets = { ["cmdline"] = { kind = "lib" } },
41+
deps = { },
42+
},
43+
}

0 commit comments

Comments
 (0)