xref: /original-bsd/old/awk/Makefile (revision da7c76f1)
1#	@(#)Makefile	4.12 (Berkeley) 05/11/90
2
3YFLAGS=	-d
4CFLAGS+=-I. -I${.CURDIR}
5PROG=	awk
6SRCS=	awk.lx.c b.c lib.c main.c parse.c proctab.c freeze.c run.c tran.c
7OBJS+=	token.o awk.g.o
8CLEANFILES+=	token.c proctab.c proc.o proc awk.h awk.lx.c y.tab.h
9
10DPADD=	${LIBM}
11LDADD=	-lm
12
13token.c: awk.h
14	echo '#include "awk.h"' > ${.TARGET}
15	echo 'struct toke { char *tnm; int yval; } tok[] = {' >> ${.TARGET}
16	sed 's/#define \([^ ]*\) \(.*\)/"\1", \2,/' \
17	    < awk.h >> ${.TARGET}
18	echo '};' >> ${.TARGET}
19	echo 'char *tokname(n)' >> ${.TARGET}
20	echo '{' >> ${.TARGET}
21	echo '	if (n <= 256 || n >= LASTTOKEN)' >> ${.TARGET}
22	echo '		n = 257;' >> ${.TARGET}
23	echo '	return(tok[n - 257].tnm);' >> ${.TARGET}
24	echo '}' >> ${.TARGET}
25
26awk.h: awk.g.o
27	rm -f awk.h
28	cp y.tab.h awk.h
29
30proctab.c: proc
31	./proc > proctab.c
32
33proc: token.o proc.o
34	${CC} -o ${.TARGET} proc.o token.o
35
36.include <bsd.prog.mk>
37