master hovercats/oakiss / pkg / awk / gen.lua
 1cflags{
 2	'-std=c11', '-Wall', '-Wpedantic',
 3	'-D _XOPEN_SOURCE=700',
 4	'-I $outdir',
 5	'-I $srcdir',
 6}
 7
 8yacc('awkgram', 'awkgram.y')
 9
10pkg.deps = {'$outdir/awkgram.tab.h'}
11
12sub('tools.ninja', function()
13	toolchain(config.host)
14	cflags{'-I $outdir'}
15	exe('maketab', {'maketab.c'})
16end)
17
18rule('maketab', '$outdir/maketab $in >$out')
19build('maketab', '$outdir/proctab.c', {'$outdir/awkgram.tab.h', '|', '$outdir/maketab'})
20
21exe('awk', [[
22	b.c main.c parse.c tran.c lib.c run.c lex.c
23	$outdir/(awkgram.tab.c proctab.c)
24]])
25file('bin/awk', '755', '$outdir/awk')
26man{'awk.1'}
27
28fetch 'git'