This means the kernel now depends on libj6. I've added the macro definition __j6kernel when building for the kernel target, so I can remove parts with #ifdefs.
53 lines
956 B
YAML
53 lines
956 B
YAML
---
|
|
extends: base
|
|
|
|
variables:
|
|
asflags: [ "-I${source_root}/src/kernel/" ]
|
|
|
|
ccflags: [
|
|
"--target=x86_64-unknown-elf",
|
|
"-I${source_root}/external",
|
|
|
|
"-nostdinc",
|
|
"-nostdlib",
|
|
"-ffreestanding",
|
|
"-nodefaultlibs",
|
|
"-fno-builtin",
|
|
|
|
"-mno-sse",
|
|
"-fno-omit-frame-pointer",
|
|
"-mno-red-zone",
|
|
"-mcmodel=large",
|
|
|
|
"-g3",
|
|
"-ggdb",
|
|
|
|
"-D__ELF__",
|
|
"-D__jsix__",
|
|
"-D__j6kernel",
|
|
"-U__linux",
|
|
"-U__linux__",
|
|
"-DPRINTF_ALIAS_STANDARD_FUNCTION_NAMES=1",
|
|
"-DPRINTF_INCLUDE_CONFIG_H=1",
|
|
|
|
"-isystem${source_root}/sysroot/include",
|
|
"-isystem${source_root}/src/libraries/libc/include",
|
|
"--sysroot='${source_root}/sysroot'" ]
|
|
|
|
|
|
cflags: [ '-nostdinc' ]
|
|
|
|
cxxflags: [
|
|
"-fno-exceptions",
|
|
"-fno-rtti",
|
|
"-nostdinc",
|
|
"-isystem${source_root}/sysroot/include/c++/v1" ]
|
|
|
|
ldflags: [
|
|
"-g",
|
|
"-nostdlib",
|
|
"-Bstatic",
|
|
"-z", "norelro",
|
|
"-z", "separate-code" ]
|
|
|