aboutsummaryrefslogtreecommitdiff
path: root/src/bin/bam.lua
diff options
context:
space:
mode:
Diffstat (limited to 'src/bin/bam.lua')
-rw-r--r--src/bin/bam.lua37
1 files changed, 19 insertions, 18 deletions
diff --git a/src/bin/bam.lua b/src/bin/bam.lua
index 76b7b2a..d529ece 100644
--- a/src/bin/bam.lua
+++ b/src/bin/bam.lua
@@ -1,23 +1,24 @@
-local function bin_settings(name)
- local s = TableDeepCopy(user_settings)
- s.link.flags:Add("-T src/lib/linker.ld",
- "-Xlinker -Map=build/bin/" .. name .. ".map")
- if name == 'lua' or name == 'luac' then
- s.cc.includes:Add("src/lib/lua")
+return function(s, lib)
+ local function bin_settings(name)
+ local s = TableDeepCopy(s.user_settings)
+ s.link.flags:Add("-T src/lib/linker.ld")
+ if name == 'lua' or name == 'luac' then
+ s.cc.includes:Add("src/lib/lua")
+ end
+ return s
end
- return s
-end
-local function bin_exe(name, deps)
- local s = bin_settings(name)
+ local function bin_exe(name, deps)
+ local s = bin_settings(name)
- local src = Collect('src/bin/' .. name .. '/*.c')
- local obj = Compile(s, src)
+ local src = Collect('src/bin/' .. name .. '/*.c')
+ local obj = Compile(s, src)
- return Link(s, 'bin/' .. name .. ".bin", {obj, deps})
-end
+ return Link(s, 'bin/' .. name .. ".bin", {obj, deps})
+ end
-bin = {
- bin_exe('lua', {liblua}),
- -- bin_exe('luac', {liblua}),
-}
+ return {
+ bin_exe('lua', {lib.liblua}),
+ -- bin_exe('luac', {liblua}),
+ }
+end