Skip to content
Merged
Show file tree
Hide file tree
Changes from all commits
Commits
File filter

Filter by extension

Filter by extension

Conversations
Failed to load comments.
Loading
Jump to
Jump to file
Failed to load files.
Loading
Diff view
Diff view
21 changes: 21 additions & 0 deletions pkgs/r/riscv-virt-rt.lua
Original file line number Diff line number Diff line change
Expand Up @@ -52,6 +52,13 @@ package = {
},
sha256 = "71fc43daa4903d4f3037c204bd2b3be9aea56371b123a4529cc8c0c8c9b7f525",
},
["0.4.0"] = {
url = {
GLOBAL = "https://github.com/mcpplibs/riscv-virt-rt/archive/refs/tags/0.4.0.tar.gz",
CN = "https://gitcode.com/mcpp-res/riscv-virt-rt/releases/download/0.4.0/riscv-virt-rt-0.4.0.tar.gz",
},
sha256 = "2eef43aefb00905236a72d49924129c379e9d085fafdc4dd5c868e8a52b0414e",
},
},
macosx = {
deps = { "xim:qemu-riscv@9.2.4-1" },
Expand All @@ -76,6 +83,13 @@ package = {
},
sha256 = "71fc43daa4903d4f3037c204bd2b3be9aea56371b123a4529cc8c0c8c9b7f525",
},
["0.4.0"] = {
url = {
GLOBAL = "https://github.com/mcpplibs/riscv-virt-rt/archive/refs/tags/0.4.0.tar.gz",
CN = "https://gitcode.com/mcpp-res/riscv-virt-rt/releases/download/0.4.0/riscv-virt-rt-0.4.0.tar.gz",
},
sha256 = "2eef43aefb00905236a72d49924129c379e9d085fafdc4dd5c868e8a52b0414e",
},
},
windows = {
deps = { "xim:qemu-riscv@9.2.4-1" },
Expand All @@ -100,6 +114,13 @@ package = {
},
sha256 = "71fc43daa4903d4f3037c204bd2b3be9aea56371b123a4529cc8c0c8c9b7f525",
},
["0.4.0"] = {
url = {
GLOBAL = "https://github.com/mcpplibs/riscv-virt-rt/archive/refs/tags/0.4.0.tar.gz",
CN = "https://gitcode.com/mcpp-res/riscv-virt-rt/releases/download/0.4.0/riscv-virt-rt-0.4.0.tar.gz",
},
sha256 = "2eef43aefb00905236a72d49924129c379e9d085fafdc4dd5c868e8a52b0414e",
},
},
},

