BSD 4_4_Lite2 release
[unix-history] / usr / src / usr.bin / pascal / pxp / Makefile
index df0c468..fcdd25c 100644 (file)
@@ -1,48 +1,42 @@
-SCCSID = "@(#)Makefile 1.1 (Berkeley) %G%"
-DESTDIR=
-ED=    -ed
-AS=    -as
-VERSION= version
-EYACC= /usr/ucb/eyacc
-CFLAGS=        -O -DPXP -w
-OBJS=  call.o case.o const.o cset.o \
-       error.o fdec.o func.o hash.o lab.o lval.o \
-       main.o nl.o pmon.o pp.o proc.o rec.o rval.o \
-       stat.o string.o subr.o tree.o type.o var.o y.tab.o \
-       yycomm.o yycosts.o yyerror.o yyget.o yyid.o yylex.o yymain.o \
-       yypanic.o yyparse.o yyprint.o yyput.o yyrecover.o \
-       yyseman.o yytree.o
-OBJS2= doprnt.o printf.o treen.o yycopy.o TRdata.o Version.o
-
-all: a.out
-
-a.out: ${OBJS} ${OBJS2}
-       ${CC} ${CFLAGS} -i ${OBJS} ${OBJS2}
-
-doprnt.o: doprnt.c
-       ${CC} ${CFLAGS} -E doprnt.c > doprnt.s
-       ${AS} -o doprnt.o doprnt.s
-       -rm -f doprnt.s
-
-#y.tab.c: pas.y
-#      ${EYACC} pas.y
-#      ${ED} - y.tab.c < gram
-
-clean:
-       -rm -f pi1:2strings a.out core
-       -echo dont rm y.tab.c
-       -rm -f *.o x*
-
-install:
-       cp a.out ${DESTDIR}/usr/ucb/pxp
-#      cp a.outNOID /usr/ucb/pxp34
-
-print:
-       @pr makefile READ_ME
-       @ls -ls | pr
-       @size a.out *.o | pr
-#      @cxref *.c | pr
-       @pr 0.h main.c pas.y
-       @pr yy.h yy*.c
-       @pr [a-ln-x]*.c
-#      @pr putn.s treen.s yycopy.s
+#      @(#)Makefile    8.2 (Berkeley) 5/27/94
+
+PROG=  pxp
+SRCDIR=        ${.CURDIR}/../src
+.PATH: ${SRCDIR}
+EYACC= ${.CURDIR}/../eyacc/obj/eyacc
+
+CFLAGS+=-DRMOTHERS -w -I. -I${.CURDIR} -I${SRCDIR}
+SRCS=  TRdata.c Version.c call.c case.c const.c cset.c error.c fdec.c \
+       func.c hash.c lab.c lval.c main.c nl.c pmon.c pp.c proc.c rec.c \
+       rmothers.c rval.c stat.c string.c subr.c tree.c treen.c type.c \
+       var.c y.tab.c yycomm.c yycopy.c yycosts.c yyerror.c yyget.c yyid.c \
+       yylex.c yymain.c yypanic.c yyparse.c yyprint.c yyput.c yyrecover.c \
+       yyseman.c yytree.c
+CLEANFILES=opc y.tab.c y.tab.h opcode.h version
+
+y.tab.h: ${SRCDIR}/pas.y ${SRCDIR}/gram
+       if [ -f ${EYACC} ]; then \
+               echo make y.tab.h and y.tab.c; \
+               rm -f y.tab.h y.tab.c; \
+               ${EYACC} ${SRCDIR}/pas.y > /dev/null; \
+       else \
+               echo copy y.tab.h and y.tab.c; \
+               cp ${SRCDIR}/y.tab.c ${SRCDIR}/y.tab.h .; \
+       fi
+       ex - y.tab.c < ${SRCDIR}/gram
+
+newversion: version
+       ./version > Version.c
+
+version: version.c Version.o
+       ${CC} -o version ${.CURDIR}/version.c Version.o
+
+opcode.h: opc ${SRCDIR}/OPnames.h
+       ./opc > ${.TARGET}
+
+opc: ${SRCDIR}/opc.c
+       ${CC} ${SRCDIR}/opc.c -o ${.TARGET}
+
+.include <bsd.prog.mk>
+
+${OBJS} .depend: opcode.h y.tab.h