diff options
Diffstat (limited to 'src/kernel/bam.lua')
-rw-r--r-- | src/kernel/bam.lua | 34 |
1 files changed, 19 insertions, 15 deletions
diff --git a/src/kernel/bam.lua b/src/kernel/bam.lua index 2dc724e..43328e6 100644 --- a/src/kernel/bam.lua +++ b/src/kernel/bam.lua @@ -1,19 +1,23 @@ -local kernel_settings = TableDeepCopy(common_settings) +return function(s, common) + local kernel_settings = TableDeepCopy(s.common_settings) -kernel_settings.cc.includes:Add("src/common/include/kogata", - "src/kernel/include") + kernel_settings.cc.includes:Add("src/common/include/kogata", + "src/kernel/include") -kernel_settings.link.flags:Add("-T src/kernel/linker.ld") + kernel_settings.link.flags:Add("-T src/kernel/linker.ld") -kernel_source = { - Collect('src/kernel/core/*.s'), - Collect('src/kernel/dev/*.s'), - Collect('src/kernel/core/*.c'), - Collect('src/kernel/dev/*.c'), - Collect('src/kernel/fs/*.c'), - Collect('src/kernel/user/*.c'), -} -kernel_obj = Compile(kernel_settings, kernel_source) - -kernel = Link(kernel_settings, "kernel", {kernel_obj, common_libc, common_libkogata}) + kernel_source = { + Collect('src/kernel/core/*.s'), + Collect('src/kernel/dev/*.s'), + Collect('src/kernel/core/*.c'), + Collect('src/kernel/dev/*.c'), + Collect('src/kernel/fs/*.c'), + Collect('src/kernel/user/*.c'), + } + obj = Compile(kernel_settings, kernel_source) + return { + obj = obj, + bin = Link(kernel_settings, "kernel", {obj, common.libc, common.libkogata}) + } +end |