78 lines
2 KiB
JSON
78 lines
2 KiB
JSON
{
|
|
"$schema": "https://schemas.cute.engineering/stable/cutekit.manifest.target.v1",
|
|
"id": "kernel-x86_64",
|
|
"type": "target",
|
|
"props": {
|
|
"toolchain": "clang",
|
|
"arch": "x86_64",
|
|
"sys": "kernel",
|
|
"abi": "sysv",
|
|
"bits": "64",
|
|
"freestanding": true,
|
|
"host": false,
|
|
"sys-encoding": "utf8",
|
|
"sys-line-ending": "lf",
|
|
"sys-path-separator": "slash",
|
|
"sys-terminal": "ansi"
|
|
},
|
|
"tools": {
|
|
"cc": {
|
|
"cmd": "{shell.latest('clang')}",
|
|
"args": [
|
|
"--target=x86_64-none-elf",
|
|
"-ffreestanding",
|
|
"-fno-stack-protector",
|
|
"-mno-80387",
|
|
"-mno-mmx",
|
|
"-mno-3dnow",
|
|
"-mno-sse",
|
|
"-mno-sse2",
|
|
"-mno-red-zone",
|
|
"-mcmodel=kernel"
|
|
]
|
|
},
|
|
"cxx": {
|
|
"cmd": "{shell.latest('clang++')}",
|
|
"args": [
|
|
"--target=x86_64-none-elf",
|
|
"-ffreestanding",
|
|
"-fno-stack-protector",
|
|
"-mno-80387",
|
|
"-mno-mmx",
|
|
"-mno-3dnow",
|
|
"-mno-sse",
|
|
"-mno-sse2",
|
|
"-mno-red-zone",
|
|
"-mcmodel=kernel",
|
|
"-fno-exceptions",
|
|
"-fno-rtti"
|
|
]
|
|
},
|
|
"ld": {
|
|
"cmd": "{shell.latest('ld.lld')}",
|
|
"args": [
|
|
"-m",
|
|
"elf_x86_64",
|
|
"-T{utils.relpath('kernel-x86_64.ld')}",
|
|
"-z",
|
|
"max-page-size=0x1000"
|
|
],
|
|
"files": [
|
|
"{utils.relpath('kernel-x86_64.ld')}"
|
|
]
|
|
},
|
|
"ar": {
|
|
"cmd": "{shell.latest('llvm-ar')}",
|
|
"args": [
|
|
"rcs"
|
|
]
|
|
},
|
|
"as": {
|
|
"cmd": "nasm",
|
|
"args": [
|
|
"-f",
|
|
"elf64"
|
|
]
|
|
}
|
|
}
|
|
}
|