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