1SCCSID = "@(#)pimakefile 1.36 02/06/83" 2 3INSTALLDIR = ${DESTDIR}/usr/ucb 4INSTALLNAME = ${INSTALLDIR}/pi 5BINDIR = ../pi 6SRCDIR = ../src 7WHOAMI = pi 8VERSION = 2.11 9DATE = 02/06/83 10 11MKSTR = /usr/ucb/mkstr 12EYACC = /usr/ucb/eyacc 13RM = -rm -f 14TOUCH = touch -f 15 16CFLAGS = -O -w 17LDFLAGS = -z 18 19LIBDIR = ${DESTDIR}/usr/lib 20TMPDIR = tmp 21 22ERRORSTRINGS = ${WHOAMI}${VERSION}strings 23OLDSTRINGS = ${WHOAMI}[0-9]*.[0-9]*strings 24HOWFILE = how_${WHOAMI} 25 26SRCS = ato.c \ 27 call.c case.c clas.c const.c conv.c cset.c \ 28 error.c fdec.c fend.c fhdr.c flvalue.c forop.c func.c gen.c hash.c \ 29 lab.c lookup.c lval.c stklval.c \ 30 main.c nl.c proc.c put.c \ 31 rec.c rval.c stkrval.c\ 32 savenl.c \ 33 stat.c string.c subr.c \ 34 tmps.c tree.c type.c var.c \ 35 TRdata.c \ 36 treen.c yycopy.c \ 37 yycosts.c yyerror.c yyget.c yyid.c yylex.c yymain.c yyoptions.c \ 38 yypanic.c yyparse.c yyprint.c yyput.c yyrecover.c yyseman.c yytree.c \ 39 p2put.c stab.c pcproc.c pcfunc.c pccaseop.c pclval.c sconv.c 40 41HDRS = 0.h OPnames.h align.h iorec.h objfmt.h pstab.h pc.h pcops.h \ 42 send.h tree.h whoami.h yy.h config.h 43 44OTHERS = pas.y opc.c CONFIG.c gram pic.c 45 46OBJS = ato.o \ 47 call.o case.o clas.o const.o conv.o cset.o \ 48 error.o fdec.o fend.o fhdr.o flvalue.o forop.o func.o gen.o hash.o \ 49 lab.o lookup.o lval.o stklval.o \ 50 main.o nl.o proc.o put.o \ 51 rec.o rval.o stkrval.o\ 52 savenl.o \ 53 stat.o string.o subr.o \ 54 tmps.o tree.o type.o var.o \ 55 TRdata.o \ 56 treen.o yycopy.o \ 57 yycosts.o yyerror.o yyget.o yyid.o yylex.o yymain.o yyoptions.o \ 58 yypanic.o yyparse.o yyprint.o yyput.o yyrecover.o yyseman.o yytree.o \ 59 p2put.o stab.o pcproc.o pcfunc.o pccaseop.o pclval.o sconv.o 60 61a.out: ${OBJS} y.tab.o config.c 62 ${CC} ${CFLAGS} ${LDFLAGS} ${OBJS} y.tab.o config.c 63 64${OBJS}: 65 ${RM} $*.c 66 cd ${SRCDIR}; ${MKSTR} - ${BINDIR}/${ERRORSTRINGS} ${BINDIR}/ $*.c 67 ${CC} ${CFLAGS} -I. -I${SRCDIR} -c $*.c 68 ${RM} $*.c 69 70y.tab.h: ${SRCDIR}/pas.y ${SRCDIR}/gram 71 ${RM} y.tab.h y.tab.c 72 ${EYACC} ${SRCDIR}/pas.y > /dev/null 73 ex - y.tab.c <${SRCDIR}/gram 74 @echo that makes y.tab.h and y.tab.c 75y.tab.o: y.tab.c y.tab.h 76 ${RM} x.y.tab.c 77 ${MKSTR} - ${ERRORSTRINGS} x. y.tab.c 78 ${CC} ${CFLAGS} -I${SRCDIR} -I. -c x.y.tab.c 79 mv x.y.tab.o y.tab.o 80 ${RM} x.y.tab.c 81 82picture: ${SRCDIR}/OPnames.h ${SRCDIR}/pic.c 83 ${RM} picture 84 cc ${SRCDIR}/pic.c -o pic 85 pic >picture 86 ${RM} pic 87 88opcode.h: ${SRCDIR}/OPnames.h ${SRCDIR}/opc.c 89 ${RM} opcode.h 90 cc ${SRCDIR}/opc.c -o opc 91 opc >opcode.h 92 ${RM} opc 93 94${SRCDIR}/0.h: 95 ${TOUCH} ${SRCDIR}/0.h 96 97config.c: ${SRCDIR}/CONFIG.c makefile 98 sed -e "s?VERSION?${VERSION}?g" \ 99 -e "s?DATE?${DATE}?g" \ 100 -e "s?INSTALLDIR?${INSTALLDIR}?g" \ 101 -e "s?LIBDIR?${LIBDIR}?g" \ 102 -e "s?ERRORSTRINGS?${ERRORSTRINGS}?g" \ 103 -e "s?HOWFILE?${HOWFILE}?g" \ 104 < ${SRCDIR}/CONFIG.c >config.c 105 106clean: 107 ${RM} *.o *.c 108 ${RM} y.tab.h y.tab.c y.tab.out 109 ${RM} ${WHOAMI}*strings 110 ${RM} config.c opcode.h picture 111 ${RM} a.out core *.list *.bak errs 112 ${RM} opc pic tags 113 114install: a.out 115 ${RM} ${LIBDIR}/${OLDSTRINGS} 116 install -c ${ERRORSTRINGS} ${LIBDIR}/${ERRORSTRINGS} 117 install -c a.out ${INSTALLNAME} 118 119depend: 120 ls ${SRCDIR}/*.c | sed \ 121 -e 's;^${SRCDIR}/\([a-zA-Z0-9]*\)\.c;\1.o: &;' >makedep 122 /bin/grep '^#[ ]*include' *.h ${SRCDIR}/*.h | sed \ 123 -e '/<.*>/d' \ 124 -e 's;\(.*\):[^"]*"\([^"]*\)".*;\1: \2;' >>makedep 125 /bin/grep '^#[ ]*include' ${SRCDIR}/*.c | sed \ 126 -e '/<.*>/d' \ 127 -e 's;:[^"]*"\([^"]*\)".*;: ${SRCDIR}/\1;' \ 128 -e 's;^${SRCDIR}/\([a-zA-Z0-9]*\)\.c;\1.o;' \ 129 -e 's;: ${SRCDIR}/whoami.h;: whoami.h;' \ 130 -e 's;: ${SRCDIR}/opcode.h;: opcode.h;' >>makedep 131 echo '/^# DO NOT DELETE THIS LINE/+2,$$d' >eddep 132 echo '$$r makedep' >>eddep 133 echo 'w' >>eddep 134 cp makefile makefile.bak 135 ed - makefile < eddep 136 rm eddep makedep 137 echo '# DEPENDENCIES MUST END AT END OF FILE' >> makefile 138 echo '# IF YOU PUT STUFF HERE IT WILL GO AWAY' >> makefile 139 echo '# see make depend above' >> makefile 140 141# DO NOT DELETE THIS LINE -- make depend uses it 142 143CONFIG.o: ../src/CONFIG.c 144TRdata.o: ../src/TRdata.c 145ato.o: ../src/ato.c 146call.o: ../src/call.c 147case.o: ../src/case.c 148clas.o: ../src/clas.c 149const.o: ../src/const.c 150conv.o: ../src/conv.c 151cset.o: ../src/cset.c 152error.o: ../src/error.c 153fdec.o: ../src/fdec.c 154fend.o: ../src/fend.c 155fhdr.o: ../src/fhdr.c 156flvalue.o: ../src/flvalue.c 157forop.o: ../src/forop.c 158func.o: ../src/func.c 159gen.o: ../src/gen.c 160hash.o: ../src/hash.c 161lab.o: ../src/lab.c 162lookup.o: ../src/lookup.c 163lval.o: ../src/lval.c 164main.o: ../src/main.c 165nl.o: ../src/nl.c 166opc.o: ../src/opc.c 167p2put.o: ../src/p2put.c 168pccaseop.o: ../src/pccaseop.c 169pcfunc.o: ../src/pcfunc.c 170pclval.o: ../src/pclval.c 171pcproc.o: ../src/pcproc.c 172pic.o: ../src/pic.c 173proc.o: ../src/proc.c 174put.o: ../src/put.c 175rec.o: ../src/rec.c 176rval.o: ../src/rval.c 177savenl.o: ../src/savenl.c 178sconv.o: ../src/sconv.c 179stab.o: ../src/stab.c 180stat.o: ../src/stat.c 181stklval.o: ../src/stklval.c 182stkrval.o: ../src/stkrval.c 183string.o: ../src/string.c 184subr.o: ../src/subr.c 185tmps.o: ../src/tmps.c 186tree.o: ../src/tree.c 187treen.o: ../src/treen.c 188type.o: ../src/type.c 189var.o: ../src/var.c 190yycopy.o: ../src/yycopy.c 191yycosts.o: ../src/yycosts.c 192yyerror.o: ../src/yyerror.c 193yyget.o: ../src/yyget.c 194yyid.o: ../src/yyid.c 195yylex.o: ../src/yylex.c 196yymain.o: ../src/yymain.c 197yyoptions.o: ../src/yyoptions.c 198yypanic.o: ../src/yypanic.c 199yyparse.o: ../src/yyparse.c 200yyprint.o: ../src/yyprint.c 201yyput.o: ../src/yyput.c 202yyrecover.o: ../src/yyrecover.c 203yyseman.o: ../src/yyseman.c 204yytree.o: ../src/yytree.c 205../src/yy.h: y.tab.h 206TRdata.o: whoami.h 207TRdata.o: ../src/0.h 208ato.o: whoami.h 209ato.o: ../src/0.h 210call.o: whoami.h 211call.o: ../src/0.h 212call.o: ../src/tree.h 213call.o: opcode.h 214call.o: ../src/objfmt.h 215call.o: ../src/pc.h 216call.o: ../src/pcops.h 217case.o: whoami.h 218case.o: ../src/0.h 219case.o: ../src/tree.h 220case.o: opcode.h 221clas.o: whoami.h 222clas.o: ../src/0.h 223clas.o: ../src/tree.h 224const.o: whoami.h 225const.o: ../src/0.h 226const.o: ../src/tree.h 227conv.o: whoami.h 228conv.o: ../src/0.h 229conv.o: opcode.h 230conv.o: ../src/pcops.h 231cset.o: whoami.h 232cset.o: ../src/0.h 233cset.o: ../src/tree.h 234cset.o: opcode.h 235cset.o: ../src/objfmt.h 236cset.o: ../src/pc.h 237cset.o: ../src/pcops.h 238cset.o: ../src/align.h 239error.o: whoami.h 240error.o: ../src/0.h 241error.o: ../src/yy.h 242fdec.o: whoami.h 243fdec.o: ../src/0.h 244fdec.o: ../src/tree.h 245fdec.o: opcode.h 246fdec.o: ../src/objfmt.h 247fdec.o: ../src/align.h 248fdec.o: ../src/pc.h 249fdec.o: ../src/pcops.h 250fend.o: whoami.h 251fend.o: ../src/0.h 252fend.o: ../src/tree.h 253fend.o: opcode.h 254fend.o: ../src/objfmt.h 255fend.o: ../src/align.h 256fend.o: ../src/pc.h 257fend.o: ../src/pcops.h 258fhdr.o: whoami.h 259fhdr.o: ../src/0.h 260fhdr.o: ../src/tree.h 261fhdr.o: opcode.h 262fhdr.o: ../src/objfmt.h 263fhdr.o: ../src/align.h 264fhdr.o: ../src/pc.h 265fhdr.o: ../src/pcops.h 266flvalue.o: whoami.h 267flvalue.o: ../src/0.h 268flvalue.o: ../src/tree.h 269flvalue.o: opcode.h 270flvalue.o: ../src/objfmt.h 271flvalue.o: ../src/pc.h 272flvalue.o: ../src/pcops.h 273forop.o: whoami.h 274forop.o: ../src/0.h 275forop.o: opcode.h 276forop.o: ../src/tree.h 277forop.o: ../src/objfmt.h 278forop.o: ../src/pc.h 279forop.o: ../src/pcops.h 280func.o: whoami.h 281func.o: ../src/0.h 282func.o: ../src/tree.h 283func.o: opcode.h 284gen.o: whoami.h 285gen.o: ../src/0.h 286gen.o: ../src/tree.h 287gen.o: opcode.h 288gen.o: ../src/objfmt.h 289hash.o: whoami.h 290hash.o: ../src/0.h 291hash.o: ../src/yy.h 292lab.o: whoami.h 293lab.o: ../src/0.h 294lab.o: ../src/tree.h 295lab.o: opcode.h 296lab.o: ../src/objfmt.h 297lab.o: ../src/pc.h 298lab.o: ../src/pcops.h 299lookup.o: whoami.h 300lookup.o: ../src/0.h 301lval.o: whoami.h 302lval.o: ../src/0.h 303lval.o: ../src/tree.h 304lval.o: opcode.h 305lval.o: ../src/objfmt.h 306lval.o: ../src/pc.h 307lval.o: ../src/pcops.h 308main.o: whoami.h 309main.o: ../src/0.h 310main.o: ../src/yy.h 311main.o: ../src/objfmt.h 312main.o: ../src/config.h 313nl.o: whoami.h 314nl.o: ../src/0.h 315nl.o: opcode.h 316nl.o: ../src/objfmt.h 317opc.o: ../src/OPnames.h 318p2put.o: whoami.h 319p2put.o: ../src/0.h 320p2put.o: ../src/objfmt.h 321p2put.o: ../src/pcops.h 322p2put.o: ../src/pc.h 323p2put.o: ../src/align.h 324pccaseop.o: whoami.h 325pccaseop.o: ../src/0.h 326pccaseop.o: ../src/tree.h 327pccaseop.o: ../src/objfmt.h 328pccaseop.o: ../src/pcops.h 329pccaseop.o: ../src/pc.h 330pcfunc.o: whoami.h 331pcfunc.o: ../src/0.h 332pcfunc.o: ../src/tree.h 333pcfunc.o: ../src/objfmt.h 334pcfunc.o: opcode.h 335pcfunc.o: ../src/pc.h 336pcfunc.o: ../src/pcops.h 337pclval.o: whoami.h 338pclval.o: ../src/0.h 339pclval.o: ../src/tree.h 340pclval.o: opcode.h 341pclval.o: ../src/objfmt.h 342pclval.o: ../src/pc.h 343pclval.o: ../src/pcops.h 344pcproc.o: whoami.h 345pcproc.o: ../src/0.h 346pcproc.o: ../src/tree.h 347pcproc.o: ../src/objfmt.h 348pcproc.o: opcode.h 349pcproc.o: ../src/pc.h 350pcproc.o: ../src/pcops.h 351pic.o: ../src/OPnames.h 352proc.o: whoami.h 353proc.o: ../src/0.h 354proc.o: ../src/tree.h 355proc.o: opcode.h 356proc.o: ../src/objfmt.h 357put.o: whoami.h 358put.o: opcode.h 359put.o: ../src/0.h 360put.o: ../src/objfmt.h 361put.o: ../src/pc.h 362put.o: ../src/align.h 363put.o: ../src/OPnames.h 364rec.o: whoami.h 365rec.o: ../src/0.h 366rec.o: ../src/tree.h 367rec.o: opcode.h 368rec.o: ../src/align.h 369rval.o: whoami.h 370rval.o: ../src/0.h 371rval.o: ../src/tree.h 372rval.o: opcode.h 373rval.o: ../src/objfmt.h 374rval.o: ../src/pc.h 375rval.o: ../src/pcops.h 376savenl.o: whoami.h 377savenl.o: ../src/0.h 378savenl.o: ../src/objfmt.h 379savenl.o: ../src/../pdx/defs.h 380savenl.o: ../src/../pdx/object.h 381savenl.o: ../src/../pdx/object/objsym.rep 382savenl.o: ../src/../pdx/mappings.h 383savenl.o: ../src/../pdx/mappings/filetab.h 384sconv.o: whoami.h 385sconv.o: ../src/0.h 386sconv.o: ../src/pcops.h 387stab.o: whoami.h 388stab.o: ../src/0.h 389stab.o: ../src/objfmt.h 390stab.o: ../src/pstab.h 391stab.o: ../src/pc.h 392stat.o: whoami.h 393stat.o: ../src/0.h 394stat.o: ../src/tree.h 395stat.o: ../src/objfmt.h 396stat.o: ../src/pcops.h 397stat.o: ../src/pc.h 398stat.o: opcode.h 399stklval.o: whoami.h 400stklval.o: ../src/0.h 401stklval.o: ../src/tree.h 402stklval.o: opcode.h 403stklval.o: ../src/objfmt.h 404stkrval.o: whoami.h 405stkrval.o: ../src/0.h 406stkrval.o: ../src/tree.h 407stkrval.o: opcode.h 408stkrval.o: ../src/objfmt.h 409stkrval.o: ../src/pcops.h 410string.o: whoami.h 411string.o: ../src/0.h 412string.o: ../src/send.h 413subr.o: whoami.h 414subr.o: ../src/0.h 415tmps.o: whoami.h 416tmps.o: ../src/0.h 417tmps.o: ../src/objfmt.h 418tmps.o: ../src/pc.h 419tree.o: whoami.h 420tree.o: ../src/0.h 421type.o: whoami.h 422type.o: ../src/0.h 423type.o: ../src/tree.h 424type.o: ../src/objfmt.h 425var.o: whoami.h 426var.o: ../src/0.h 427var.o: ../src/objfmt.h 428var.o: ../src/align.h 429var.o: ../src/iorec.h 430var.o: ../src/pc.h 431var.o: ../src/pcops.h 432yycopy.o: ../src/0.h 433yycopy.o: ../src/yy.h 434yycosts.o: whoami.h 435yycosts.o: ../src/0.h 436yycosts.o: ../src/yy.h 437yyerror.o: whoami.h 438yyerror.o: ../src/0.h 439yyerror.o: ../src/yy.h 440yyget.o: whoami.h 441yyget.o: ../src/0.h 442yyget.o: ../src/yy.h 443yyid.o: whoami.h 444yyid.o: ../src/0.h 445yyid.o: ../src/yy.h 446yylex.o: whoami.h 447yylex.o: ../src/0.h 448yylex.o: ../src/yy.h 449yymain.o: whoami.h 450yymain.o: ../src/0.h 451yymain.o: ../src/yy.h 452yymain.o: ../src/objfmt.h 453yymain.o: ../src/config.h 454yyoptions.o: whoami.h 455yyoptions.o: ../src/0.h 456yyoptions.o: ../src/yy.h 457yypanic.o: whoami.h 458yypanic.o: ../src/0.h 459yypanic.o: ../src/yy.h 460yyparse.o: whoami.h 461yyparse.o: ../src/0.h 462yyparse.o: ../src/yy.h 463yyprint.o: whoami.h 464yyprint.o: ../src/0.h 465yyprint.o: ../src/yy.h 466yyput.o: whoami.h 467yyput.o: ../src/0.h 468yyput.o: ../src/tree.h 469yyput.o: ../src/yy.h 470yyrecover.o: whoami.h 471yyrecover.o: ../src/0.h 472yyrecover.o: ../src/yy.h 473yyseman.o: whoami.h 474yyseman.o: ../src/0.h 475yyseman.o: ../src/yy.h 476yytree.o: whoami.h 477yytree.o: ../src/0.h 478yytree.o: ../src/tree.h 479# DEPENDENCIES MUST END AT END OF FILE 480# IF YOU PUT STUFF HERE IT WILL GO AWAY 481# see make depend above 482