1SCCSID = "@(#)pimakefile 1.1 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 y.tab.c \ 28 yycosts.c yyerror.c yyget.c yyid.c yylex.c yymain.c yyoptions.c \ 29 yypanic.c yyparse.c yyprint.c yyput.c yyrecover.c yyseman.c yytree.c \ 30 p2put.c pcforop.c stab.c pcproc.c pcfunc.c pccaseop.c pclval.c 31 32HDRS = 0.h OPnames.h iorec.h objfmt.h opcode.h p.a.out.h pTree.h pc.h pcops.h \ 33 send.h tree.h whoami.h y.tab.h yy.h 34 35OTHERS = pas.y opc.c version.c gram pic.c 36 37OBJS = ato.o \ 38 call.o case.o clas.o const.o conv.o cset.o \ 39 error.o fdec.o func.o gen.o hash.o \ 40 lab.o lookup.o lval.o stklval.o \ 41 main.o nl.o proc.o put.o \ 42 rec.o rval.o stkrval.o\ 43 stat.o string.o subr.o \ 44 tree.o type.o var.o \ 45 TRdata.o \ 46 treen.o putn.o yycopy.o \ 47 y.tab.o \ 48 yycosts.o yyerror.o yyget.o yyid.o yylex.o yymain.o yyoptions.o \ 49 yypanic.o yyparse.o yyprint.o yyput.o yyrecover.o yyseman.o yytree.o \ 50 p2put.o pcforop.o stab.o pcproc.o pcfunc.o pccaseop.o pclval.o 51 52a.out: ${OBJS} version 53 ./version > Version.c 54 ${CC} ${CFLAGS} ${LDFLAGS} ${OBJS} Version.c 55 56sources: ${SRCS} ${HDRS} ${OTHERS} 57 58${SRCS} ${HDRS} ${OTHERS}: 59 ${GET} ${REL} $@ 60 61.c.o: 62 rm -f ${TMPDIR}/$*.c 63 ${MKSTR} - ${ERRORSTRINGS} ${TMPDIR}/ $*.c 64 cd ${TMPDIR} ; ${CC} ${CFLAGS} -I.. -c $*.c ; mv $*.o ../$*.o 65 rm -f ${TMPDIR}/$*.c 66 67y.tab.h: pas.y gram 68 ${EYACC} pas.y > y.tab.out 69 ex - y.tab.c <gram 70 @echo that makes y.tab.h and y.tab.c 71 72opcode.h: OPnames.h 73 cc opc.c -o opc 74 opc >opcode.h 75 ${RM} opc opc.c 76 77version: version.c 78 ${CC} version.c -o version 79 80pTree.h: 81 echo "/* this is not pTree.h */" > pTree.h 82 83clean: 84 ${RM} *.o ${TMPDIR}/*.c 85 ${RM} y.tab.h y.tab.c y.tab.out 86 ${RM} ${ERRORSTRINGS} 87 ${RM} version Version.c 88 ${RM} a.out core *.list *.bak 89 ${RM} opc pic tags 90 sccs clean 91 92print: sources 93 @pr makefile READ_ME 94 @ls -ls | pr 95 @cc -o pic pic.c 96 @pic | pr 97 @rm pic 98 @pr 0.h whoami.h main.c pas.y 99 @pr OPnames.h opcode.h tree.h 100 @pr pc.h 101 @pr [a-ln-x]*.c 102 @pr yy.h yy*.c 103 104install: a.out 105 cp ${ERRORSTRINGS} ${LIBDIR}/${ERRORSTRINGS} 106 -mv ${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 ; touch \1/' >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 ; touch 0.h 130yy.h: y.tab.h ; touch yy.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 160error.o: whoami.h 161error.o: 0.h 162error.o: yy.h 163fdec.o: whoami.h 164fdec.o: 0.h 165fdec.o: tree.h 166fdec.o: opcode.h 167fdec.o: objfmt.h 168fdec.o: pc.h 169fdec.o: pcops.h 170func.o: whoami.h 171func.o: 0.h 172func.o: tree.h 173func.o: opcode.h 174gen.o: whoami.h 175gen.o: 0.h 176gen.o: tree.h 177gen.o: opcode.h 178gen.o: objfmt.h 179hash.o: whoami.h 180hash.o: 0.h 181hash.o: yy.h 182lab.o: whoami.h 183lab.o: 0.h 184lab.o: tree.h 185lab.o: opcode.h 186lab.o: objfmt.h 187lab.o: pc.h 188lab.o: pcops.h 189lookup.o: whoami.h 190lookup.o: 0.h 191lval.o: whoami.h 192lval.o: 0.h 193lval.o: tree.h 194lval.o: opcode.h 195lval.o: objfmt.h 196lval.o: pc.h 197lval.o: pcops.h 198main.o: whoami.h 199main.o: 0.h 200main.o: yy.h 201main.o: objfmt.h 202nl.o: whoami.h 203nl.o: 0.h 204nl.o: opcode.h 205nl.o: objfmt.h 206opc.o: OPnames.h 207p2put.o: whoami.h 208p2put.o: 0.h 209p2put.o: pcops.h 210p2put.o: pc.h 211pccaseop.o: whoami.h 212pccaseop.o: 0.h 213pccaseop.o: tree.h 214pccaseop.o: objfmt.h 215pccaseop.o: pcops.h 216pccaseop.o: pc.h 217pccset.o: whoami.h 218pccset.o: 0.h 219pccset.o: tree.h 220pccset.o: opcode.h 221pccset.o: objfmt.h 222pccset.o: pc.h 223pccset.o: pcops.h 224pcforop.o: whoami.h 225pcforop.o: 0.h 226pcforop.o: opcode.h 227pcforop.o: tree.h 228pcforop.o: pc.h 229pcforop.o: pcops.h 230pcfunc.o: whoami.h 231pcfunc.o: 0.h 232pcfunc.o: tree.h 233pcfunc.o: opcode.h 234pcfunc.o: pc.h 235pcfunc.o: pcops.h 236pclval.o: whoami.h 237pclval.o: 0.h 238pclval.o: tree.h 239pclval.o: opcode.h 240pclval.o: objfmt.h 241pclval.o: pc.h 242pclval.o: pcops.h 243pcproc.o: whoami.h 244pcproc.o: 0.h 245pcproc.o: tree.h 246pcproc.o: opcode.h 247pcproc.o: pc.h 248pcproc.o: pcops.h 249pic.o: OPnames.h 250proc.o: whoami.h 251proc.o: 0.h 252proc.o: tree.h 253proc.o: opcode.h 254proc.o: objfmt.h 255put.o: whoami.h 256put.o: opcode.h 257put.o: 0.h 258put.o: objfmt.h 259put.o: pc.h 260put.o: OPnames.h 261rec.o: whoami.h 262rec.o: 0.h 263rec.o: tree.h 264rec.o: opcode.h 265rval.o: whoami.h 266rval.o: 0.h 267rval.o: tree.h 268rval.o: opcode.h 269rval.o: objfmt.h 270rval.o: pc.h 271rval.o: pcops.h 272stab.o: whoami.h 273stab.o: 0.h 274stab.o: p.a.out.h 275stab.o: pc.h 276stat.o: whoami.h 277stat.o: 0.h 278stat.o: tree.h 279stat.o: objfmt.h 280stat.o: pcops.h 281stat.o: pc.h 282stat.o: opcode.h 283stklval.o: whoami.h 284stklval.o: 0.h 285stklval.o: tree.h 286stklval.o: opcode.h 287stklval.o: objfmt.h 288stkrval.o: whoami.h 289stkrval.o: 0.h 290stkrval.o: tree.h 291stkrval.o: opcode.h 292stkrval.o: objfmt.h 293stkrval.o: pcops.h 294string.o: whoami.h 295string.o: 0.h 296string.o: send.h 297subr.o: whoami.h 298subr.o: 0.h 299tree.o: whoami.h 300tree.o: 0.h 301type.o: whoami.h 302type.o: 0.h 303type.o: tree.h 304type.o: objfmt.h 305var.o: whoami.h 306var.o: 0.h 307var.o: pc.h 308var.o: pcops.h 309var.o: iorec.h 310yycopy.o: 0.h 311yycopy.o: yy.h 312yycosts.o: whoami.h 313yycosts.o: 0.h 314yycosts.o: yy.h 315yyerror.o: whoami.h 316yyerror.o: 0.h 317yyerror.o: yy.h 318yyget.o: whoami.h 319yyget.o: 0.h 320yyget.o: yy.h 321yyid.o: whoami.h 322yyid.o: 0.h 323yyid.o: yy.h 324yylex.o: whoami.h 325yylex.o: 0.h 326yylex.o: yy.h 327yymain.o: whoami.h 328yymain.o: 0.h 329yymain.o: yy.h 330yymain.o: objfmt.h 331yyoptions.o: whoami.h 332yyoptions.o: 0.h 333yyoptions.o: yy.h 334yypanic.o: whoami.h 335yypanic.o: 0.h 336yypanic.o: yy.h 337yyparse.o: whoami.h 338yyparse.o: 0.h 339yyparse.o: yy.h 340yyprint.o: whoami.h 341yyprint.o: 0.h 342yyprint.o: yy.h 343yyput.o: whoami.h 344yyput.o: 0.h 345yyput.o: tree.h 346yyput.o: yy.h 347yyrecover.o: whoami.h 348yyrecover.o: 0.h 349yyrecover.o: yy.h 350yyseman.o: whoami.h 351yyseman.o: 0.h 352yyseman.o: yy.h 353yytree.o: whoami.h 354yytree.o: 0.h 355yytree.o: tree.h 356# DEPENDENCIES MUST END AT END OF FILE 357# IF YOU PUT STUFF HERE IT WILL GO AWAY 358# see make depend above 359