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