1SCCSID = "@(#)Makefile 1.8 09/09/80" 2 3MKSTR = /usr/ucb/mkstr 4EYACC = /usr/ucb/eyacc 5RM = -rm -f 6GET = sccs get 7 8CFLAGS = -O -w 9LDFLAGS = -z 10 11INSTALLDIR = /usr/lib 12LIBDIR = /usr/lib 13TMPDIR = tmp 14 15ERRORSTRINGS = pc2.0strings 16 17SRCS = ato.c \ 18 call.c case.c clas.c const.c conv.c cset.c \ 19 error.c fdec.c func.c gen.c hash.c \ 20 lab.c lookup.c lval.c stklval.c \ 21 main.c nl.c proc.c put.c \ 22 rec.c rval.c stkrval.c\ 23 stat.c string.c subr.c \ 24 tree.c type.c var.c \ 25 TRdata.c \ 26 treen.c putn.c yycopy.c \ 27 yycosts.c yyerror.c yyget.c yyid.c yylex.c yymain.c yyoptions.c \ 28 yypanic.c yyparse.c yyprint.c yyput.c yyrecover.c yyseman.c yytree.c \ 29 p2put.c pcforop.c stab.c pcproc.c pcfunc.c pccaseop.c pclval.c 30 31HDRS = 0.h OPnames.h align.h iorec.h objfmt.h pstab.h pc.h pcops.h \ 32 send.h tree.h whoami.h yy.h 33 34OTHERS = pas.y opc.c version.c gram pic.c 35 36OBJS = ato.o \ 37 call.o case.o clas.o const.o conv.o cset.o \ 38 error.o fdec.o func.o gen.o hash.o \ 39 lab.o lookup.o lval.o stklval.o \ 40 main.o nl.o proc.o put.o \ 41 rec.o rval.o stkrval.o\ 42 stat.o string.o subr.o \ 43 tree.o type.o var.o \ 44 TRdata.o \ 45 treen.o putn.o yycopy.o \ 46 y.tab.o \ 47 yycosts.o yyerror.o yyget.o yyid.o yylex.o yymain.o yyoptions.o \ 48 yypanic.o yyparse.o yyprint.o yyput.o yyrecover.o yyseman.o yytree.o \ 49 p2put.o pcforop.o stab.o pcproc.o pcfunc.o pccaseop.o pclval.o 50 51a.out: ${OBJS} version 52 ./version > Version.c 53 ${CC} ${CFLAGS} ${LDFLAGS} ${OBJS} Version.c 54 55sources: ${SRCS} ${HDRS} ${OTHERS} 56 57${SRCS} ${HDRS} ${OTHERS}: 58 ${GET} ${REL} $@ 59 60.c.o: 61 ${RM} ${TMPDIR}/$*.c 62 ${MKSTR} - ${ERRORSTRINGS} ${TMPDIR}/ $*.c 63 cd ${TMPDIR} ; ${CC} ${CFLAGS} -I.. -c $*.c ; mv $*.o ../$*.o 64 ${RM} ${TMPDIR}/$*.c 65 66y.tab.h: pas.y gram 67 ${EYACC} pas.y > /dev/null 68 ex - y.tab.c <gram 69 @echo that makes y.tab.h and y.tab.c 70 71opcode.h: OPnames.h opc.c 72 cc opc.c -o opc 73 opc >opcode.h 74 ${RM} opc 75 76pTree.h: 77 echo "/* this is not pTree.h */" > pTree.h 78 79version: version.c 80 ${CC} version.c -o version 81 82clean: 83 ${RM} *.o ${TMPDIR}/*.c 84 ${RM} y.tab.h y.tab.c y.tab.out 85 ${RM} ${ERRORSTRINGS} 86 ${RM} version Version.c 87 ${RM} a.out core *.list *.bak 88 ${RM} opc.c opc pic tags 89 sccs clean 90 91print: sources 92 @pr makefile READ_ME 93 @ls -ls | pr 94 @cc -o pic pic.c 95 @pic | pr 96 @rm pic 97 @pr 0.h whoami.h main.c pas.y 98 @pr OPnames.h opcode.h tree.h 99 @pr pc.h 100 @pr [a-ln-x]*.c 101 @pr yy.h yy*.c 102 103install: a.out 104 sccs check 105 cp ${ERRORSTRINGS} ${LIBDIR}/${ERRORSTRINGS} 106 cp ${INSTALLDIR}/pc0 ${INSTALLDIR}/pc0.bak 107 cp a.out ${INSTALLDIR}/pc0 108 109depend: sources 110 /bin/grep '^#[ ]*include' *.h \ 111 | sed '/<.*>/d' \ 112 | sed 's/\(.*\):[^"]*"\([^"]*\)".*/\1: \2/' >makedep 113 /bin/grep '^#[ ]*include' *.c \ 114 | sed '/<.*>/d' \ 115 | sed 's/:[^"]*"\([^"]*\)".*/: \1/' \ 116 | sed 's/\.c/.o/' >>makedep 117 echo '/^# DO NOT DELETE THIS LINE/+2,$$d' >eddep 118 echo '$$r makedep' >>eddep 119 echo 'w' >>eddep 120 cp makefile makefile.bak 121 ed - makefile < eddep 122 rm eddep makedep 123 echo '# DEPENDENCIES MUST END AT END OF FILE' >> makefile 124 echo '# IF YOU PUT STUFF HERE IT WILL GO AWAY' >> makefile 125 echo '# see make depend above' >> makefile 126 127# DO NOT DELETE THIS LINE -- make depend uses it 128 1290.h: pTree.h 130yy.h: y.tab.h 131TRdata.o: whoami.h 132TRdata.o: 0.h 133ato.o: whoami.h 134ato.o: 0.h 135call.o: whoami.h 136call.o: 0.h 137call.o: tree.h 138call.o: opcode.h 139call.o: objfmt.h 140call.o: pc.h 141call.o: pcops.h 142case.o: whoami.h 143case.o: 0.h 144case.o: tree.h 145case.o: opcode.h 146clas.o: whoami.h 147clas.o: 0.h 148clas.o: tree.h 149const.o: whoami.h 150const.o: 0.h 151const.o: tree.h 152conv.o: whoami.h 153conv.o: 0.h 154conv.o: opcode.h 155conv.o: pcops.h 156cset.o: whoami.h 157cset.o: 0.h 158cset.o: tree.h 159cset.o: opcode.h 160cset.o: objfmt.h 161cset.o: pc.h 162cset.o: pcops.h 163error.o: whoami.h 164error.o: 0.h 165error.o: yy.h 166fdec.o: whoami.h 167fdec.o: 0.h 168fdec.o: tree.h 169fdec.o: opcode.h 170fdec.o: objfmt.h 171fdec.o: align.h 172fdec.o: pc.h 173fdec.o: pcops.h 174func.o: whoami.h 175func.o: 0.h 176func.o: tree.h 177func.o: opcode.h 178gen.o: whoami.h 179gen.o: 0.h 180gen.o: tree.h 181gen.o: opcode.h 182gen.o: objfmt.h 183hash.o: whoami.h 184hash.o: 0.h 185hash.o: yy.h 186lab.o: whoami.h 187lab.o: 0.h 188lab.o: tree.h 189lab.o: opcode.h 190lab.o: objfmt.h 191lab.o: pc.h 192lab.o: pcops.h 193lookup.o: whoami.h 194lookup.o: 0.h 195lval.o: whoami.h 196lval.o: 0.h 197lval.o: tree.h 198lval.o: opcode.h 199lval.o: objfmt.h 200lval.o: pc.h 201lval.o: pcops.h 202main.o: whoami.h 203main.o: 0.h 204main.o: yy.h 205main.o: objfmt.h 206nl.o: whoami.h 207nl.o: 0.h 208nl.o: opcode.h 209nl.o: objfmt.h 210opc.o: OPnames.h 211p2put.o: whoami.h 212p2put.o: 0.h 213p2put.o: pcops.h 214p2put.o: pc.h 215pccaseop.o: whoami.h 216pccaseop.o: 0.h 217pccaseop.o: tree.h 218pccaseop.o: objfmt.h 219pccaseop.o: pcops.h 220pccaseop.o: pc.h 221pcforop.o: whoami.h 222pcforop.o: 0.h 223pcforop.o: opcode.h 224pcforop.o: tree.h 225pcforop.o: pc.h 226pcforop.o: pcops.h 227pcfunc.o: whoami.h 228pcfunc.o: 0.h 229pcfunc.o: tree.h 230pcfunc.o: opcode.h 231pcfunc.o: pc.h 232pcfunc.o: pcops.h 233pclval.o: whoami.h 234pclval.o: 0.h 235pclval.o: tree.h 236pclval.o: opcode.h 237pclval.o: objfmt.h 238pclval.o: pc.h 239pclval.o: pcops.h 240pcproc.o: whoami.h 241pcproc.o: 0.h 242pcproc.o: tree.h 243pcproc.o: opcode.h 244pcproc.o: pc.h 245pcproc.o: pcops.h 246pic.o: OPnames.h 247proc.o: whoami.h 248proc.o: 0.h 249proc.o: tree.h 250proc.o: opcode.h 251proc.o: objfmt.h 252put.o: whoami.h 253put.o: opcode.h 254put.o: 0.h 255put.o: objfmt.h 256put.o: pc.h 257put.o: OPnames.h 258rec.o: whoami.h 259rec.o: 0.h 260rec.o: tree.h 261rec.o: opcode.h 262rval.o: whoami.h 263rval.o: 0.h 264rval.o: tree.h 265rval.o: opcode.h 266rval.o: objfmt.h 267rval.o: pc.h 268rval.o: pcops.h 269stab.o: whoami.h 270stab.o: 0.h 271stab.o: pstab.h 272stab.o: pc.h 273stat.o: whoami.h 274stat.o: 0.h 275stat.o: tree.h 276stat.o: objfmt.h 277stat.o: pcops.h 278stat.o: pc.h 279stat.o: opcode.h 280stklval.o: whoami.h 281stklval.o: 0.h 282stklval.o: tree.h 283stklval.o: opcode.h 284stklval.o: objfmt.h 285stkrval.o: whoami.h 286stkrval.o: 0.h 287stkrval.o: tree.h 288stkrval.o: opcode.h 289stkrval.o: objfmt.h 290stkrval.o: pcops.h 291string.o: whoami.h 292string.o: 0.h 293string.o: send.h 294subr.o: whoami.h 295subr.o: 0.h 296tree.o: whoami.h 297tree.o: 0.h 298type.o: whoami.h 299type.o: 0.h 300type.o: tree.h 301type.o: objfmt.h 302var.o: whoami.h 303var.o: 0.h 304var.o: align.h 305var.o: pc.h 306var.o: pcops.h 307var.o: iorec.h 308y.tab.o: whoami.h 309y.tab.o: 0.h 310y.tab.o: yy.h 311y.tab.o: tree.h 312yycopy.o: 0.h 313yycopy.o: yy.h 314yycosts.o: whoami.h 315yycosts.o: 0.h 316yycosts.o: yy.h 317yyerror.o: whoami.h 318yyerror.o: 0.h 319yyerror.o: yy.h 320yyget.o: whoami.h 321yyget.o: 0.h 322yyget.o: yy.h 323yyid.o: whoami.h 324yyid.o: 0.h 325yyid.o: yy.h 326yylex.o: whoami.h 327yylex.o: 0.h 328yylex.o: yy.h 329yymain.o: whoami.h 330yymain.o: 0.h 331yymain.o: yy.h 332yymain.o: objfmt.h 333yyoptions.o: whoami.h 334yyoptions.o: 0.h 335yyoptions.o: yy.h 336yypanic.o: whoami.h 337yypanic.o: 0.h 338yypanic.o: yy.h 339yyparse.o: whoami.h 340yyparse.o: 0.h 341yyparse.o: yy.h 342yyprint.o: whoami.h 343yyprint.o: 0.h 344yyprint.o: yy.h 345yyput.o: whoami.h 346yyput.o: 0.h 347yyput.o: tree.h 348yyput.o: yy.h 349yyrecover.o: whoami.h 350yyrecover.o: 0.h 351yyrecover.o: yy.h 352yyseman.o: whoami.h 353yyseman.o: 0.h 354yyseman.o: yy.h 355yytree.o: whoami.h 356yytree.o: 0.h 357yytree.o: tree.h 358# DEPENDENCIES MUST END AT END OF FILE 359# IF YOU PUT STUFF HERE IT WILL GO AWAY 360# see make depend above 361