xref: /original-bsd/usr.bin/pascal/pc0/Makefile (revision 3c8a896f)
1SCCSID = "@(#)Makefile 2.3 03/26/85"
2
3INSTALLDIR = $(DESTDIR)/usr/lib
4INSTALLNAME = ${INSTALLDIR}/pc0
5BINDIR = ../pc0
6SRCDIR = ../src
7WHOAMI = pc
8VERSION = 3.1
9DATE = 03/26/85
10
11MKSTR = /usr/ucb/mkstr
12EYACC = ../eyacc/eyacc
13RM = -rm -f
14TOUCH = touch -f
15
16CFLAGS = -O
17LDFLAGS = -z
18
19LIBDIR = ${DESTDIR}/usr/lib
20TMPDIR = tmp
21
22ERRORSTRINGS = ${WHOAMI}${VERSION}strings
23OLDSTRINGS = ${WHOAMI}[0-9]*.[0-9]*strings
24HOWFILE = how_${WHOAMI}
25
26SRCS =	ato.c \
27	call.c case.c clas.c const.c conv.c cset.c \
28	error.c fdec.c fend.c fhdr.c flvalue.c forop.c func.c gen.c hash.c \
29	lab.c lookup.c lval.c stklval.c \
30	main.c nl.c proc.c put.c \
31	rec.c rval.c stkrval.c\
32	savenl.c \
33	stat.c string.c subr.c \
34	tmps.c tree.c type.c var.c \
35	TRdata.c \
36	treen.c yycopy.c \
37	yycosts.c yyerror.c yyget.c yyid.c yylex.c yymain.c yyoptions.c \
38	yypanic.c yyparse.c yyprint.c yyput.c yyrecover.c yyseman.c yytree.c \
39	p2put.c stab.c pcproc.c pcfunc.c pccaseop.c pclval.c sconv.c
40
41HDRS =	0.h OPnames.h align.h iorec.h objfmt.h pstab.h pc.h \
42	send.h tree.h whoami.h yy.h config.h
43
44OTHERS = pas.y opc.c CONFIG.c gram pic.c
45
46OBJS =	ato.o \
47	call.o case.o clas.o const.o conv.o cset.o \
48	error.o fdec.o fend.o fhdr.o flvalue.o forop.o func.o gen.o hash.o \
49	lab.o lookup.o lval.o stklval.o \
50	main.o nl.o proc.o put.o \
51	rec.o rval.o stkrval.o\
52	savenl.o \
53	stat.o string.o subr.o \
54	tmps.o tree.o type.o var.o \
55	TRdata.o \
56	treen.o yycopy.o \
57	yycosts.o yyerror.o yyget.o yyid.o yylex.o yymain.o yyoptions.o \
58	yypanic.o yyparse.o yyprint.o yyput.o yyrecover.o yyseman.o yytree.o \
59	p2put.o stab.o pcproc.o pcfunc.o pccaseop.o pclval.o sconv.o
60
61a.out: ${OBJS} y.tab.o config.c
62	${CC} ${CFLAGS} ${LDFLAGS} ${OBJS} y.tab.o config.c
63
64${OBJS}:
65	${RM} $*.c
66	cd ${SRCDIR}; ${MKSTR} - ${BINDIR}/${ERRORSTRINGS} ${BINDIR}/ $*.c
67	${CC} ${CFLAGS} -I. -I${SRCDIR} -c $*.c
68	${RM} $*.c
69
70lint:
71	cd ${SRCDIR}; lint -I. -I${BINDIR} ${SRCS}  ${BINDIR}/*.c
72
73y.tab.h: ${SRCDIR}/pas.y ${SRCDIR}/gram
74	${RM} y.tab.h y.tab.c
75	${EYACC} ${SRCDIR}/pas.y > /dev/null
76	ex - y.tab.c <${SRCDIR}/gram
77	@echo that makes y.tab.h and y.tab.c
78y.tab.o: y.tab.c y.tab.h
79	${RM} x.y.tab.c
80	${MKSTR} - ${ERRORSTRINGS} x. y.tab.c
81	${CC} ${CFLAGS} -I${SRCDIR} -I. -c x.y.tab.c
82	mv x.y.tab.o y.tab.o
83	${RM} x.y.tab.c
84
85picture: ${SRCDIR}/OPnames.h ${SRCDIR}/pic.c
86	${RM} picture
87	cc ${SRCDIR}/pic.c -o pic
88	pic >picture
89	${RM} pic
90
91opcode.h: ${SRCDIR}/OPnames.h ${SRCDIR}/opc.c
92	${RM} opcode.h
93	cc ${SRCDIR}/opc.c -o opc
94	opc >opcode.h
95	${RM} opc
96
97${SRCDIR}/0.h:
98	${TOUCH} ${SRCDIR}/0.h
99
100config.c: ${SRCDIR}/CONFIG.c makefile
101	sed -e "s?VERSION?${VERSION}?g" \
102	    -e "s?DATE?${DATE}?g" \
103	    -e "s?INSTALLDIR?${INSTALLDIR}?g" \
104	    -e "s?LIBDIR?${LIBDIR}?g" \
105	    -e "s?ERRORSTRINGS?${ERRORSTRINGS}?g" \
106	    -e "s?HOWFILE?${HOWFILE}?g" \
107	    < ${SRCDIR}/CONFIG.c >config.c
108
109clean:
110	${RM} *.o *.c
111	${RM} y.tab.h y.tab.c y.tab.out
112	${RM} ${WHOAMI}*strings
113	${RM} config.c opcode.h picture
114	${RM} a.out core *.list *.bak errs
115	${RM} opc pic tags
116
117install: a.out
118	${RM} ${LIBDIR}/${OLDSTRINGS}
119	install -c -m 664 ${ERRORSTRINGS} ${LIBDIR}/${ERRORSTRINGS}
120	install -c -m 775 a.out ${INSTALLNAME}
121
122depend:
123	ls ${SRCDIR}/*.c | sed \
124		-e 's;^${SRCDIR}/\([a-zA-Z0-9]*\)\.c;\1.o: &;' >makedep
125	/bin/grep '^#[ 	]*include' *.h ${SRCDIR}/*.h | sed \
126		-e '/<.*>/d' \
127		-e 's;\(.*\):[^"]*"\([^"]*\)".*;\1: \2;' >>makedep
128	/bin/grep '^#[ 	]*include' ${SRCDIR}/*.c | sed \
129		-e '/<.*>/d' \
130		-e 's;:[^"]*"\([^"]*\)".*;: ${SRCDIR}/\1;' \
131		-e 's;^${SRCDIR}/\([a-zA-Z0-9]*\)\.c;\1.o;' \
132		-e 's;: ${SRCDIR}/whoami.h;: whoami.h;' \
133		-e 's;: ${SRCDIR}/opcode.h;: opcode.h;' >>makedep
134	echo '/^# DO NOT DELETE THIS LINE/+2,$$d' >eddep
135	echo '$$r makedep' >>eddep
136	echo 'w' >>eddep
137	cp makefile makefile.bak
138	ed - makefile < eddep
139	rm eddep makedep
140	echo '# DEPENDENCIES MUST END AT END OF FILE' >> makefile
141	echo '# IF YOU PUT STUFF HERE IT WILL GO AWAY' >> makefile
142	echo '# see make depend above' >> makefile
143
144# DO NOT DELETE THIS LINE -- make depend uses it
145
146CONFIG.o: ../src/CONFIG.c
147TRdata.o: ../src/TRdata.c
148ato.o: ../src/ato.c
149call.o: ../src/call.c
150case.o: ../src/case.c
151clas.o: ../src/clas.c
152const.o: ../src/const.c
153conv.o: ../src/conv.c
154cset.o: ../src/cset.c
155error.o: ../src/error.c
156fdec.o: ../src/fdec.c
157fend.o: ../src/fend.c
158fhdr.o: ../src/fhdr.c
159flvalue.o: ../src/flvalue.c
160forop.o: ../src/forop.c
161func.o: ../src/func.c
162gen.o: ../src/gen.c
163hash.o: ../src/hash.c
164lab.o: ../src/lab.c
165lookup.o: ../src/lookup.c
166lval.o: ../src/lval.c
167main.o: ../src/main.c
168nl.o: ../src/nl.c
169opc.o: ../src/opc.c
170p2put.o: ../src/p2put.c
171pccaseop.o: ../src/pccaseop.c
172pcfunc.o: ../src/pcfunc.c
173pclval.o: ../src/pclval.c
174pcproc.o: ../src/pcproc.c
175pic.o: ../src/pic.c
176proc.o: ../src/proc.c
177put.o: ../src/put.c
178rec.o: ../src/rec.c
179rval.o: ../src/rval.c
180savenl.o: ../src/savenl.c
181sconv.o: ../src/sconv.c
182stab.o: ../src/stab.c
183stat.o: ../src/stat.c
184stklval.o: ../src/stklval.c
185stkrval.o: ../src/stkrval.c
186string.o: ../src/string.c
187subr.o: ../src/subr.c
188tmps.o: ../src/tmps.c
189tree.o: ../src/tree.c
190treen.o: ../src/treen.c
191type.o: ../src/type.c
192var.o: ../src/var.c
193yycopy.o: ../src/yycopy.c
194yycosts.o: ../src/yycosts.c
195yyerror.o: ../src/yyerror.c
196yyget.o: ../src/yyget.c
197yyid.o: ../src/yyid.c
198yylex.o: ../src/yylex.c
199yymain.o: ../src/yymain.c
200yyoptions.o: ../src/yyoptions.c
201yypanic.o: ../src/yypanic.c
202yyparse.o: ../src/yyparse.c
203yyprint.o: ../src/yyprint.c
204yyput.o: ../src/yyput.c
205yyrecover.o: ../src/yyrecover.c
206yyseman.o: ../src/yyseman.c
207yytree.o: ../src/yytree.c
208../src/yy.h: y.tab.h
209TRdata.o: whoami.h
210TRdata.o: ../src/0.h
211ato.o: whoami.h
212ato.o: ../src/0.h
213call.o: whoami.h
214call.o: ../src/0.h
215call.o: ../src/tree.h
216call.o: opcode.h
217call.o: ../src/objfmt.h
218call.o: ../src/pc.h
219call.o: ../src/tmps.h
220call.o: ../src/tree_ty.h
221case.o: whoami.h
222case.o: ../src/0.h
223case.o: ../src/tree.h
224case.o: opcode.h
225case.o: ../src/tree_ty.h
226clas.o: whoami.h
227clas.o: ../src/0.h
228clas.o: ../src/tree.h
229clas.o: ../src/tree_ty.h
230const.o: whoami.h
231const.o: ../src/0.h
232const.o: ../src/tree.h
233const.o: ../src/tree_ty.h
234conv.o: whoami.h
235conv.o: ../src/0.h
236conv.o: opcode.h
237conv.o: ../src/tree_ty.h
238cset.o: whoami.h
239cset.o: ../src/0.h
240cset.o: ../src/tree.h
241cset.o: opcode.h
242cset.o: ../src/objfmt.h
243cset.o: ../src/tree_ty.h
244cset.o: ../src/pc.h
245cset.o: ../src/align.h
246error.o: whoami.h
247error.o: ../src/0.h
248error.o: ../src/tree_ty.h
249error.o: ../src/yy.h
250fdec.o: whoami.h
251fdec.o: ../src/0.h
252fdec.o: ../src/tree.h
253fdec.o: opcode.h
254fdec.o: ../src/objfmt.h
255fdec.o: ../src/align.h
256fdec.o: ../src/tmps.h
257fdec.o: ../src/pc.h
258fend.o: whoami.h
259fend.o: ../src/0.h
260fend.o: ../src/tree.h
261fend.o: opcode.h
262fend.o: ../src/objfmt.h
263fend.o: ../src/align.h
264fend.o: ../src/tmps.h
265fend.o: ../src/pc.h
266fend.o: ../src/tree_ty.h
267fhdr.o: whoami.h
268fhdr.o: ../src/0.h
269fhdr.o: ../src/tree.h
270fhdr.o: opcode.h
271fhdr.o: ../src/objfmt.h
272fhdr.o: ../src/align.h
273fhdr.o: ../src/tree_ty.h
274fhdr.o: ../src/pc.h
275flvalue.o: whoami.h
276flvalue.o: ../src/0.h
277flvalue.o: ../src/tree.h
278flvalue.o: opcode.h
279flvalue.o: ../src/objfmt.h
280flvalue.o: ../src/tree_ty.h
281flvalue.o: ../src/pc.h
282flvalue.o: ../src/tmps.h
283forop.o: whoami.h
284forop.o: ../src/0.h
285forop.o: opcode.h
286forop.o: ../src/tree.h
287forop.o: ../src/objfmt.h
288forop.o: ../src/pc.h
289forop.o: ../src/tmps.h
290forop.o: ../src/tree_ty.h
291func.o: whoami.h
292func.o: ../src/0.h
293func.o: ../src/tree.h
294func.o: opcode.h
295func.o: ../src/tree_ty.h
296gen.o: whoami.h
297gen.o: ../src/0.h
298gen.o: ../src/tree.h
299gen.o: opcode.h
300gen.o: ../src/objfmt.h
301hash.o: whoami.h
302hash.o: ../src/0.h
303hash.o: ../src/tree_ty.h
304hash.o: ../src/yy.h
305lab.o: whoami.h
306lab.o: ../src/0.h
307lab.o: ../src/tree.h
308lab.o: opcode.h
309lab.o: ../src/objfmt.h
310lab.o: ../src/pc.h
311lab.o: ../src/tree_ty.h
312lookup.o: whoami.h
313lookup.o: ../src/0.h
314lval.o: whoami.h
315lval.o: ../src/0.h
316lval.o: ../src/tree.h
317lval.o: opcode.h
318lval.o: ../src/objfmt.h
319lval.o: ../src/tree_ty.h
320lval.o: ../src/pc.h
321main.o: whoami.h
322main.o: ../src/0.h
323main.o: ../src/tree_ty.h
324main.o: ../src/yy.h
325main.o: ../src/objfmt.h
326main.o: ../src/config.h
327nl.o: whoami.h
328nl.o: ../src/0.h
329nl.o: opcode.h
330nl.o: ../src/objfmt.h
331opc.o: ../src/OPnames.h
332p2put.o: whoami.h
333p2put.o: ../src/0.h
334p2put.o: ../src/objfmt.h
335p2put.o: ../src/pc.h
336p2put.o: ../src/align.h
337p2put.o: ../src/tmps.h
338pccaseop.o: whoami.h
339pccaseop.o: ../src/0.h
340pccaseop.o: ../src/tree.h
341pccaseop.o: ../src/objfmt.h
342pccaseop.o: ../src/pc.h
343pccaseop.o: ../src/tmps.h
344pccaseop.o: ../src/tree_ty.h
345pcfunc.o: whoami.h
346pcfunc.o: ../src/0.h
347pcfunc.o: ../src/tree.h
348pcfunc.o: ../src/objfmt.h
349pcfunc.o: opcode.h
350pcfunc.o: ../src/pc.h
351pcfunc.o: ../src/tmps.h
352pcfunc.o: ../src/tree_ty.h
353pclval.o: whoami.h
354pclval.o: ../src/0.h
355pclval.o: ../src/tree.h
356pclval.o: opcode.h
357pclval.o: ../src/objfmt.h
358pclval.o: ../src/tree_ty.h
359pclval.o: ../src/pc.h
360pcproc.o: whoami.h
361pcproc.o: ../src/0.h
362pcproc.o: ../src/tree.h
363pcproc.o: ../src/objfmt.h
364pcproc.o: opcode.h
365pcproc.o: ../src/pc.h
366pcproc.o: ../src/tmps.h
367pcproc.o: ../src/tree_ty.h
368pic.o: ../src/OPnames.h
369proc.o: whoami.h
370proc.o: ../src/0.h
371proc.o: ../src/tree.h
372proc.o: opcode.h
373proc.o: ../src/objfmt.h
374proc.o: ../src/tmps.h
375proc.o: ../src/tree_ty.h
376put.o: whoami.h
377put.o: opcode.h
378put.o: ../src/0.h
379put.o: ../src/objfmt.h
380put.o: ../src/pc.h
381put.o: ../src/align.h
382put.o: ../src/OPnames.h
383rec.o: whoami.h
384rec.o: ../src/0.h
385rec.o: ../src/tree.h
386rec.o: opcode.h
387rec.o: ../src/align.h
388rec.o: ../src/tree_ty.h
389rval.o: whoami.h
390rval.o: ../src/0.h
391rval.o: ../src/tree.h
392rval.o: opcode.h
393rval.o: ../src/objfmt.h
394rval.o: ../src/pc.h
395rval.o: ../src/tmps.h
396rval.o: ../src/tree_ty.h
397savenl.o: whoami.h
398savenl.o: ../src/0.h
399savenl.o: ../src/objfmt.h
400savenl.o: ../src/../pdx/defs.h
401savenl.o: ../src/../pdx/object.h
402savenl.o: ../src/../pdx/object/objsym.rep
403savenl.o: ../src/../pdx/mappings.h
404savenl.o: ../src/../pdx/mappings/filetab.h
405sconv.o: whoami.h
406sconv.o: ../src/0.h
407stab.o: whoami.h
408stab.o: ../src/0.h
409stab.o: ../src/objfmt.h
410stab.o: ../src/yy.h
411stab.o: ../src/pstab.h
412stab.o: ../src/pc.h
413stat.o: whoami.h
414stat.o: ../src/0.h
415stat.o: ../src/tree.h
416stat.o: ../src/objfmt.h
417stat.o: ../src/pc.h
418stat.o: ../src/tmps.h
419stat.o: opcode.h
420stat.o: ../src/tree_ty.h
421stklval.o: whoami.h
422stklval.o: ../src/0.h
423stklval.o: ../src/tree.h
424stklval.o: opcode.h
425stklval.o: ../src/objfmt.h
426stklval.o: ../src/tree_ty.h
427stkrval.o: whoami.h
428stkrval.o: ../src/0.h
429stkrval.o: ../src/tree.h
430stkrval.o: opcode.h
431stkrval.o: ../src/objfmt.h
432stkrval.o: ../src/tree_ty.h
433string.o: whoami.h
434string.o: ../src/0.h
435string.o: ../src/send.h
436subr.o: whoami.h
437subr.o: ../src/0.h
438tmps.o: whoami.h
439tmps.o: ../src/0.h
440tmps.o: ../src/objfmt.h
441tmps.o: ../src/pc.h
442tmps.o: ../src/align.h
443tmps.o: ../src/tmps.h
444tree.o: whoami.h
445tree.o: ../src/0.h
446treen.o: ../src/0.h
447treen.o: ../src/tree_ty.h
448type.o: whoami.h
449type.o: ../src/0.h
450type.o: ../src/tree.h
451type.o: ../src/objfmt.h
452type.o: ../src/tree_ty.h
453var.o: whoami.h
454var.o: ../src/0.h
455var.o: ../src/objfmt.h
456var.o: ../src/align.h
457var.o: ../src/iorec.h
458var.o: ../src/pc.h
459var.o: ../src/tmps.h
460var.o: ../src/tree_ty.h
461yycopy.o: whoami.h
462yycopy.o: ../src/0.h
463yycopy.o: ../src/tree_ty.h
464yycopy.o: ../src/yy.h
465yycosts.o: whoami.h
466yycosts.o: ../src/0.h
467yycosts.o: ../src/tree_ty.h
468yycosts.o: ../src/yy.h
469yyerror.o: whoami.h
470yyerror.o: ../src/0.h
471yyerror.o: ../src/tree_ty.h
472yyerror.o: ../src/yy.h
473yyget.o: whoami.h
474yyget.o: ../src/0.h
475yyget.o: ../src/tree_ty.h
476yyget.o: ../src/yy.h
477yyid.o: whoami.h
478yyid.o: ../src/0.h
479yyid.o: ../src/tree_ty.h
480yyid.o: ../src/yy.h
481yylex.o: whoami.h
482yylex.o: ../src/0.h
483yylex.o: ../src/tree_ty.h
484yylex.o: ../src/yy.h
485yymain.o: whoami.h
486yymain.o: ../src/0.h
487yymain.o: ../src/tree_ty.h
488yymain.o: ../src/yy.h
489yymain.o: ../src/objfmt.h
490yymain.o: ../src/config.h
491yyoptions.o: whoami.h
492yyoptions.o: ../src/0.h
493yyoptions.o: ../src/tree_ty.h
494yyoptions.o: ../src/yy.h
495yypanic.o: whoami.h
496yypanic.o: ../src/0.h
497yypanic.o: ../src/tree_ty.h
498yypanic.o: ../src/yy.h
499yyparse.o: whoami.h
500yyparse.o: ../src/0.h
501yyparse.o: ../src/tree_ty.h
502yyparse.o: ../src/yy.h
503yyprint.o: whoami.h
504yyprint.o: ../src/0.h
505yyprint.o: ../src/tree_ty.h
506yyprint.o: ../src/yy.h
507yyput.o: whoami.h
508yyput.o: ../src/0.h
509yyput.o: ../src/tree.h
510yyput.o: ../src/tree_ty.h
511yyput.o: ../src/yy.h
512yyrecover.o: whoami.h
513yyrecover.o: ../src/0.h
514yyrecover.o: ../src/tree_ty.h
515yyrecover.o: ../src/yy.h
516yyseman.o: whoami.h
517yyseman.o: ../src/0.h
518yyseman.o: ../src/tree_ty.h
519yyseman.o: ../src/yy.h
520yytree.o: whoami.h
521yytree.o: ../src/0.h
522yytree.o: ../src/tree.h
523yytree.o: ../src/tree_ty.h
524# DEPENDENCIES MUST END AT END OF FILE
525# IF YOU PUT STUFF HERE IT WILL GO AWAY
526# see make depend above
527