Massive ackbuilder refactor --- cleaner and more expressive. Lists

are automatically flattened (leading to better build files), and the
list and filename functions are vastly more orthogonal.
This commit is contained in:
David Given
2016-08-04 23:51:19 +02:00
parent b2bb4ce3b2
commit 5e84be70fd
11 changed files with 198 additions and 149 deletions

View File

@@ -21,7 +21,7 @@ definerule("llgen",
function(e)
-- Remember this is executed from the caller's directory; local
-- target names will resolve there
local fs = replace(basename(e.srcs), "%.g$", "")
local fs = replace(basename(filenamesof(e.srcs)), "%.g$", "")
return normalrule {
name = e.name,
@@ -29,11 +29,11 @@ definerule("llgen",
outleaves = {
"Lpars.c",
"Lpars.h",
unpack(replace(fs, "$", ".c"))
replace(fs, "$", ".c")
},
ins = {
"util/LLgen+llgen",
unpack(e.srcs),
e.srcs,
},
commands = {
"cd %{dir} && %{abspath(ins)}"