ack/first/yacc.lua
2016-07-26 23:35:30 +02:00

45 lines
657 B
Lua

definerule("yacc",
{
srcs = { type="targets" },
commands = {
type="strings",
default={
"yacc -t -b %{dir}/y -d %{ins}"
}
},
},
function (e)
return normalrule {
name = e.name,
cwd = e.cwd,
ins = e.srcs,
outleaves = { "y.tab.c", "y.tab.h" },
label = e.label,
commands = e.commands,
}
end
)
definerule("flex",
{
srcs = { type="targets" },
commands = {
type="strings",
default={
"flex -s -t %{ins} > %{outs[1]}"
}
}
},
function (e)
return normalrule {
name = e.name,
cwd = e.cwd,
ins = e.srcs,
outleaves = { "lex.yy.c" },
label = e.label,
commands = e.commands
}
end
)