1# @(#)Makefile 5.5 (Berkeley) 02/06/91 2 3PROG= pc0 4SRCDIR= ${.CURDIR}/../src 5CFLAGS= -I. -I${.CURDIR} -I${SRCDIR} 6.PATH: ${SRCDIR} 7BINDIR= /usr/libexec/pascal 8NOMAN= noman 9 10EYACC= /usr/libexec/pascal/eyacc 11 12WHOAMI= pc 13.include "${SRCDIR}/config.include" 14 15SRCS= TRdata.c ato.c call.c case.c clas.c const.c conv.c cset.c error.c \ 16 fdec.c fend.c fhdr.c flvalue.c forop.c func.c gen.c hash.c lab.c \ 17 lookup.c lval.c main.c nl.c p2put.c pccaseop.c pcfunc.c pclval.c \ 18 pcproc.c proc.c put.c rec.c rval.c savenl.c sconv.c stab.c stat.c \ 19 stklval.c stkrval.c string.c subr.c tmps.c tree.c treen.c type.c \ 20 var.c yycopy.c yycosts.c yyerror.c yyget.c yyid.c yylex.c yymain.c \ 21 yyoptions.c yypanic.c yyparse.c yyprint.c yyput.c yyrecover.c \ 22 yyseman.c yytree.c 23OBJS+= config.c y.tab.o 24CLEANFILES+=opc y.tab.h y.tab.c y.tab.out ${WHOAMI}*strings config.c \ 25 opcode.h picture opc pic *.list ${ERRORSTRINGS} config.o 26 27.c.o: 28 rm -f ${.IMPSRC:T} 29 ln -s ${.IMPSRC} . 30 mkstr - ${ERRORSTRINGS} x ${.IMPSRC:T} 31 ${CC} ${CFLAGS} -c x${.IMPSRC:T} -o ${.TARGET} 32 rm -f x${.IMPSRC:T} ${.IMPSRC:T} 33 34y.tab.o: y.tab.c y.tab.h 35 rm -f x.y.tab.c 36 mkstr - ${ERRORSTRINGS} x. y.tab.c 37 ${CC} ${CFLAGS} -c x.y.tab.c 38 mv x.y.tab.o y.tab.o 39 rm -f x.y.tab.c 40 41y.tab.c: y.tab.h 42 43y.tab.h: ${SRCDIR}/pas.y ${SRCDIR}/gram 44 @echo make y.tab.h and y.tab.c 45 rm -f y.tab.h y.tab.c 46 ${EYACC} ${SRCDIR}/pas.y > /dev/null 47 ex - y.tab.c < ${SRCDIR}/gram 48 49picture: pic ${SRCDIR}/OPnames.h 50 ./pic > picture 51 52pic: pic.c 53 ${CC} ${.ALLSRC} -o ${.TARGET} 54 55opcode.h: opc ${SRCDIR}/OPnames.h ${SRCDIR}/opc.c 56 ./opc > ${.TARGET} 57 58opc: opc.c 59 ${CC} ${.ALLSRC} -o ${.TARGET} 60 61beforeinstall: 62 install -c -o ${BINOWN} -g ${BINGRP} -m 444 ${ERRORSTRINGS} \ 63 ${DESTDIR}${LIBDATA}/${ERRORSTRINGS} 64 65.include <bsd.prog.mk> 66 67${OBJS} .depend: opcode.h y.tab.h 68