xref: /csrg-svn/old/awk/Makefile (revision 41716)
1*41716Sbostic#	@(#)Makefile	4.12 (Berkeley) 05/11/90
2*41716Sbostic
331343SbosticYFLAGS=	-d
4*41716SbosticCFLAGS+=-I. -I${.CURDIR}
5*41716SbosticPROG=	awk
6*41716SbosticSRCS=	awk.lx.c b.c lib.c main.c parse.c proctab.c freeze.c run.c tran.c
7*41716SbosticOBJS+=	token.o awk.g.o
8*41716SbosticCLEANFILES+=	token.c proctab.c proc.o proc awk.h awk.lx.c y.tab.h
96673Smckusick
10*41716SbosticDPADD=	${LIBM}
11*41716SbosticLDADD=	-lm
126673Smckusick
1331343Sbostictoken.c: awk.h
14*41716Sbostic	echo '#include "awk.h"' > ${.TARGET}
15*41716Sbostic	echo 'struct toke { char *tnm; int yval; } tok[] = {' >> ${.TARGET}
16*41716Sbostic	sed 's/#define \([^ ]*\) \(.*\)/"\1", \2,/' \
17*41716Sbostic	    < awk.h >> ${.TARGET}
18*41716Sbostic	echo '};' >> ${.TARGET}
19*41716Sbostic	echo 'char *tokname(n)' >> ${.TARGET}
20*41716Sbostic	echo '{' >> ${.TARGET}
21*41716Sbostic	echo '	if (n <= 256 || n >= LASTTOKEN)' >> ${.TARGET}
22*41716Sbostic	echo '		n = 257;' >> ${.TARGET}
23*41716Sbostic	echo '	return(tok[n - 257].tnm);' >> ${.TARGET}
24*41716Sbostic	echo '}' >> ${.TARGET}
256673Smckusick
26*41716Sbosticawk.h: awk.g.o
27*41716Sbostic	rm -f awk.h
28*41716Sbostic	cp y.tab.h awk.h
296673Smckusick
3031343Sbosticproctab.c: proc
3131672Sbostic	./proc > proctab.c
326673Smckusick
33*41716Sbosticproc: token.o proc.o
34*41716Sbostic	${CC} -o ${.TARGET} proc.o token.o
356673Smckusick
36*41716Sbostic.include <bsd.prog.mk>
37