summaryrefslogtreecommitdiff
path: root/pkg/awk/gen.rc
diff options
context:
space:
mode:
authorMichael Forney <mforney@mforney.org>2016-12-11 16:04:20 -0800
committerMichael Forney <mforney@mforney.org>2016-12-13 23:10:30 -0800
commit293f5a93b77d92fd65db7f3d0df654f102e46cfb (patch)
tree6ecd1170e3dd793862dd852814dc1b4cd5e44260 /pkg/awk/gen.rc
parent9a506a6834df01a26795cea222b410f206efa9fa (diff)
Move to flat package hierarchy
Note to self: never try to move submodules again To migrate your existing submodules (more or less): set -x set -e mkdir .git/modules/pkg for old in */*/src ; do new="pkg/${old#*/}" if ! [ -f "$old/.git" ] || [ "${old%%/*}" = pkg ] ; then continue fi git -C ".git/modules/$old" config core.worktree "../../../../../$new" rmdir "$new" mv "$old" "$new" sed -e "s,$old,$new," "$new/.git" > "$new/.git.tmp" mv "$new/.git.tmp" "$new/.git" mkdir ".git/modules/${new%/src}" mv ".git/modules/$old" ".git/modules/$new" rm "${old%/src}"/*.ninja mv "${old%/src}"/*.tar.{gz,xz,bz2} "${new%/src}/" rmdir "${old%/src}" || true done sed -e 's,^\[submodule "[^/]*/,[submodule "pkg/,' .git/config > .git/config.tmp mv .git/config.tmp .git/config
Diffstat (limited to 'pkg/awk/gen.rc')
-rw-r--r--pkg/awk/gen.rc25
1 files changed, 25 insertions, 0 deletions
diff --git a/pkg/awk/gen.rc b/pkg/awk/gen.rc
new file mode 100644
index 00000000..9d9b3a2e
--- /dev/null
+++ b/pkg/awk/gen.rc
@@ -0,0 +1,25 @@
+cflags\
+ '-std=c90' \
+ -D '_POSIX_C_SOURCE=200809L' \
+ -I '$outdir' \
+ -I '$srcdir'
+
+yacc gram '$srcdir'/awkgram.y
+build '$outdir'/ytab.h copy '$outdir'/gram.tab.h
+
+{
+ include 'toolchain/$host_toolchain.ninja'
+ cflags -I '$outdir'
+ exe maketab -d '$outdir'/ytab.h maketab.c
+} >tools.ninja ; subninja tools.ninja
+
+rule maketab '(cd $outdir && ./maketab) >$out.tmp && mv $out.tmp $out'
+build '$outdir'/proctab.c maketab '|' '$outdir'/^(maketab ytab.h)
+
+exe awk -d '$outdir'/ytab.h\
+ b.c main.c parse.c tran.c lib.c run.c lex.c\
+ '$outdir'/^(gram.tab.c proctab.c)
+file bin/awk '$outdir'/awk 755
+file share/man/man1/awk.1 '$srcdir'/awk.1 644
+
+fetch git