1*1201SpeterSCCSID = "@(#)pimakefile 1.9 10/03/80"
2800Speter
3800SpeterMKSTR = /usr/ucb/mkstr
4800SpeterEYACC = /usr/ucb/eyacc
5808SpeterRM = -rm -f
6*1201SpeterGET = sccs -d${SRCDIR} get
7800Speter
8800SpeterCFLAGS = -O -w
9800SpeterLDFLAGS = -z
10800Speter
11*1201SpeterSRCDIR = /usr/src/cmd/pc0
12*1201SpeterINSTALLDIR = /usr/ucb
13800SpeterLIBDIR = /usr/lib
14800SpeterTMPDIR = tmp
15800Speter
16*1201SpeterERRORSTRINGS = pi2.0strings
17800Speter
18800SpeterSRCS =	ato.c \
19800Speter	call.c case.c clas.c const.c conv.c cset.c \
20*1201Speter	error.c fdec.c flvalue.c func.c gen.c hash.c \
21800Speter	lab.c lookup.c lval.c stklval.c \
22800Speter	main.c nl.c proc.c put.c \
23800Speter	rec.c rval.c stkrval.c\
24800Speter	stat.c string.c subr.c \
25800Speter	tree.c type.c var.c \
26800Speter	TRdata.c \
27800Speter	treen.c putn.c yycopy.c \
28800Speter	yycosts.c yyerror.c yyget.c yyid.c yylex.c yymain.c yyoptions.c \
29*1201Speter	yypanic.c yyparse.c yyprint.c yyput.c yyrecover.c yyseman.c yytree.c
30800Speter
31*1201SpeterHDRS =	0.h OPnames.h align.h iorec.h objfmt.h send.h tree.h yy.h \
32*1201Speter	pc.h pcops.h
33800Speter
34800SpeterOTHERS = pas.y opc.c version.c gram pic.c
35800Speter
36800SpeterOBJS =	ato.o \
37800Speter	call.o case.o clas.o const.o conv.o cset.o \
38*1201Speter	error.o fdec.o flvalue.o func.o gen.o hash.o \
39800Speter	lab.o lookup.o lval.o stklval.o \
40800Speter	main.o nl.o proc.o put.o \
41800Speter	rec.o rval.o stkrval.o\
42800Speter	stat.o string.o subr.o \
43800Speter	tree.o type.o var.o \
44800Speter	TRdata.o \
45800Speter	treen.o putn.o yycopy.o \
46800Speter	y.tab.o \
47800Speter	yycosts.o yyerror.o yyget.o yyid.o yylex.o yymain.o yyoptions.o \
48*1201Speter	yypanic.o yyparse.o yyprint.o yyput.o yyrecover.o yyseman.o yytree.o
49800Speter
50800Spetera.out: ${OBJS} version
51800Speter	./version > Version.c
52800Speter	${CC} ${CFLAGS} ${LDFLAGS} ${OBJS} Version.c
53800Speter
54*1201Spetersources: whoami.h ${SRCS} ${HDRS} ${OTHERS}
55800Speter
56800Speter${SRCS} ${HDRS} ${OTHERS}:
57800Speter	${GET} ${REL} $@
58800Speter
59800Speter.c.o:
60808Speter	${RM} ${TMPDIR}/$*.c
61800Speter	${MKSTR} - ${ERRORSTRINGS} ${TMPDIR}/ $*.c
62800Speter	cd ${TMPDIR} ; ${CC} ${CFLAGS} -I.. -c $*.c ; mv $*.o  ../$*.o
63808Speter	${RM} ${TMPDIR}/$*.c
64800Speter
65*1201Speterwhoami.h:
66*1201Speter	${GET} ${REL} piwhoami.h
67*1201Speter	mv piwhoami.h whoami.h
68*1201Speter
69800Spetery.tab.h: pas.y gram
70808Speter	${EYACC} pas.y > /dev/null
71800Speter	ex - y.tab.c <gram
72800Speter	@echo that makes y.tab.h and y.tab.c
73800Speter
74803Speteropcode.h: OPnames.h opc.c
75800Speter	cc opc.c -o opc
76800Speter	opc >opcode.h
77808Speter	${RM} opc
78800Speter
79801SpeterpTree.h:
80801Speter	echo "/* this is not pTree.h */" > pTree.h
81801Speter
82800Speterversion: version.c
83800Speter	${CC} version.c -o version
84800Speter
85800Speterclean:
86800Speter	${RM} *.o ${TMPDIR}/*.c
87*1201Speter	${RM} whoami.h y.tab.h y.tab.c y.tab.out
88800Speter	${RM} ${ERRORSTRINGS}
89800Speter	${RM} version Version.c
90800Speter	${RM} a.out core *.list *.bak
91808Speter	${RM} opc.c opc pic tags
92800Speter	sccs clean
93800Speter
94800Speterprint:	sources
95800Speter	@pr makefile READ_ME
96800Speter	@ls -ls | pr
97800Speter	@cc -o pic pic.c
98800Speter	@pic | pr
99800Speter	@rm pic
100800Speter	@pr 0.h whoami.h main.c pas.y
101800Speter	@pr OPnames.h opcode.h tree.h
102800Speter	@pr [a-ln-x]*.c
103800Speter	@pr yy.h yy*.c
104800Speter
105800Speterinstall: a.out
106824Speter	sccs check
107800Speter	cp ${ERRORSTRINGS} ${LIBDIR}/${ERRORSTRINGS}
108*1201Speter	cp ${INSTALLDIR}/pi ${INSTALLDIR}/pi.bak
109*1201Speter	cp a.out ${INSTALLDIR}/pi
110800Speter
111800Speterdepend:	sources
112800Speter	/bin/grep '^#[ 	]*include' *.h \
113800Speter		| sed '/<.*>/d' \
114801Speter		| sed 's/\(.*\):[^"]*"\([^"]*\)".*/\1: \2/' >makedep
115800Speter	/bin/grep '^#[ 	]*include' *.c \
116800Speter		| sed '/<.*>/d' \
117800Speter		| sed 's/:[^"]*"\([^"]*\)".*/: \1/' \
118800Speter		| sed 's/\.c/.o/' >>makedep
119800Speter	echo '/^# DO NOT DELETE THIS LINE/+2,$$d' >eddep
120800Speter	echo '$$r makedep' >>eddep
121800Speter	echo 'w' >>eddep
122800Speter	cp makefile makefile.bak
123800Speter	ed - makefile < eddep
124800Speter	rm eddep makedep
125800Speter	echo '# DEPENDENCIES MUST END AT END OF FILE' >> makefile
126800Speter	echo '# IF YOU PUT STUFF HERE IT WILL GO AWAY' >> makefile
127800Speter	echo '# see make depend above' >> makefile
128800Speter
129800Speter# DO NOT DELETE THIS LINE -- make depend uses it
130800Speter
131801Speter0.h: pTree.h
132801Speteryy.h: y.tab.h
133800SpeterTRdata.o: whoami.h
134800SpeterTRdata.o: 0.h
135800Speterato.o: whoami.h
136800Speterato.o: 0.h
137800Spetercall.o: whoami.h
138800Spetercall.o: 0.h
139800Spetercall.o: tree.h
140800Spetercall.o: opcode.h
141800Spetercall.o: objfmt.h
142800Spetercall.o: pc.h
143800Spetercall.o: pcops.h
144800Spetercase.o: whoami.h
145800Spetercase.o: 0.h
146800Spetercase.o: tree.h
147800Spetercase.o: opcode.h
148800Speterclas.o: whoami.h
149800Speterclas.o: 0.h
150800Speterclas.o: tree.h
151800Speterconst.o: whoami.h
152800Speterconst.o: 0.h
153800Speterconst.o: tree.h
154800Speterconv.o: whoami.h
155800Speterconv.o: 0.h
156800Speterconv.o: opcode.h
157800Speterconv.o: pcops.h
158800Spetercset.o: whoami.h
159800Spetercset.o: 0.h
160800Spetercset.o: tree.h
161800Spetercset.o: opcode.h
162801Spetercset.o: objfmt.h
163801Spetercset.o: pc.h
164801Spetercset.o: pcops.h
165800Spetererror.o: whoami.h
166800Spetererror.o: 0.h
167800Spetererror.o: yy.h
168800Speterfdec.o: whoami.h
169800Speterfdec.o: 0.h
170800Speterfdec.o: tree.h
171800Speterfdec.o: opcode.h
172800Speterfdec.o: objfmt.h
173801Speterfdec.o: align.h
174800Speterfdec.o: pc.h
175800Speterfdec.o: pcops.h
176*1201Speterflvalue.o: whoami.h
177*1201Speterflvalue.o: 0.h
178*1201Speterflvalue.o: tree.h
179*1201Speterflvalue.o: opcode.h
180*1201Speterflvalue.o: objfmt.h
181*1201Speterflvalue.o: pc.h
182*1201Speterflvalue.o: pcops.h
183800Speterfunc.o: whoami.h
184800Speterfunc.o: 0.h
185800Speterfunc.o: tree.h
186800Speterfunc.o: opcode.h
187800Spetergen.o: whoami.h
188800Spetergen.o: 0.h
189800Spetergen.o: tree.h
190800Spetergen.o: opcode.h
191800Spetergen.o: objfmt.h
192800Speterhash.o: whoami.h
193800Speterhash.o: 0.h
194800Speterhash.o: yy.h
195800Speterlab.o: whoami.h
196800Speterlab.o: 0.h
197800Speterlab.o: tree.h
198800Speterlab.o: opcode.h
199800Speterlab.o: objfmt.h
200800Speterlab.o: pc.h
201800Speterlab.o: pcops.h
202800Speterlookup.o: whoami.h
203800Speterlookup.o: 0.h
204800Speterlval.o: whoami.h
205800Speterlval.o: 0.h
206800Speterlval.o: tree.h
207800Speterlval.o: opcode.h
208800Speterlval.o: objfmt.h
209800Speterlval.o: pc.h
210800Speterlval.o: pcops.h
211800Spetermain.o: whoami.h
212800Spetermain.o: 0.h
213800Spetermain.o: yy.h
214800Spetermain.o: objfmt.h
215800Speternl.o: whoami.h
216800Speternl.o: 0.h
217800Speternl.o: opcode.h
218800Speternl.o: objfmt.h
219800Speteropc.o: OPnames.h
220800Speterpic.o: OPnames.h
221800Speterproc.o: whoami.h
222800Speterproc.o: 0.h
223800Speterproc.o: tree.h
224800Speterproc.o: opcode.h
225800Speterproc.o: objfmt.h
226800Speterput.o: whoami.h
227800Speterput.o: opcode.h
228800Speterput.o: 0.h
229800Speterput.o: objfmt.h
230800Speterput.o: pc.h
231800Speterput.o: OPnames.h
232800Speterrec.o: whoami.h
233800Speterrec.o: 0.h
234800Speterrec.o: tree.h
235800Speterrec.o: opcode.h
236800Speterrval.o: whoami.h
237800Speterrval.o: 0.h
238800Speterrval.o: tree.h
239800Speterrval.o: opcode.h
240800Speterrval.o: objfmt.h
241800Speterrval.o: pc.h
242800Speterrval.o: pcops.h
243800Speterstat.o: whoami.h
244800Speterstat.o: 0.h
245800Speterstat.o: tree.h
246800Speterstat.o: objfmt.h
247800Speterstat.o: pcops.h
248800Speterstat.o: pc.h
249800Speterstat.o: opcode.h
250800Speterstklval.o: whoami.h
251800Speterstklval.o: 0.h
252800Speterstklval.o: tree.h
253800Speterstklval.o: opcode.h
254800Speterstklval.o: objfmt.h
255800Speterstkrval.o: whoami.h
256800Speterstkrval.o: 0.h
257800Speterstkrval.o: tree.h
258800Speterstkrval.o: opcode.h
259800Speterstkrval.o: objfmt.h
260800Speterstkrval.o: pcops.h
261800Speterstring.o: whoami.h
262800Speterstring.o: 0.h
263800Speterstring.o: send.h
264800Spetersubr.o: whoami.h
265800Spetersubr.o: 0.h
266800Spetertree.o: whoami.h
267800Spetertree.o: 0.h
268800Spetertype.o: whoami.h
269800Spetertype.o: 0.h
270800Spetertype.o: tree.h
271800Spetertype.o: objfmt.h
272800Spetervar.o: whoami.h
273800Spetervar.o: 0.h
274801Spetervar.o: align.h
275800Spetervar.o: pc.h
276800Spetervar.o: pcops.h
277800Spetervar.o: iorec.h
278801Spetery.tab.o: whoami.h
279801Spetery.tab.o: 0.h
280801Spetery.tab.o: yy.h
281801Spetery.tab.o: tree.h
282800Speteryycopy.o: 0.h
283800Speteryycopy.o: yy.h
284800Speteryycosts.o: whoami.h
285800Speteryycosts.o: 0.h
286800Speteryycosts.o: yy.h
287800Speteryyerror.o: whoami.h
288800Speteryyerror.o: 0.h
289800Speteryyerror.o: yy.h
290800Speteryyget.o: whoami.h
291800Speteryyget.o: 0.h
292800Speteryyget.o: yy.h
293800Speteryyid.o: whoami.h
294800Speteryyid.o: 0.h
295800Speteryyid.o: yy.h
296800Speteryylex.o: whoami.h
297800Speteryylex.o: 0.h
298800Speteryylex.o: yy.h
299800Speteryymain.o: whoami.h
300800Speteryymain.o: 0.h
301800Speteryymain.o: yy.h
302800Speteryymain.o: objfmt.h
303800Speteryyoptions.o: whoami.h
304800Speteryyoptions.o: 0.h
305800Speteryyoptions.o: yy.h
306800Speteryypanic.o: whoami.h
307800Speteryypanic.o: 0.h
308800Speteryypanic.o: yy.h
309800Speteryyparse.o: whoami.h
310800Speteryyparse.o: 0.h
311800Speteryyparse.o: yy.h
312800Speteryyprint.o: whoami.h
313800Speteryyprint.o: 0.h
314800Speteryyprint.o: yy.h
315800Speteryyput.o: whoami.h
316800Speteryyput.o: 0.h
317800Speteryyput.o: tree.h
318800Speteryyput.o: yy.h
319800Speteryyrecover.o: whoami.h
320800Speteryyrecover.o: 0.h
321800Speteryyrecover.o: yy.h
322800Speteryyseman.o: whoami.h
323800Speteryyseman.o: 0.h
324800Speteryyseman.o: yy.h
325800Speteryytree.o: whoami.h
326800Speteryytree.o: 0.h
327800Speteryytree.o: tree.h
328800Speter# DEPENDENCIES MUST END AT END OF FILE
329800Speter# IF YOU PUT STUFF HERE IT WILL GO AWAY
330800Speter# see make depend above
331