1SCCSID = "@(#)pimakefile 1.3 08/27/80" 2 3MKSTR = /usr/ucb/mkstr 4EYACC = /usr/ucb/eyacc 5RM = -rm 6GET = sccs get 7 8CFLAGS = -O -w 9LDFLAGS = -z 10 11INSTALLDIR = /usr/new 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 p.a.out.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 -f ${TMPDIR}/$*.c 62 ${MKSTR} - ${ERRORSTRINGS} ${TMPDIR}/ $*.c 63 cd ${TMPDIR} ; ${CC} ${CFLAGS} -I.. -c $*.c ; mv $*.o ../$*.o 64 rm -f ${TMPDIR}/$*.c 65 66y.tab.h: pas.y gram 67 ${EYACC} pas.y > y.tab.out 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 opc.c 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 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 cp ${ERRORSTRINGS} ${LIBDIR}/${ERRORSTRINGS} 105 -mv ${INSTALLDIR}/pc0 ${INSTALLDIR}/pc0.bak 106 cp a.out ${INSTALLDIR}/pc0 107 108depend: sources 109 /bin/grep '^#[ ]*include' *.h \ 110 | sed '/<.*>/d' \ 111 | sed 's/\(.*\):[^"]*"\([^"]*\)".*/\1: \2/' >makedep 112 /bin/grep '^#[ ]*include' *.c \ 113 | sed '/<.*>/d' \ 114 | sed 's/:[^"]*"\([^"]*\)".*/: \1/' \ 115 | sed 's/\.c/.o/' >>makedep 116 echo '/^# DO NOT DELETE THIS LINE/+2,$$d' >eddep 117 echo '$$r makedep' >>eddep 118 echo 'w' >>eddep 119 cp makefile makefile.bak 120 ed - makefile < eddep 121 rm eddep makedep 122 echo '# DEPENDENCIES MUST END AT END OF FILE' >> makefile 123 echo '# IF YOU PUT STUFF HERE IT WILL GO AWAY' >> makefile 124 echo '# see make depend above' >> makefile 125 126# DO NOT DELETE THIS LINE -- make depend uses it 127 1280.h: pTree.h 129yy.h: y.tab.h 130TRdata.o: whoami.h 131TRdata.o: 0.h 132ato.o: whoami.h 133ato.o: 0.h 134call.o: whoami.h 135call.o: 0.h 136call.o: tree.h 137call.o: opcode.h 138call.o: objfmt.h 139call.o: pc.h 140call.o: pcops.h 141case.o: whoami.h 142case.o: 0.h 143case.o: tree.h 144case.o: opcode.h 145clas.o: whoami.h 146clas.o: 0.h 147clas.o: tree.h 148const.o: whoami.h 149const.o: 0.h 150const.o: tree.h 151conv.o: whoami.h 152conv.o: 0.h 153conv.o: opcode.h 154conv.o: pcops.h 155cset.o: whoami.h 156cset.o: 0.h 157cset.o: tree.h 158cset.o: opcode.h 159cset.o: objfmt.h 160cset.o: pc.h 161cset.o: pcops.h 162error.o: whoami.h 163error.o: 0.h 164error.o: yy.h 165fdec.o: whoami.h 166fdec.o: 0.h 167fdec.o: tree.h 168fdec.o: opcode.h 169fdec.o: objfmt.h 170fdec.o: align.h 171fdec.o: pc.h 172fdec.o: pcops.h 173func.o: whoami.h 174func.o: 0.h 175func.o: tree.h 176func.o: opcode.h 177gen.o: whoami.h 178gen.o: 0.h 179gen.o: tree.h 180gen.o: opcode.h 181gen.o: objfmt.h 182hash.o: whoami.h 183hash.o: 0.h 184hash.o: yy.h 185lab.o: whoami.h 186lab.o: 0.h 187lab.o: tree.h 188lab.o: opcode.h 189lab.o: objfmt.h 190lab.o: pc.h 191lab.o: pcops.h 192lookup.o: whoami.h 193lookup.o: 0.h 194lval.o: whoami.h 195lval.o: 0.h 196lval.o: tree.h 197lval.o: opcode.h 198lval.o: objfmt.h 199lval.o: pc.h 200lval.o: pcops.h 201main.o: whoami.h 202main.o: 0.h 203main.o: yy.h 204main.o: objfmt.h 205nl.o: whoami.h 206nl.o: 0.h 207nl.o: opcode.h 208nl.o: objfmt.h 209opc.o: OPnames.h 210p2put.o: whoami.h 211p2put.o: 0.h 212p2put.o: pcops.h 213p2put.o: pc.h 214pccaseop.o: whoami.h 215pccaseop.o: 0.h 216pccaseop.o: tree.h 217pccaseop.o: objfmt.h 218pccaseop.o: pcops.h 219pccaseop.o: pc.h 220pcforop.o: whoami.h 221pcforop.o: 0.h 222pcforop.o: opcode.h 223pcforop.o: tree.h 224pcforop.o: pc.h 225pcforop.o: pcops.h 226pcfunc.o: whoami.h 227pcfunc.o: 0.h 228pcfunc.o: tree.h 229pcfunc.o: opcode.h 230pcfunc.o: pc.h 231pcfunc.o: pcops.h 232pclval.o: whoami.h 233pclval.o: 0.h 234pclval.o: tree.h 235pclval.o: opcode.h 236pclval.o: objfmt.h 237pclval.o: pc.h 238pclval.o: pcops.h 239pcproc.o: whoami.h 240pcproc.o: 0.h 241pcproc.o: tree.h 242pcproc.o: opcode.h 243pcproc.o: pc.h 244pcproc.o: pcops.h 245pic.o: OPnames.h 246proc.o: whoami.h 247proc.o: 0.h 248proc.o: tree.h 249proc.o: opcode.h 250proc.o: objfmt.h 251put.o: whoami.h 252put.o: opcode.h 253put.o: 0.h 254put.o: objfmt.h 255put.o: pc.h 256put.o: OPnames.h 257rec.o: whoami.h 258rec.o: 0.h 259rec.o: tree.h 260rec.o: opcode.h 261rval.o: whoami.h 262rval.o: 0.h 263rval.o: tree.h 264rval.o: opcode.h 265rval.o: objfmt.h 266rval.o: pc.h 267rval.o: pcops.h 268stab.o: whoami.h 269stab.o: 0.h 270stab.o: p.a.out.h 271stab.o: pc.h 272stat.o: whoami.h 273stat.o: 0.h 274stat.o: tree.h 275stat.o: objfmt.h 276stat.o: pcops.h 277stat.o: pc.h 278stat.o: opcode.h 279stklval.o: whoami.h 280stklval.o: 0.h 281stklval.o: tree.h 282stklval.o: opcode.h 283stklval.o: objfmt.h 284stkrval.o: whoami.h 285stkrval.o: 0.h 286stkrval.o: tree.h 287stkrval.o: opcode.h 288stkrval.o: objfmt.h 289stkrval.o: pcops.h 290string.o: whoami.h 291string.o: 0.h 292string.o: send.h 293subr.o: whoami.h 294subr.o: 0.h 295tree.o: whoami.h 296tree.o: 0.h 297type.o: whoami.h 298type.o: 0.h 299type.o: tree.h 300type.o: objfmt.h 301var.o: whoami.h 302var.o: 0.h 303var.o: align.h 304var.o: pc.h 305var.o: pcops.h 306var.o: iorec.h 307y.tab.o: whoami.h 308y.tab.o: 0.h 309y.tab.o: yy.h 310y.tab.o: tree.h 311yycopy.o: 0.h 312yycopy.o: yy.h 313yycosts.o: whoami.h 314yycosts.o: 0.h 315yycosts.o: yy.h 316yyerror.o: whoami.h 317yyerror.o: 0.h 318yyerror.o: yy.h 319yyget.o: whoami.h 320yyget.o: 0.h 321yyget.o: yy.h 322yyid.o: whoami.h 323yyid.o: 0.h 324yyid.o: yy.h 325yylex.o: whoami.h 326yylex.o: 0.h 327yylex.o: yy.h 328yymain.o: whoami.h 329yymain.o: 0.h 330yymain.o: yy.h 331yymain.o: objfmt.h 332yyoptions.o: whoami.h 333yyoptions.o: 0.h 334yyoptions.o: yy.h 335yypanic.o: whoami.h 336yypanic.o: 0.h 337yypanic.o: yy.h 338yyparse.o: whoami.h 339yyparse.o: 0.h 340yyparse.o: yy.h 341yyprint.o: whoami.h 342yyprint.o: 0.h 343yyprint.o: yy.h 344yyput.o: whoami.h 345yyput.o: 0.h 346yyput.o: tree.h 347yyput.o: yy.h 348yyrecover.o: whoami.h 349yyrecover.o: 0.h 350yyrecover.o: yy.h 351yyseman.o: whoami.h 352yyseman.o: 0.h 353yyseman.o: yy.h 354yytree.o: whoami.h 355yytree.o: 0.h 356yytree.o: tree.h 357# DEPENDENCIES MUST END AT END OF FILE 358# IF YOU PUT STUFF HERE IT WILL GO AWAY 359# see make depend above 360