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