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