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