1*3424SmckusicSCCSID = "@(#)pimakefile 1.18 04/01/81"
21557SpeterWHOAMI = pi
31578SpeterINSTALLNAME = ${DESTDIR}/usr/ucb/pi
41557SpeterVERSION = 2.0
5800Speter
6800SpeterMKSTR = /usr/ucb/mkstr
7800SpeterEYACC = /usr/ucb/eyacc
8808SpeterRM = -rm -f
91631SpeterGET = touch
10800Speter
11800SpeterCFLAGS = -O -w
12800SpeterLDFLAGS = -z
13800Speter
141578SpeterLIBDIR = ${DESTDIR}/usr/lib
15800SpeterTMPDIR = tmp
16800Speter
171557SpeterERRORSTRINGS = ${WHOAMI}${VERSION}strings
18800Speter
19800SpeterSRCS =	ato.c \
20800Speter	call.c case.c clas.c const.c conv.c cset.c \
213300Smckusic	error.c fdec.c fend.c fhdr.c flvalue.c forop.c func.c gen.c \
222186Smckusic	hash.c lab.c lookup.c lval.c stklval.c \
23800Speter	main.c nl.c proc.c put.c \
24800Speter	rec.c rval.c stkrval.c\
25800Speter	stat.c string.c subr.c \
263300Smckusic	tmps.c tree.c type.c var.c \
27800Speter	TRdata.c \
283089Smckusic	treen.c yycopy.c \
29800Speter	yycosts.c yyerror.c yyget.c yyid.c yylex.c yymain.c yyoptions.c \
301212Speter	yypanic.c yyparse.c yyprint.c yyput.c yyrecover.c yyseman.c yytree.c \
312186Smckusic	p2put.c stab.c pcproc.c pcfunc.c pccaseop.c pclval.c
32800Speter
331212SpeterHDRS =	0.h OPnames.h align.h iorec.h objfmt.h pstab.h pc.h pcops.h \
341212Speter	send.h tree.h whoami.h yy.h
35800Speter
36800SpeterOTHERS = pas.y opc.c version.c gram pic.c
37800Speter
38800SpeterOBJS =	ato.o \
39800Speter	call.o case.o clas.o const.o conv.o cset.o \
403300Smckusic	error.o fdec.o fend.o fhdr.o flvalue.o forop.o func.o gen.o \
412186Smckusic	hash.o lab.o lookup.o lval.o stklval.o \
42800Speter	main.o nl.o proc.o put.o \
43800Speter	rec.o rval.o stkrval.o\
44800Speter	stat.o string.o subr.o \
453300Smckusic	tmps.o tree.o type.o var.o \
46800Speter	TRdata.o \
473089Smckusic	treen.o yycopy.o \
48800Speter	y.tab.o \
49800Speter	yycosts.o yyerror.o yyget.o yyid.o yylex.o yymain.o yyoptions.o \
501212Speter	yypanic.o yyparse.o yyprint.o yyput.o yyrecover.o yyseman.o yytree.o \
512186Smckusic	p2put.o stab.o pcproc.o pcfunc.o pccaseop.o pclval.o
52800Speter
53800Spetera.out: ${OBJS} version
54*3424Smckusic	${RM} Version.[oc]
55800Speter	./version > Version.c
56800Speter	${CC} ${CFLAGS} ${LDFLAGS} ${OBJS} Version.c
57800Speter
581212Spetersources: ${SRCS} ${HDRS} ${OTHERS}
59800Speter
60800Speter${SRCS} ${HDRS} ${OTHERS}:
611631Speter	${GET} $@
62800Speter
63800Speter.c.o:
64808Speter	${RM} ${TMPDIR}/$*.c
65800Speter	${MKSTR} - ${ERRORSTRINGS} ${TMPDIR}/ $*.c
66*3424Smckusic	cd ${TMPDIR} ; ${CC} ${CFLAGS} -I.. -c $*.c ;\
67*3424Smckusic		rm -f ../$*.o; mv $*.o  ../$*.o
68808Speter	${RM} ${TMPDIR}/$*.c
69800Speter
70800Spetery.tab.h: pas.y gram
71*3424Smckusic	${RM} y.tab.c y.tab.h
72808Speter	${EYACC} pas.y > /dev/null
73800Speter	ex - y.tab.c <gram
74800Speter	@echo that makes y.tab.h and y.tab.c
75800Speter
76803Speteropcode.h: OPnames.h opc.c
77*3424Smckusic	${RM} opcode.h
78800Speter	cc opc.c -o opc
79800Speter	opc >opcode.h
80808Speter	${RM} opc
81800Speter
82801SpeterpTree.h:
83801Speter	echo "/* this is not pTree.h */" > pTree.h
84801Speter
85800Speterversion: version.c
86800Speter	${CC} version.c -o version
87800Speter
88800Speterclean:
89800Speter	${RM} *.o ${TMPDIR}/*.c
901212Speter	${RM} y.tab.h y.tab.c y.tab.out
91800Speter	${RM} ${ERRORSTRINGS}
92800Speter	${RM} version Version.c
93800Speter	${RM} a.out core *.list *.bak
941631Speter	${RM} opc pic tags
95800Speter
96800Speterprint:	sources
97800Speter	@pr makefile READ_ME
98800Speter	@ls -ls | pr
99800Speter	@cc -o pic pic.c
100800Speter	@pic | pr
101800Speter	@rm pic
102800Speter	@pr 0.h whoami.h main.c pas.y
103800Speter	@pr OPnames.h opcode.h tree.h
1041212Speter	@pr pc.h
105800Speter	@pr [a-ln-x]*.c
106800Speter	@pr yy.h yy*.c
107800Speter
108800Speterinstall: a.out
109800Speter	cp ${ERRORSTRINGS} ${LIBDIR}/${ERRORSTRINGS}
1101566Speter	cp a.out ${INSTALLNAME}
111800Speter
112800Speterdepend:	sources
113800Speter	/bin/grep '^#[ 	]*include' *.h \
114800Speter		| sed '/<.*>/d' \
115801Speter		| sed 's/\(.*\):[^"]*"\([^"]*\)".*/\1: \2/' >makedep
116800Speter	/bin/grep '^#[ 	]*include' *.c \
117800Speter		| sed '/<.*>/d' \
118800Speter		| sed 's/:[^"]*"\([^"]*\)".*/: \1/' \
119800Speter		| sed 's/\.c/.o/' >>makedep
120800Speter	echo '/^# DO NOT DELETE THIS LINE/+2,$$d' >eddep
121800Speter	echo '$$r makedep' >>eddep
122800Speter	echo 'w' >>eddep
123800Speter	cp makefile makefile.bak
124800Speter	ed - makefile < eddep
125800Speter	rm eddep makedep
126800Speter	echo '# DEPENDENCIES MUST END AT END OF FILE' >> makefile
127800Speter	echo '# IF YOU PUT STUFF HERE IT WILL GO AWAY' >> makefile
128800Speter	echo '# see make depend above' >> makefile
129800Speter
130800Speter# DO NOT DELETE THIS LINE -- make depend uses it
131800Speter
132801Speter0.h: pTree.h
133801Speteryy.h: y.tab.h
134800SpeterTRdata.o: whoami.h
135800SpeterTRdata.o: 0.h
136800Speterato.o: whoami.h
137800Speterato.o: 0.h
138800Spetercall.o: whoami.h
139800Spetercall.o: 0.h
140800Spetercall.o: tree.h
141800Spetercall.o: opcode.h
142800Spetercall.o: objfmt.h
143800Spetercall.o: pc.h
144800Spetercall.o: pcops.h
145800Spetercase.o: whoami.h
146800Spetercase.o: 0.h
147800Spetercase.o: tree.h
148800Spetercase.o: opcode.h
149800Speterclas.o: whoami.h
150800Speterclas.o: 0.h
151800Speterclas.o: tree.h
152800Speterconst.o: whoami.h
153800Speterconst.o: 0.h
154800Speterconst.o: tree.h
155800Speterconv.o: whoami.h
156800Speterconv.o: 0.h
157800Speterconv.o: opcode.h
158800Speterconv.o: pcops.h
159800Spetercset.o: whoami.h
160800Spetercset.o: 0.h
161800Spetercset.o: tree.h
162800Spetercset.o: opcode.h
163801Spetercset.o: objfmt.h
164801Spetercset.o: pc.h
165801Spetercset.o: pcops.h
166800Spetererror.o: whoami.h
167800Spetererror.o: 0.h
168800Spetererror.o: yy.h
169800Speterfdec.o: whoami.h
170800Speterfdec.o: 0.h
171800Speterfdec.o: tree.h
172800Speterfdec.o: opcode.h
173800Speterfdec.o: objfmt.h
174801Speterfdec.o: align.h
175800Speterfdec.o: pc.h
176800Speterfdec.o: pcops.h
1773300Smckusicfend.o: whoami.h
1783300Smckusicfend.o: 0.h
1793300Smckusicfend.o: tree.h
1803300Smckusicfend.o: opcode.h
1813300Smckusicfend.o: objfmt.h
1823300Smckusicfend.o: align.h
1833300Smckusicfend.o: pc.h
1843300Smckusicfend.o: pcops.h
1853300Smckusicfhdr.o: whoami.h
1863300Smckusicfhdr.o: 0.h
1873300Smckusicfhdr.o: tree.h
1883300Smckusicfhdr.o: opcode.h
1893300Smckusicfhdr.o: objfmt.h
1903300Smckusicfhdr.o: align.h
1913300Smckusicfhdr.o: pc.h
1923300Smckusicfhdr.o: pcops.h
1931201Speterflvalue.o: whoami.h
1941201Speterflvalue.o: 0.h
1951201Speterflvalue.o: tree.h
1961201Speterflvalue.o: opcode.h
1971201Speterflvalue.o: objfmt.h
1981201Speterflvalue.o: pc.h
1991201Speterflvalue.o: pcops.h
2002186Smckusicforop.o: whoami.h
2012186Smckusicforop.o: 0.h
2022186Smckusicforop.o: opcode.h
2032186Smckusicforop.o: tree.h
2043300Smckusicforop.o: objfmt.h
2052186Smckusicforop.o: pc.h
2062186Smckusicforop.o: pcops.h
207800Speterfunc.o: whoami.h
208800Speterfunc.o: 0.h
209800Speterfunc.o: tree.h
210800Speterfunc.o: opcode.h
211800Spetergen.o: whoami.h
212800Spetergen.o: 0.h
213800Spetergen.o: tree.h
214800Spetergen.o: opcode.h
215800Spetergen.o: objfmt.h
216800Speterhash.o: whoami.h
217800Speterhash.o: 0.h
218800Speterhash.o: yy.h
219800Speterlab.o: whoami.h
220800Speterlab.o: 0.h
221800Speterlab.o: tree.h
222800Speterlab.o: opcode.h
223800Speterlab.o: objfmt.h
224800Speterlab.o: pc.h
225800Speterlab.o: pcops.h
226800Speterlookup.o: whoami.h
227800Speterlookup.o: 0.h
228800Speterlval.o: whoami.h
229800Speterlval.o: 0.h
230800Speterlval.o: tree.h
231800Speterlval.o: opcode.h
232800Speterlval.o: objfmt.h
233800Speterlval.o: pc.h
234800Speterlval.o: pcops.h
235800Spetermain.o: whoami.h
236800Spetermain.o: 0.h
237800Spetermain.o: yy.h
238800Spetermain.o: objfmt.h
239800Speternl.o: whoami.h
240800Speternl.o: 0.h
241800Speternl.o: opcode.h
242800Speternl.o: objfmt.h
243800Speteropc.o: OPnames.h
2441212Speterp2put.o: whoami.h
2451212Speterp2put.o: 0.h
2461212Speterp2put.o: pcops.h
2471212Speterp2put.o: pc.h
2481212Speterpccaseop.o: whoami.h
2491212Speterpccaseop.o: 0.h
2501212Speterpccaseop.o: tree.h
2511212Speterpccaseop.o: objfmt.h
2521212Speterpccaseop.o: pcops.h
2531212Speterpccaseop.o: pc.h
2541212Speterpcfunc.o: whoami.h
2551212Speterpcfunc.o: 0.h
2561212Speterpcfunc.o: tree.h
2571212Speterpcfunc.o: opcode.h
2581212Speterpcfunc.o: pc.h
2591212Speterpcfunc.o: pcops.h
2601212Speterpclval.o: whoami.h
2611212Speterpclval.o: 0.h
2621212Speterpclval.o: tree.h
2631212Speterpclval.o: opcode.h
2641212Speterpclval.o: objfmt.h
2651212Speterpclval.o: pc.h
2661212Speterpclval.o: pcops.h
2671212Speterpcproc.o: whoami.h
2681212Speterpcproc.o: 0.h
2691212Speterpcproc.o: tree.h
2701212Speterpcproc.o: opcode.h
2711212Speterpcproc.o: pc.h
2721212Speterpcproc.o: pcops.h
273800Speterpic.o: OPnames.h
274800Speterproc.o: whoami.h
275800Speterproc.o: 0.h
276800Speterproc.o: tree.h
277800Speterproc.o: opcode.h
278800Speterproc.o: objfmt.h
279800Speterput.o: whoami.h
280800Speterput.o: opcode.h
281800Speterput.o: 0.h
282800Speterput.o: objfmt.h
283800Speterput.o: pc.h
284800Speterput.o: OPnames.h
285800Speterrec.o: whoami.h
286800Speterrec.o: 0.h
287800Speterrec.o: tree.h
288800Speterrec.o: opcode.h
289800Speterrval.o: whoami.h
290800Speterrval.o: 0.h
291800Speterrval.o: tree.h
292800Speterrval.o: opcode.h
293800Speterrval.o: objfmt.h
294800Speterrval.o: pc.h
295800Speterrval.o: pcops.h
2961212Speterstab.o: whoami.h
2971212Speterstab.o: 0.h
2981212Speterstab.o: pstab.h
2991212Speterstab.o: pc.h
300800Speterstat.o: whoami.h
301800Speterstat.o: 0.h
302800Speterstat.o: tree.h
303800Speterstat.o: objfmt.h
304800Speterstat.o: pcops.h
305800Speterstat.o: pc.h
306800Speterstat.o: opcode.h
307800Speterstklval.o: whoami.h
308800Speterstklval.o: 0.h
309800Speterstklval.o: tree.h
310800Speterstklval.o: opcode.h
311800Speterstklval.o: objfmt.h
312800Speterstkrval.o: whoami.h
313800Speterstkrval.o: 0.h
314800Speterstkrval.o: tree.h
315800Speterstkrval.o: opcode.h
316800Speterstkrval.o: objfmt.h
317800Speterstkrval.o: pcops.h
318800Speterstring.o: whoami.h
319800Speterstring.o: 0.h
320800Speterstring.o: send.h
321800Spetersubr.o: whoami.h
322800Spetersubr.o: 0.h
3233300Smckusictmps.o: whoami.h
3243300Smckusictmps.o: 0.h
325800Spetertree.o: whoami.h
326800Spetertree.o: 0.h
327800Spetertype.o: whoami.h
328800Spetertype.o: 0.h
329800Spetertype.o: tree.h
330800Spetertype.o: objfmt.h
331800Spetervar.o: whoami.h
332800Spetervar.o: 0.h
333801Spetervar.o: align.h
3342186Smckusicvar.o: iorec.h
335800Spetervar.o: pc.h
336800Spetervar.o: pcops.h
337801Spetery.tab.o: whoami.h
338801Spetery.tab.o: 0.h
339801Spetery.tab.o: yy.h
340801Spetery.tab.o: tree.h
341800Speteryycopy.o: 0.h
342800Speteryycopy.o: yy.h
343800Speteryycosts.o: whoami.h
344800Speteryycosts.o: 0.h
345800Speteryycosts.o: yy.h
346800Speteryyerror.o: whoami.h
347800Speteryyerror.o: 0.h
348800Speteryyerror.o: yy.h
349800Speteryyget.o: whoami.h
350800Speteryyget.o: 0.h
351800Speteryyget.o: yy.h
352800Speteryyid.o: whoami.h
353800Speteryyid.o: 0.h
354800Speteryyid.o: yy.h
355800Speteryylex.o: whoami.h
356800Speteryylex.o: 0.h
357800Speteryylex.o: yy.h
358800Speteryymain.o: whoami.h
359800Speteryymain.o: 0.h
360800Speteryymain.o: yy.h
361800Speteryymain.o: objfmt.h
362800Speteryyoptions.o: whoami.h
363800Speteryyoptions.o: 0.h
364800Speteryyoptions.o: yy.h
365800Speteryypanic.o: whoami.h
366800Speteryypanic.o: 0.h
367800Speteryypanic.o: yy.h
368800Speteryyparse.o: whoami.h
369800Speteryyparse.o: 0.h
370800Speteryyparse.o: yy.h
371800Speteryyprint.o: whoami.h
372800Speteryyprint.o: 0.h
373800Speteryyprint.o: yy.h
374800Speteryyput.o: whoami.h
375800Speteryyput.o: 0.h
376800Speteryyput.o: tree.h
377800Speteryyput.o: yy.h
378800Speteryyrecover.o: whoami.h
379800Speteryyrecover.o: 0.h
380800Speteryyrecover.o: yy.h
381800Speteryyseman.o: whoami.h
382800Speteryyseman.o: 0.h
383800Speteryyseman.o: yy.h
384800Speteryytree.o: whoami.h
385800Speteryytree.o: 0.h
386800Speteryytree.o: tree.h
387800Speter# DEPENDENCIES MUST END AT END OF FILE
388800Speter# IF YOU PUT STUFF HERE IT WILL GO AWAY
389800Speter# see make depend above
390