1SCCSID = "@(#)pimakefile 1.10 10/06/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 flvalue.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 flvalue.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 174flvalue.o: whoami.h 175flvalue.o: 0.h 176flvalue.o: tree.h 177flvalue.o: opcode.h 178flvalue.o: objfmt.h 179flvalue.o: pc.h 180flvalue.o: pcops.h 181func.o: whoami.h 182func.o: 0.h 183func.o: tree.h 184func.o: opcode.h 185gen.o: whoami.h 186gen.o: 0.h 187gen.o: tree.h 188gen.o: opcode.h 189gen.o: objfmt.h 190hash.o: whoami.h 191hash.o: 0.h 192hash.o: yy.h 193lab.o: whoami.h 194lab.o: 0.h 195lab.o: tree.h 196lab.o: opcode.h 197lab.o: objfmt.h 198lab.o: pc.h 199lab.o: pcops.h 200lookup.o: whoami.h 201lookup.o: 0.h 202lval.o: whoami.h 203lval.o: 0.h 204lval.o: tree.h 205lval.o: opcode.h 206lval.o: objfmt.h 207lval.o: pc.h 208lval.o: pcops.h 209main.o: whoami.h 210main.o: 0.h 211main.o: yy.h 212main.o: objfmt.h 213nl.o: whoami.h 214nl.o: 0.h 215nl.o: opcode.h 216nl.o: objfmt.h 217opc.o: OPnames.h 218p2put.o: whoami.h 219p2put.o: 0.h 220p2put.o: pcops.h 221p2put.o: pc.h 222pccaseop.o: whoami.h 223pccaseop.o: 0.h 224pccaseop.o: tree.h 225pccaseop.o: objfmt.h 226pccaseop.o: pcops.h 227pccaseop.o: pc.h 228pcforop.o: whoami.h 229pcforop.o: 0.h 230pcforop.o: opcode.h 231pcforop.o: tree.h 232pcforop.o: pc.h 233pcforop.o: pcops.h 234pcfunc.o: whoami.h 235pcfunc.o: 0.h 236pcfunc.o: tree.h 237pcfunc.o: opcode.h 238pcfunc.o: pc.h 239pcfunc.o: pcops.h 240pclval.o: whoami.h 241pclval.o: 0.h 242pclval.o: tree.h 243pclval.o: opcode.h 244pclval.o: objfmt.h 245pclval.o: pc.h 246pclval.o: pcops.h 247pcproc.o: whoami.h 248pcproc.o: 0.h 249pcproc.o: tree.h 250pcproc.o: opcode.h 251pcproc.o: pc.h 252pcproc.o: pcops.h 253pic.o: OPnames.h 254proc.o: whoami.h 255proc.o: 0.h 256proc.o: tree.h 257proc.o: opcode.h 258proc.o: objfmt.h 259put.o: whoami.h 260put.o: opcode.h 261put.o: 0.h 262put.o: objfmt.h 263put.o: pc.h 264put.o: OPnames.h 265rec.o: whoami.h 266rec.o: 0.h 267rec.o: tree.h 268rec.o: opcode.h 269rval.o: whoami.h 270rval.o: 0.h 271rval.o: tree.h 272rval.o: opcode.h 273rval.o: objfmt.h 274rval.o: pc.h 275rval.o: pcops.h 276stab.o: whoami.h 277stab.o: 0.h 278stab.o: pstab.h 279stab.o: pc.h 280stat.o: whoami.h 281stat.o: 0.h 282stat.o: tree.h 283stat.o: objfmt.h 284stat.o: pcops.h 285stat.o: pc.h 286stat.o: opcode.h 287stklval.o: whoami.h 288stklval.o: 0.h 289stklval.o: tree.h 290stklval.o: opcode.h 291stklval.o: objfmt.h 292stkrval.o: whoami.h 293stkrval.o: 0.h 294stkrval.o: tree.h 295stkrval.o: opcode.h 296stkrval.o: objfmt.h 297stkrval.o: pcops.h 298string.o: whoami.h 299string.o: 0.h 300string.o: send.h 301subr.o: whoami.h 302subr.o: 0.h 303tree.o: whoami.h 304tree.o: 0.h 305type.o: whoami.h 306type.o: 0.h 307type.o: tree.h 308type.o: objfmt.h 309var.o: whoami.h 310var.o: 0.h 311var.o: align.h 312var.o: pc.h 313var.o: pcops.h 314var.o: iorec.h 315y.tab.o: whoami.h 316y.tab.o: 0.h 317y.tab.o: yy.h 318y.tab.o: tree.h 319yycopy.o: 0.h 320yycopy.o: yy.h 321yycosts.o: whoami.h 322yycosts.o: 0.h 323yycosts.o: yy.h 324yyerror.o: whoami.h 325yyerror.o: 0.h 326yyerror.o: yy.h 327yyget.o: whoami.h 328yyget.o: 0.h 329yyget.o: yy.h 330yyid.o: whoami.h 331yyid.o: 0.h 332yyid.o: yy.h 333yylex.o: whoami.h 334yylex.o: 0.h 335yylex.o: yy.h 336yymain.o: whoami.h 337yymain.o: 0.h 338yymain.o: yy.h 339yymain.o: objfmt.h 340yyoptions.o: whoami.h 341yyoptions.o: 0.h 342yyoptions.o: yy.h 343yypanic.o: whoami.h 344yypanic.o: 0.h 345yypanic.o: yy.h 346yyparse.o: whoami.h 347yyparse.o: 0.h 348yyparse.o: yy.h 349yyprint.o: whoami.h 350yyprint.o: 0.h 351yyprint.o: yy.h 352yyput.o: whoami.h 353yyput.o: 0.h 354yyput.o: tree.h 355yyput.o: yy.h 356yyrecover.o: whoami.h 357yyrecover.o: 0.h 358yyrecover.o: yy.h 359yyseman.o: whoami.h 360yyseman.o: 0.h 361yyseman.o: yy.h 362yytree.o: whoami.h 363yytree.o: 0.h 364yytree.o: tree.h 365# DEPENDENCIES MUST END AT END OF FILE 366# IF YOU PUT STUFF HERE IT WILL GO AWAY 367# see make depend above 368