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