ciabatta/src/library.json

77 lines
1.8 KiB
JSON
Raw Normal View History

// Manifest file for the ciabatta build.
// Platform sections describe available platforms and
// which files they need to include to function
// API sections describe API subsets and their TinyRT
// dependencies. If an API requires TinyRT module that
// isn't implemented by the platform that API won't be included
// in the final build
// This file is used to auto-generate ciabatta.c
// `include` section specifies the header files that ciabatta
// implements
// `platform` sections describe platforms, the directories
// where the source code for these platforms resides and the
// files that should be included in the build for that platform
// (relative to "src" dir) as well as the location of TinyRT
// implementation.
// `api` sections describe modules, where the implementation resides,
// the source files and the TinyRT modules, on which this module
// depends. If the platform doesn't implement one of the dependencies
// this module will not be included in the final build
includes: [
2023-07-27 13:49:53 +00:00
"stdlib.h",
"stdio.h",
],
platforms: [
{
name: "linux",
path: "linux",
includes: [
"syscall.c",
"errno.c",
"entry.c"
],
tinyrt: [
"tinyrt.c"
]
},
{
name: "windows",
path: "windows",
2023-07-28 08:53:06 +00:00
includes: [
"windows.c"
],
tinyrt: [
"tinyrt.c",
"cia-init.c"
],
},
],
apis: [
{
name: "stdlib_program",
path: "impl/stdlib-program",
includes: [
"program.c",
],
reqs: [
"rt_api_program",
]
},
2023-07-27 13:49:53 +00:00
{
name: "stdlib_file",
path: "impl/stdlib-file",
includes: [
"file.c"
],
reqs: [
"rt_api_file"
]
}
]