1# 2# Copyright (c) 1980 Regents of the University of California. 3# All rights reserved. The Berkeley software License Agreement 4# specifies the terms and conditions for redistribution. 5# 6# @(#)Makefile 5.3 (Berkeley) 10/26/87 7# 8SCCSID = "@(#)Makefile 5.3 10/26/87" 9 10INSTALLDIR = $(DESTDIR)/usr/lib 11INSTALLNAME = ${INSTALLDIR}/pc0 12BINDIR = ../pc0 13SRCDIR = ../src 14VPATH= ../src 15WHOAMI = pc 16VERSION = 3.1 17DATE = 10/26/87 18 19MKSTR = /usr/ucb/mkstr 20EYACC = ../eyacc/eyacc 21RM = -rm -f 22TOUCH = touch -f 23 24CFLAGS = -O 25LDFLAGS = -z 26 27LIBDIR = ${DESTDIR}/usr/lib 28TMPDIR = tmp 29 30ERRORSTRINGS = ${WHOAMI}${VERSION}strings 31OLDSTRINGS = ${WHOAMI}[0-9]*.[0-9]*strings 32HOWFILE = how_${WHOAMI} 33 34SRCS = ato.c \ 35 call.c case.c clas.c const.c conv.c cset.c \ 36 error.c fdec.c fend.c fhdr.c flvalue.c forop.c func.c gen.c hash.c \ 37 lab.c lookup.c lval.c stklval.c \ 38 main.c nl.c proc.c put.c \ 39 rec.c rval.c stkrval.c\ 40 savenl.c \ 41 stat.c string.c subr.c \ 42 tmps.c tree.c type.c var.c \ 43 TRdata.c \ 44 treen.c yycopy.c \ 45 yycosts.c yyerror.c yyget.c yyid.c yylex.c yymain.c yyoptions.c \ 46 yypanic.c yyparse.c yyprint.c yyput.c yyrecover.c yyseman.c yytree.c \ 47 p2put.c stab.c pcproc.c pcfunc.c pccaseop.c pclval.c sconv.c 48 49HDRS = 0.h OPnames.h align.h iorec.h objfmt.h pstab.h pc.h \ 50 send.h tree.h whoami.h yy.h config.h 51 52OTHERS = pas.y opc.c CONFIG.c gram pic.c 53 54OBJS = ato.o \ 55 call.o case.o clas.o const.o conv.o cset.o \ 56 error.o fdec.o fend.o fhdr.o flvalue.o forop.o func.o gen.o hash.o \ 57 lab.o lookup.o lval.o stklval.o \ 58 main.o nl.o proc.o put.o \ 59 rec.o rval.o stkrval.o\ 60 savenl.o \ 61 stat.o string.o subr.o \ 62 tmps.o tree.o type.o var.o \ 63 TRdata.o \ 64 treen.o yycopy.o \ 65 yycosts.o yyerror.o yyget.o yyid.o yylex.o yymain.o yyoptions.o \ 66 yypanic.o yyparse.o yyprint.o yyput.o yyrecover.o yyseman.o yytree.o \ 67 p2put.o stab.o pcproc.o pcfunc.o pccaseop.o pclval.o sconv.o 68 69a.out: ${OBJS} y.tab.o config.c 70 ${CC} ${CFLAGS} ${LDFLAGS} ${OBJS} y.tab.o config.c 71 72${OBJS}: 73 ${RM} `basename $@ .o`.c 74 cd ${SRCDIR}; \ 75 ${MKSTR} - ${BINDIR}/${ERRORSTRINGS} ${BINDIR}/ `basename $@ .o`.c 76 ${CC} ${CFLAGS} -I. -I${SRCDIR} -c `basename $@ .o`.c 77 ${RM} `basename $@ .o`.c 78 79lint: 80 cd ${SRCDIR}; lint -I. -I${BINDIR} ${SRCS} ${BINDIR}/*.c 81 82y.tab.h: ${SRCDIR}/pas.y ${SRCDIR}/gram 83 ${RM} y.tab.h y.tab.c 84 ${EYACC} ${SRCDIR}/pas.y > /dev/null 85 ex - y.tab.c <${SRCDIR}/gram 86 @echo that makes y.tab.h and y.tab.c 87y.tab.o: y.tab.c y.tab.h 88 ${RM} x.y.tab.c 89 ${MKSTR} - ${ERRORSTRINGS} x. y.tab.c 90 ${CC} ${CFLAGS} -I${SRCDIR} -I. -c x.y.tab.c 91 mv x.y.tab.o y.tab.o 92 ${RM} x.y.tab.c 93 94picture: ${SRCDIR}/OPnames.h ${SRCDIR}/pic.c 95 ${RM} picture 96 cc ${SRCDIR}/pic.c -o pic 97 pic >picture 98 ${RM} pic 99 100opcode.h: ${SRCDIR}/OPnames.h ${SRCDIR}/opc.c 101 ${RM} opcode.h 102 cc ${SRCDIR}/opc.c -o opc 103 opc >opcode.h 104 ${RM} opc 105 106${SRCDIR}/0.h: 107 ${TOUCH} ${SRCDIR}/0.h 108 109config.c: ${SRCDIR}/CONFIG.c 110 sed -e "s?VERSION?${VERSION}?g" \ 111 -e "s?DATE?${DATE}?g" \ 112 -e "s?INSTALLDIR?${INSTALLDIR}?g" \ 113 -e "s?LIBDIR?${LIBDIR}?g" \ 114 -e "s?ERRORSTRINGS?${ERRORSTRINGS}?g" \ 115 -e "s?HOWFILE?${HOWFILE}?g" \ 116 < ${SRCDIR}/CONFIG.c >config.c 117 118clean: 119 ${RM} *.o *.c 120 ${RM} y.tab.h y.tab.c y.tab.out 121 ${RM} ${WHOAMI}*strings 122 ${RM} config.c opcode.h picture 123 ${RM} a.out core *.list *.bak errs 124 ${RM} opc pic tags 125 126install: a.out 127 ${RM} ${LIBDIR}/${OLDSTRINGS} 128 install -c -m 664 ${ERRORSTRINGS} ${LIBDIR}/${ERRORSTRINGS} 129 install -s -m 775 a.out ${INSTALLNAME} 130 131depend: ${SRCS} opcode.h y.tab.h 132 mkdep ${CFLAGS} -I. ${SRCS} 133 134# DO NOT DELETE THIS LINE -- mkdep uses it. 135# DO NOT PUT ANYTHING AFTER THIS LINE, IT WILL GO AWAY. 136 137ato.o: ../src/ato.c whoami.h ../src/0.h /usr/include/stdio.h 138ato.o: /usr/include/sys/types.h 139call.o: ../src/call.c whoami.h ../src/0.h /usr/include/stdio.h 140call.o: /usr/include/sys/types.h ../src/tree.h opcode.h ../src/objfmt.h 141call.o: ../src/align.h ../src/pc.h /usr/include/setjmp.h /usr/include/pcc.h 142call.o: ../src/tmps.h ../src/tree_ty.h 143case.o: ../src/case.c whoami.h ../src/0.h /usr/include/stdio.h 144case.o: /usr/include/sys/types.h ../src/tree.h opcode.h ../src/tree_ty.h 145clas.o: ../src/clas.c whoami.h ../src/0.h /usr/include/stdio.h 146clas.o: /usr/include/sys/types.h ../src/tree.h ../src/tree_ty.h 147const.o: ../src/const.c whoami.h ../src/0.h /usr/include/stdio.h 148const.o: /usr/include/sys/types.h ../src/tree.h ../src/tree_ty.h 149conv.o: ../src/conv.c whoami.h ../src/0.h /usr/include/stdio.h 150conv.o: /usr/include/sys/types.h opcode.h /usr/include/pcc.h ../src/tree_ty.h 151cset.o: ../src/cset.c whoami.h ../src/0.h /usr/include/stdio.h 152cset.o: /usr/include/sys/types.h ../src/tree.h opcode.h ../src/objfmt.h 153cset.o: ../src/tree_ty.h ../src/pc.h /usr/include/setjmp.h /usr/include/pcc.h 154cset.o: ../src/align.h 155error.o: ../src/error.c whoami.h ../src/0.h /usr/include/stdio.h 156error.o: /usr/include/sys/types.h ../src/tree_ty.h ../src/yy.h y.tab.h 157fdec.o: ../src/fdec.c whoami.h ../src/0.h /usr/include/stdio.h 158fdec.o: /usr/include/sys/types.h ../src/tree.h opcode.h ../src/objfmt.h 159fdec.o: ../src/align.h ../src/tmps.h ../src/pc.h /usr/include/setjmp.h 160fdec.o: /usr/include/pcc.h 161fend.o: ../src/fend.c whoami.h ../src/0.h /usr/include/stdio.h 162fend.o: /usr/include/sys/types.h ../src/tree.h opcode.h ../src/objfmt.h 163fend.o: ../src/align.h ../src/tmps.h ../src/pc.h /usr/include/setjmp.h 164fend.o: /usr/include/pcc.h ../src/tree_ty.h 165fhdr.o: ../src/fhdr.c whoami.h ../src/0.h /usr/include/stdio.h 166fhdr.o: /usr/include/sys/types.h ../src/tree.h opcode.h ../src/objfmt.h 167fhdr.o: ../src/align.h ../src/tree_ty.h ../src/pc.h /usr/include/setjmp.h 168flvalue.o: ../src/flvalue.c whoami.h ../src/0.h /usr/include/stdio.h 169flvalue.o: /usr/include/sys/types.h ../src/tree.h opcode.h ../src/objfmt.h 170flvalue.o: ../src/tree_ty.h ../src/pc.h /usr/include/setjmp.h 171flvalue.o: /usr/include/pcc.h ../src/tmps.h 172forop.o: ../src/forop.c whoami.h ../src/0.h /usr/include/stdio.h 173forop.o: /usr/include/sys/types.h opcode.h ../src/tree.h ../src/objfmt.h 174forop.o: ../src/pc.h /usr/include/setjmp.h /usr/include/pcc.h ../src/tmps.h 175forop.o: ../src/tree_ty.h 176func.o: ../src/func.c whoami.h 177gen.o: ../src/gen.c whoami.h 178hash.o: ../src/hash.c whoami.h ../src/0.h /usr/include/stdio.h 179hash.o: /usr/include/sys/types.h ../src/tree_ty.h ../src/yy.h y.tab.h 180lab.o: ../src/lab.c whoami.h ../src/0.h /usr/include/stdio.h 181lab.o: /usr/include/sys/types.h ../src/tree.h opcode.h ../src/objfmt.h 182lab.o: ../src/pc.h /usr/include/setjmp.h /usr/include/pcc.h ../src/tree_ty.h 183lookup.o: ../src/lookup.c whoami.h ../src/0.h /usr/include/stdio.h 184lookup.o: /usr/include/sys/types.h 185lval.o: ../src/lval.c whoami.h ../src/0.h /usr/include/stdio.h 186lval.o: /usr/include/sys/types.h ../src/tree.h opcode.h ../src/objfmt.h 187lval.o: ../src/tree_ty.h ../src/pc.h /usr/include/setjmp.h /usr/include/pcc.h 188stklval.o: ../src/stklval.c whoami.h ../src/0.h /usr/include/stdio.h 189stklval.o: /usr/include/sys/types.h ../src/tree.h opcode.h ../src/objfmt.h 190stklval.o: ../src/tree_ty.h 191main.o: ../src/main.c whoami.h ../src/0.h /usr/include/stdio.h 192main.o: /usr/include/sys/types.h ../src/tree_ty.h ../src/yy.h y.tab.h 193main.o: /usr/include/signal.h /usr/include/machine/trap.h ../src/objfmt.h 194main.o: ../src/config.h 195nl.o: ../src/nl.c whoami.h ../src/0.h /usr/include/stdio.h 196nl.o: /usr/include/sys/types.h opcode.h ../src/objfmt.h 197proc.o: ../src/proc.c whoami.h 198put.o: ../src/put.c whoami.h opcode.h ../src/0.h /usr/include/stdio.h 199put.o: /usr/include/sys/types.h ../src/objfmt.h ../src/pc.h 200put.o: /usr/include/setjmp.h ../src/align.h ../src/OPnames.h 201rec.o: ../src/rec.c whoami.h ../src/0.h /usr/include/stdio.h 202rec.o: /usr/include/sys/types.h ../src/tree.h opcode.h ../src/align.h 203rec.o: ../src/tree_ty.h 204rval.o: ../src/rval.c whoami.h ../src/0.h /usr/include/stdio.h 205rval.o: /usr/include/sys/types.h ../src/tree.h opcode.h ../src/objfmt.h 206rval.o: ../src/pc.h /usr/include/setjmp.h /usr/include/pcc.h ../src/tmps.h 207rval.o: ../src/tree_ty.h 208stkrval.o: ../src/stkrval.c whoami.h ../src/0.h /usr/include/stdio.h 209stkrval.o: /usr/include/sys/types.h ../src/tree.h opcode.h ../src/objfmt.h 210stkrval.o: ../src/align.h /usr/include/pcc.h ../src/tree_ty.h 211savenl.o: ../src/savenl.c whoami.h 212stat.o: ../src/stat.c whoami.h ../src/0.h /usr/include/stdio.h 213stat.o: /usr/include/sys/types.h ../src/tree.h ../src/objfmt.h 214stat.o: /usr/include/pcc.h ../src/pc.h /usr/include/setjmp.h ../src/tmps.h 215stat.o: opcode.h ../src/tree_ty.h 216string.o: ../src/string.c whoami.h ../src/align.h ../src/0.h 217string.o: /usr/include/stdio.h /usr/include/sys/types.h 218subr.o: ../src/subr.c whoami.h ../src/0.h /usr/include/stdio.h 219subr.o: /usr/include/sys/types.h /usr/include/sys/stat.h 220tmps.o: ../src/tmps.c whoami.h ../src/0.h /usr/include/stdio.h 221tmps.o: /usr/include/sys/types.h ../src/objfmt.h ../src/pc.h 222tmps.o: /usr/include/setjmp.h ../src/align.h ../src/tmps.h 223tree.o: ../src/tree.c whoami.h ../src/0.h /usr/include/stdio.h 224tree.o: /usr/include/sys/types.h 225type.o: ../src/type.c whoami.h ../src/0.h /usr/include/stdio.h 226type.o: /usr/include/sys/types.h ../src/tree.h ../src/objfmt.h ../src/tree_ty.h 227var.o: ../src/var.c whoami.h ../src/0.h /usr/include/stdio.h 228var.o: /usr/include/sys/types.h ../src/objfmt.h ../src/align.h ../src/iorec.h 229var.o: /usr/include/stdio.h ../src/pc.h /usr/include/setjmp.h ../src/tmps.h 230var.o: ../src/tree_ty.h 231TRdata.o: ../src/TRdata.c whoami.h ../src/0.h /usr/include/stdio.h 232TRdata.o: /usr/include/sys/types.h 233treen.o: ../src/treen.c ../src/0.h /usr/include/stdio.h 234treen.o: /usr/include/sys/types.h ../src/tree_ty.h 235yycopy.o: ../src/yycopy.c whoami.h ../src/0.h /usr/include/stdio.h 236yycopy.o: /usr/include/sys/types.h ../src/tree_ty.h ../src/yy.h y.tab.h 237yycosts.o: ../src/yycosts.c whoami.h ../src/0.h /usr/include/stdio.h 238yycosts.o: /usr/include/sys/types.h ../src/tree_ty.h ../src/yy.h y.tab.h 239yyerror.o: ../src/yyerror.c whoami.h ../src/0.h /usr/include/stdio.h 240yyerror.o: /usr/include/sys/types.h ../src/tree_ty.h ../src/yy.h y.tab.h 241yyget.o: ../src/yyget.c whoami.h ../src/0.h /usr/include/stdio.h 242yyget.o: /usr/include/sys/types.h ../src/tree_ty.h ../src/yy.h y.tab.h 243yyid.o: ../src/yyid.c whoami.h ../src/0.h /usr/include/stdio.h 244yyid.o: /usr/include/sys/types.h ../src/tree_ty.h ../src/yy.h y.tab.h 245yylex.o: ../src/yylex.c whoami.h ../src/0.h /usr/include/stdio.h 246yylex.o: /usr/include/sys/types.h ../src/tree_ty.h ../src/yy.h y.tab.h 247yymain.o: ../src/yymain.c whoami.h ../src/0.h /usr/include/stdio.h 248yymain.o: /usr/include/sys/types.h ../src/tree_ty.h ../src/yy.h y.tab.h 249yymain.o: /usr/include/a.out.h /usr/include/sys/exec.h ../src/objfmt.h 250yymain.o: /usr/include/signal.h /usr/include/machine/trap.h ../src/config.h 251yyoptions.o: ../src/yyoptions.c whoami.h ../src/0.h /usr/include/stdio.h 252yyoptions.o: /usr/include/sys/types.h ../src/tree_ty.h ../src/yy.h y.tab.h 253yypanic.o: ../src/yypanic.c whoami.h ../src/0.h /usr/include/stdio.h 254yypanic.o: /usr/include/sys/types.h ../src/tree_ty.h ../src/yy.h y.tab.h 255yyparse.o: ../src/yyparse.c whoami.h ../src/0.h /usr/include/stdio.h 256yyparse.o: /usr/include/sys/types.h ../src/tree_ty.h ../src/yy.h y.tab.h 257yyprint.o: ../src/yyprint.c whoami.h ../src/0.h /usr/include/stdio.h 258yyprint.o: /usr/include/sys/types.h ../src/tree_ty.h ../src/yy.h y.tab.h 259yyput.o: ../src/yyput.c whoami.h ../src/0.h /usr/include/stdio.h 260yyput.o: /usr/include/sys/types.h ../src/tree.h ../src/tree_ty.h ../src/yy.h 261yyput.o: y.tab.h 262yyrecover.o: ../src/yyrecover.c whoami.h ../src/0.h /usr/include/stdio.h 263yyrecover.o: /usr/include/sys/types.h ../src/tree_ty.h ../src/yy.h y.tab.h 264yyseman.o: ../src/yyseman.c whoami.h ../src/0.h /usr/include/stdio.h 265yyseman.o: /usr/include/sys/types.h ../src/tree_ty.h ../src/yy.h y.tab.h 266yytree.o: ../src/yytree.c whoami.h ../src/0.h /usr/include/stdio.h 267yytree.o: /usr/include/sys/types.h ../src/tree.h ../src/tree_ty.h 268p2put.o: ../src/p2put.c whoami.h ../src/0.h /usr/include/stdio.h 269p2put.o: /usr/include/sys/types.h ../src/objfmt.h /usr/include/pcc.h 270p2put.o: ../src/pc.h /usr/include/setjmp.h ../src/align.h ../src/tmps.h 271stab.o: ../src/stab.c whoami.h ../src/0.h /usr/include/stdio.h 272stab.o: /usr/include/sys/types.h ../src/objfmt.h ../src/yy.h y.tab.h 273stab.o: /usr/include/stab.h ../src/pstab.h ../src/pc.h /usr/include/setjmp.h 274pcproc.o: ../src/pcproc.c whoami.h ../src/0.h /usr/include/stdio.h 275pcproc.o: /usr/include/sys/types.h ../src/tree.h ../src/objfmt.h opcode.h 276pcproc.o: ../src/pc.h /usr/include/setjmp.h /usr/include/pcc.h ../src/tmps.h 277pcproc.o: ../src/tree_ty.h 278pcfunc.o: ../src/pcfunc.c whoami.h ../src/0.h /usr/include/stdio.h 279pcfunc.o: /usr/include/sys/types.h ../src/tree.h ../src/objfmt.h opcode.h 280pcfunc.o: ../src/pc.h /usr/include/setjmp.h /usr/include/pcc.h ../src/tmps.h 281pcfunc.o: ../src/tree_ty.h 282pccaseop.o: ../src/pccaseop.c whoami.h ../src/0.h /usr/include/stdio.h 283pccaseop.o: /usr/include/sys/types.h ../src/tree.h ../src/objfmt.h 284pccaseop.o: /usr/include/pcc.h ../src/pc.h /usr/include/setjmp.h ../src/tmps.h 285pccaseop.o: ../src/tree_ty.h 286pclval.o: ../src/pclval.c whoami.h ../src/0.h /usr/include/stdio.h 287pclval.o: /usr/include/sys/types.h ../src/tree.h opcode.h ../src/objfmt.h 288pclval.o: ../src/tree_ty.h ../src/pc.h /usr/include/setjmp.h /usr/include/pcc.h 289sconv.o: ../src/sconv.c whoami.h ../src/0.h /usr/include/stdio.h 290sconv.o: /usr/include/sys/types.h /usr/include/pcc.h 291 292# IF YOU PUT ANYTHING HERE IT WILL GO AWAY 293