V10/cmd/twig/makefile
#
CC= cc
INSTALL= /usr/bin
TEMPLATES = /usr/lib/twig
SRCS= twig.y sym.c path.c machine.c trees.c lex.c code.c io.c mem.c
OBJS= y.tab.o sym.o path.o machine.o trees.o lex.o code.o io.o mem.o
HDRS= common.h code.h sym.h machine.h mem.h
PREFIX= \"$(TEMPLATES)/walker\"
all: twig
install: twig
mv twig $(INSTALL)
mv walker.c1 $(TEMPLATES)
kindling:
bundle README makefile *.y *.c *.h rawwalker.* >kindling
sym.h: code.h
machine.h: machcomm.h
touch machine.h
machine.o: common.h sym.h machine.h machine.c
$(CC) -g -c machine.c
path.o: common.h sym.h path.c
$(CC) -g -c path.c
y.tab.h: common.h sym.h twig.y
yacc -d twig.y
y.tab.c: y.tab.h common.h sym.h twig.y
y.tab.o: y.tab.c
$(CC) -DPREFIX_BASE=$(PREFIX) -g -c y.tab.c
sym.o: common.h sym.h y.tab.h sym.c
$(CC) -g -c sym.c
trees.o: common.h sym.h
$(CC) -g -c trees.c
lex.o: common.h sym.h y.tab.h lex.c
$(CC) -g -c lex.c
code.o: common.h code.h
$(CC) -g -c code.c
io.o: common.h io.c
$(CC) -g -c io.c
mem.o: common.h mem.c
$(CC) -g -c mem.c
twig: $(OBJS)
$(CC) -g -o twig $(OBJS)
# generate walker from templates
walker.c1: machcomm.h walker.h rawwalker.c1
cat machcomm.h walker.h rawwalker.c1 >walker.c1
walker.ex: machcomm.h walker.h rawwalker.ex
cat machcomm.h walker.h rawwalker.ex >walker.ex
# at bell labs only
print:
pr makefile $(HDRS) $(SRCS) | 4can
bell_print:
pp makefile $(HDRS) $(SRCS) | dcan
# at stanford only
enscript:
enscript -Pbt -2r makefile $(HDRS) $(SRCS)