57 lines
1.0 KiB
Meson
57 lines
1.0 KiB
Meson
kernel_c_args = [
|
|
'-ffreestanding',
|
|
'-fno-stack-protector',
|
|
'-fno-omit-frame-pointer',
|
|
'-fno-pie',
|
|
'-nostdinc',
|
|
'-DUACPI_OVERRIDE_TYPES',
|
|
'-DUACPI_FORMATTED_LOGGING',
|
|
'-DUACPI_BAREBONES_MODE',
|
|
]
|
|
|
|
kernel_lds = meson.current_source_dir() / 'kernel.ld'
|
|
|
|
kernel_link_args = [
|
|
'-ffreestanding',
|
|
'-nostdlib',
|
|
'-static',
|
|
'-T' + kernel_lds,
|
|
]
|
|
|
|
kernel_includes = include_directories(
|
|
'arch' / target_machine.cpu_family() / 'include',
|
|
'include',
|
|
)
|
|
|
|
kernel_sources = []
|
|
|
|
configure_file(configuration: cfg, output: 'config.h')
|
|
|
|
subdir('arch' / target_machine.cpu_family())
|
|
subdir('boot')
|
|
subdir('mem')
|
|
subdir('core')
|
|
subdir('syscalls')
|
|
|
|
subdir('klibc')
|
|
subdir('vdso')
|
|
|
|
executable(
|
|
'zinnia',
|
|
include_directories: [
|
|
common_includes,
|
|
kernel_includes,
|
|
uacpi_includes,
|
|
],
|
|
c_args: kernel_c_args,
|
|
link_args: kernel_link_args,
|
|
link_depends: [
|
|
kernel_lds,
|
|
],
|
|
sources: [
|
|
kernel_sources,
|
|
uacpi_sources,
|
|
vdso,
|
|
],
|
|
)
|