Expand Down
55 changes: 55 additions & 0 deletions pkgs/s/std-freestanding-alloc-kal.lua
Original file line number Diff line number Diff line change
@@ -0,0 +1,55 @@
-- std-freestanding-alloc-kal — one of the allocator implementations the
-- freestanding subset can bind.
--
-- Form A because mcpp looks for a package manifest at the package ROOT, and
-- Form B would leave it one level down inside the tarball's wrap directory.
--
-- ⚠️ NO `deps`. The package depends on `openkal` for the C declarations it is
-- written against, and that is an mcpp dependency declared in its own
-- manifest — not an xim payload. Nothing here needs installing.
--
-- The consumer does not name this package. `std-freestanding`'s `alloc-kal`
-- feature pulls it, because the feature both states the requirement and brings
-- an implementation; see that package's `[feature-deps]`.
package = {
spec = "1",
namespace = "mcpplibs",
name = "std-freestanding-alloc-kal",
description = "The replaceable allocation functions for the freestanding subset, forwarded to openkal",
licenses = {"Apache-2.0"},
repo = "https://github.com/mcpplibs/std-freestanding-alloc-kal",
type = "package",

xpm = {
linux = {
["0.1.0"] = {
url = {
GLOBAL = "https://github.com/mcpplibs/std-freestanding-alloc-kal/archive/refs/tags/0.1.0.tar.gz",
CN = "https://gitcode.com/mcpp-res/std-freestanding-alloc-kal/releases/download/0.1.0/std-freestanding-alloc-kal-0.1.0.tar.gz",
},
sha256 = "6d3c746e5013655464fd47de54868e06c81a3563046d6bff58c9cb28e689e899",
},
},
macosx = {
["0.1.0"] = {
url = {
GLOBAL = "https://github.com/mcpplibs/std-freestanding-alloc-kal/archive/refs/tags/0.1.0.tar.gz",
CN = "https://gitcode.com/mcpp-res/std-freestanding-alloc-kal/releases/download/0.1.0/std-freestanding-alloc-kal-0.1.0.tar.gz",
},
sha256 = "6d3c746e5013655464fd47de54868e06c81a3563046d6bff58c9cb28e689e899",
},
},
windows = {
["0.1.0"] = {
url = {
GLOBAL = "https://github.com/mcpplibs/std-freestanding-alloc-kal/archive/refs/tags/0.1.0.tar.gz",
CN = "https://gitcode.com/mcpp-res/std-freestanding-alloc-kal/releases/download/0.1.0/std-freestanding-alloc-kal-0.1.0.tar.gz",
},
sha256 = "6d3c746e5013655464fd47de54868e06c81a3563046d6bff58c9cb28e689e899",
},
},
},

-- The package's own manifest, inside the tarball's wrap directory.
mcpp = "*/mcpp.toml",
}
50 changes: 50 additions & 0 deletions pkgs/s/std-freestanding-alloc-libc.lua
Original file line number Diff line number Diff line change
@@ -0,0 +1,50 @@
-- std-freestanding-alloc-libc — the sibling of std-freestanding-alloc-kal,
-- forwarding to the target's C library instead of to openkal.
--
-- ⚠️ Exactly one of the two may be in a graph. Both provide the
-- `freestanding-allocator` capability, and `operator new` is a whole-program
-- singleton: the resolver reports two providers by name, which is the reason
-- the choice is made through a capability rather than by whichever definition
-- the linker happened to see first.
package = {
spec = "1",
namespace = "mcpplibs",
name = "std-freestanding-alloc-libc",
description = "The replaceable allocation functions for the freestanding subset, forwarded to the target's C library",
licenses = {"Apache-2.0"},
repo = "https://github.com/mcpplibs/std-freestanding-alloc-libc",
type = "package",

xpm = {
linux = {
["0.1.0"] = {
url = {
GLOBAL = "https://github.com/mcpplibs/std-freestanding-alloc-libc/archive/refs/tags/0.1.0.tar.gz",
CN = "https://gitcode.com/mcpp-res/std-freestanding-alloc-libc/releases/download/0.1.0/std-freestanding-alloc-libc-0.1.0.tar.gz",
},
sha256 = "019d13c2363a0a3487f9e2664ef3f533724edb46deb9badf2ea21298e932505c",
},
},
macosx = {
["0.1.0"] = {
url = {
GLOBAL = "https://github.com/mcpplibs/std-freestanding-alloc-libc/archive/refs/tags/0.1.0.tar.gz",
CN = "https://gitcode.com/mcpp-res/std-freestanding-alloc-libc/releases/download/0.1.0/std-freestanding-alloc-libc-0.1.0.tar.gz",
},
sha256 = "019d13c2363a0a3487f9e2664ef3f533724edb46deb9badf2ea21298e932505c",
},
},
windows = {
["0.1.0"] = {
url = {
GLOBAL = "https://github.com/mcpplibs/std-freestanding-alloc-libc/archive/refs/tags/0.1.0.tar.gz",
CN = "https://gitcode.com/mcpp-res/std-freestanding-alloc-libc/releases/download/0.1.0/std-freestanding-alloc-libc-0.1.0.tar.gz",
},
sha256 = "019d13c2363a0a3487f9e2664ef3f533724edb46deb9badf2ea21298e932505c",
},
},
},

-- The package's own manifest, inside the tarball's wrap directory.
mcpp = "*/mcpp.toml",
}
53 changes: 53 additions & 0 deletions pkgs/s/std-freestanding-nolibc.lua
Original file line number Diff line number Diff line change
@@ -0,0 +1,53 @@
-- std-freestanding-nolibc — the five C functions a freestanding C++
-- translation unit still reaches for, for targets that have declined one.
--
-- ⚠️ FOR THE ZERO-LIBC TIER ONLY. mcpp contributes a dependency package's
-- object files to the consumer's link unconditionally, so a project whose
-- board package links `-lc` would get two definitions of `memcpy`. The
-- intended consumer sets `[target.<triple>].sysroot = ""`.
--
-- Four of the five are an obligation rather than a convenience: a freestanding
-- implementation provides memcpy, memmove, memset and memcmp because the
-- compiler lowers structure assignment and array initialisation onto them.
package = {
spec = "1",
namespace = "mcpplibs",
name = "std-freestanding-nolibc",
description = "memcpy, memmove, memset, memcmp and strlen for targets with no C library",
licenses = {"Apache-2.0"},
repo = "https://github.com/mcpplibs/std-freestanding-nolibc",
type = "package",

xpm = {
linux = {
["0.1.0"] = {
url = {
GLOBAL = "https://github.com/mcpplibs/std-freestanding-nolibc/archive/refs/tags/0.1.0.tar.gz",
CN = "https://gitcode.com/mcpp-res/std-freestanding-nolibc/releases/download/0.1.0/std-freestanding-nolibc-0.1.0.tar.gz",
},
sha256 = "280ffe0180e0bd19ef94d4655c564507c4799e5c72ac7624d58722cb8aac363a",
},
},
macosx = {
["0.1.0"] = {
url = {
GLOBAL = "https://github.com/mcpplibs/std-freestanding-nolibc/archive/refs/tags/0.1.0.tar.gz",
CN = "https://gitcode.com/mcpp-res/std-freestanding-nolibc/releases/download/0.1.0/std-freestanding-nolibc-0.1.0.tar.gz",
},
sha256 = "280ffe0180e0bd19ef94d4655c564507c4799e5c72ac7624d58722cb8aac363a",
},
},
windows = {
["0.1.0"] = {
url = {
GLOBAL = "https://github.com/mcpplibs/std-freestanding-nolibc/archive/refs/tags/0.1.0.tar.gz",
CN = "https://gitcode.com/mcpp-res/std-freestanding-nolibc/releases/download/0.1.0/std-freestanding-nolibc-0.1.0.tar.gz",
},
sha256 = "280ffe0180e0bd19ef94d4655c564507c4799e5c72ac7624d58722cb8aac363a",
},
},
},

-- The package's own manifest, inside the tarball's wrap directory.
mcpp = "*/mcpp.toml",
}
21 changes: 21 additions & 0 deletions pkgs/s/std-freestanding.lua
Original file line number Diff line number Diff line change
Expand Up @@ -30,6 +30,13 @@ package = {
},
sha256 = "c0026e6aa85d207b3dd00c3f2fe2674174c2e25d86a162f64fe70742420efb00",
},
["0.3.0"] = {
url = {
GLOBAL = "https://github.com/mcpplibs/std-freestanding/archive/refs/tags/0.3.0.tar.gz",
CN = "https://gitcode.com/mcpp-res/std-freestanding/releases/download/0.3.0/std-freestanding-0.3.0.tar.gz",
},
sha256 = "04c02fc42d1fb608a831ff6a1c780a4c12901d8d1d680bd602cb4ff439eedf9a",
},
},
macosx = {
["0.2.0"] = {
Expand All @@ -39,6 +46,13 @@ package = {
},
sha256 = "c0026e6aa85d207b3dd00c3f2fe2674174c2e25d86a162f64fe70742420efb00",
},
["0.3.0"] = {
url = {
GLOBAL = "https://github.com/mcpplibs/std-freestanding/archive/refs/tags/0.3.0.tar.gz",
CN = "https://gitcode.com/mcpp-res/std-freestanding/releases/download/0.3.0/std-freestanding-0.3.0.tar.gz",
},
sha256 = "04c02fc42d1fb608a831ff6a1c780a4c12901d8d1d680bd602cb4ff439eedf9a",
},
},
windows = {
["0.2.0"] = {
Expand All @@ -48,6 +62,13 @@ package = {
},
sha256 = "c0026e6aa85d207b3dd00c3f2fe2674174c2e25d86a162f64fe70742420efb00",
},
["0.3.0"] = {
url = {
GLOBAL = "https://github.com/mcpplibs/std-freestanding/archive/refs/tags/0.3.0.tar.gz",
CN = "https://gitcode.com/mcpp-res/std-freestanding/releases/download/0.3.0/std-freestanding-0.3.0.tar.gz",
},
sha256 = "04c02fc42d1fb608a831ff6a1c780a4c12901d8d1d680bd602cb4ff439eedf9a",
},
},
},

Expand Down
Loading