kernel/meta/targets/kernel-riscv32.json

59 lines
1.4 KiB
JSON

{
"$schema": "https://schemas.cute.engineering/stable/cutekit.manifest.target.v1",
"id": "kernel-riscv32",
"type": "target",
"props": {
"toolchain": "clang",
"arch": "riscv32",
"bits": "32",
"sys": "kernel",
"abi": "sysv",
"encoding": "utf8",
"freestanding": true,
"host": false
},
"tools": {
"cc": {
"cmd": "{shell.latest('clang')}",
"args": [
"--target=riscv32",
"-nostdlib",
"-ffreestanding"
]
},
"cxx": {
"cmd": "{shell.latest('clang++')}",
"args": [
"--target=riscv32",
"-nostdlib",
"-ffreestanding"
]
},
"ld": {
"cmd": "{shell.latest('ld.lld')}",
"args": [
"-m",
"elf32lriscv",
"-T{utils.relpath('kernel-riscv32.ld')}",
"-z",
"max-page-size=0x1000"
],
"files": [
"{utils.relpath('kernel-riscv32.ld')}"
]
},
"ar": {
"cmd": "{shell.latest('llvm-ar')}",
"args": [
"rcs"
]
},
"as": {
"cmd": "{shell.latest('clang')}",
"args": [
"--target=riscv32",
"-c"
]
}
}
}