xref: /original-bsd/usr.bin/pascal/pc0/Makefile (revision 1db732ef)
1#
2# Copyright (c) 1980 Regents of the University of California.
3# All rights reserved.  The Berkeley software License Agreement
4# specifies the terms and conditions for redistribution.
5#
6#	@(#)Makefile	5.3 (Berkeley) 10/26/87
7#
8SCCSID = "@(#)Makefile 5.3 10/26/87"
9
10INSTALLDIR = $(DESTDIR)/usr/lib
11INSTALLNAME = ${INSTALLDIR}/pc0
12BINDIR = ../pc0
13SRCDIR = ../src
14VPATH=	../src
15WHOAMI = pc
16VERSION = 3.1
17DATE = 10/26/87
18
19MKSTR = /usr/ucb/mkstr
20EYACC = ../eyacc/eyacc
21RM = -rm -f
22TOUCH = touch -f
23
24CFLAGS = -O
25LDFLAGS = -z
26
27LIBDIR = ${DESTDIR}/usr/lib
28TMPDIR = tmp
29
30ERRORSTRINGS = ${WHOAMI}${VERSION}strings
31OLDSTRINGS = ${WHOAMI}[0-9]*.[0-9]*strings
32HOWFILE = how_${WHOAMI}
33
34SRCS =	ato.c \
35	call.c case.c clas.c const.c conv.c cset.c \
36	error.c fdec.c fend.c fhdr.c flvalue.c forop.c func.c gen.c hash.c \
37	lab.c lookup.c lval.c stklval.c \
38	main.c nl.c proc.c put.c \
39	rec.c rval.c stkrval.c\
40	savenl.c \
41	stat.c string.c subr.c \
42	tmps.c tree.c type.c var.c \
43	TRdata.c \
44	treen.c yycopy.c \
45	yycosts.c yyerror.c yyget.c yyid.c yylex.c yymain.c yyoptions.c \
46	yypanic.c yyparse.c yyprint.c yyput.c yyrecover.c yyseman.c yytree.c \
47	p2put.c stab.c pcproc.c pcfunc.c pccaseop.c pclval.c sconv.c
48
49HDRS =	0.h OPnames.h align.h iorec.h objfmt.h pstab.h pc.h \
50	send.h tree.h whoami.h yy.h config.h
51
52OTHERS = pas.y opc.c CONFIG.c gram pic.c
53
54OBJS =	ato.o \
55	call.o case.o clas.o const.o conv.o cset.o \
56	error.o fdec.o fend.o fhdr.o flvalue.o forop.o func.o gen.o hash.o \
57	lab.o lookup.o lval.o stklval.o \
58	main.o nl.o proc.o put.o \
59	rec.o rval.o stkrval.o\
60	savenl.o \
61	stat.o string.o subr.o \
62	tmps.o tree.o type.o var.o \
63	TRdata.o \
64	treen.o yycopy.o \
65	yycosts.o yyerror.o yyget.o yyid.o yylex.o yymain.o yyoptions.o \
66	yypanic.o yyparse.o yyprint.o yyput.o yyrecover.o yyseman.o yytree.o \
67	p2put.o stab.o pcproc.o pcfunc.o pccaseop.o pclval.o sconv.o
68
69a.out: ${OBJS} y.tab.o config.c
70	${CC} ${CFLAGS} ${LDFLAGS} ${OBJS} y.tab.o config.c
71
72${OBJS}:
73	${RM} `basename $@ .o`.c
74	cd ${SRCDIR}; \
75	    ${MKSTR} - ${BINDIR}/${ERRORSTRINGS} ${BINDIR}/ `basename $@ .o`.c
76	${CC} ${CFLAGS} -I. -I${SRCDIR} -c `basename $@ .o`.c
77	${RM} `basename $@ .o`.c
78
79lint:
80	cd ${SRCDIR}; lint -I. -I${BINDIR} ${SRCS}  ${BINDIR}/*.c
81
82y.tab.h: ${SRCDIR}/pas.y ${SRCDIR}/gram
83	${RM} y.tab.h y.tab.c
84	${EYACC} ${SRCDIR}/pas.y > /dev/null
85	ex - y.tab.c <${SRCDIR}/gram
86	@echo that makes y.tab.h and y.tab.c
87y.tab.o: y.tab.c y.tab.h
88	${RM} x.y.tab.c
89	${MKSTR} - ${ERRORSTRINGS} x. y.tab.c
90	${CC} ${CFLAGS} -I${SRCDIR} -I. -c x.y.tab.c
91	mv x.y.tab.o y.tab.o
92	${RM} x.y.tab.c
93
94picture: ${SRCDIR}/OPnames.h ${SRCDIR}/pic.c
95	${RM} picture
96	cc ${SRCDIR}/pic.c -o pic
97	pic >picture
98	${RM} pic
99
100opcode.h: ${SRCDIR}/OPnames.h ${SRCDIR}/opc.c
101	${RM} opcode.h
102	cc ${SRCDIR}/opc.c -o opc
103	opc >opcode.h
104	${RM} opc
105
106${SRCDIR}/0.h:
107	${TOUCH} ${SRCDIR}/0.h
108
109config.c: ${SRCDIR}/CONFIG.c
110	sed -e "s?VERSION?${VERSION}?g" \
111	    -e "s?DATE?${DATE}?g" \
112	    -e "s?INSTALLDIR?${INSTALLDIR}?g" \
113	    -e "s?LIBDIR?${LIBDIR}?g" \
114	    -e "s?ERRORSTRINGS?${ERRORSTRINGS}?g" \
115	    -e "s?HOWFILE?${HOWFILE}?g" \
116	    < ${SRCDIR}/CONFIG.c >config.c
117
118clean:
119	${RM} *.o *.c
120	${RM} y.tab.h y.tab.c y.tab.out
121	${RM} ${WHOAMI}*strings
122	${RM} config.c opcode.h picture
123	${RM} a.out core *.list *.bak errs
124	${RM} opc pic tags
125
126install: a.out
127	${RM} ${LIBDIR}/${OLDSTRINGS}
128	install -c -m 664 ${ERRORSTRINGS} ${LIBDIR}/${ERRORSTRINGS}
129	install -s -m 775 a.out ${INSTALLNAME}
130
131depend: ${SRCS} opcode.h y.tab.h
132	mkdep ${CFLAGS} -I. ${SRCS}
133
134# DO NOT DELETE THIS LINE -- mkdep uses it.
135# DO NOT PUT ANYTHING AFTER THIS LINE, IT WILL GO AWAY.
136
137ato.o: ../src/ato.c whoami.h ../src/0.h /usr/include/stdio.h
138ato.o: /usr/include/sys/types.h
139call.o: ../src/call.c whoami.h ../src/0.h /usr/include/stdio.h
140call.o: /usr/include/sys/types.h ../src/tree.h opcode.h ../src/objfmt.h
141call.o: ../src/align.h ../src/pc.h /usr/include/setjmp.h /usr/include/pcc.h
142call.o: ../src/tmps.h ../src/tree_ty.h
143case.o: ../src/case.c whoami.h ../src/0.h /usr/include/stdio.h
144case.o: /usr/include/sys/types.h ../src/tree.h opcode.h ../src/tree_ty.h
145clas.o: ../src/clas.c whoami.h ../src/0.h /usr/include/stdio.h
146clas.o: /usr/include/sys/types.h ../src/tree.h ../src/tree_ty.h
147const.o: ../src/const.c whoami.h ../src/0.h /usr/include/stdio.h
148const.o: /usr/include/sys/types.h ../src/tree.h ../src/tree_ty.h
149conv.o: ../src/conv.c whoami.h ../src/0.h /usr/include/stdio.h
150conv.o: /usr/include/sys/types.h opcode.h /usr/include/pcc.h ../src/tree_ty.h
151cset.o: ../src/cset.c whoami.h ../src/0.h /usr/include/stdio.h
152cset.o: /usr/include/sys/types.h ../src/tree.h opcode.h ../src/objfmt.h
153cset.o: ../src/tree_ty.h ../src/pc.h /usr/include/setjmp.h /usr/include/pcc.h
154cset.o: ../src/align.h
155error.o: ../src/error.c whoami.h ../src/0.h /usr/include/stdio.h
156error.o: /usr/include/sys/types.h ../src/tree_ty.h ../src/yy.h y.tab.h
157fdec.o: ../src/fdec.c whoami.h ../src/0.h /usr/include/stdio.h
158fdec.o: /usr/include/sys/types.h ../src/tree.h opcode.h ../src/objfmt.h
159fdec.o: ../src/align.h ../src/tmps.h ../src/pc.h /usr/include/setjmp.h
160fdec.o: /usr/include/pcc.h
161fend.o: ../src/fend.c whoami.h ../src/0.h /usr/include/stdio.h
162fend.o: /usr/include/sys/types.h ../src/tree.h opcode.h ../src/objfmt.h
163fend.o: ../src/align.h ../src/tmps.h ../src/pc.h /usr/include/setjmp.h
164fend.o: /usr/include/pcc.h ../src/tree_ty.h
165fhdr.o: ../src/fhdr.c whoami.h ../src/0.h /usr/include/stdio.h
166fhdr.o: /usr/include/sys/types.h ../src/tree.h opcode.h ../src/objfmt.h
167fhdr.o: ../src/align.h ../src/tree_ty.h ../src/pc.h /usr/include/setjmp.h
168flvalue.o: ../src/flvalue.c whoami.h ../src/0.h /usr/include/stdio.h
169flvalue.o: /usr/include/sys/types.h ../src/tree.h opcode.h ../src/objfmt.h
170flvalue.o: ../src/tree_ty.h ../src/pc.h /usr/include/setjmp.h
171flvalue.o: /usr/include/pcc.h ../src/tmps.h
172forop.o: ../src/forop.c whoami.h ../src/0.h /usr/include/stdio.h
173forop.o: /usr/include/sys/types.h opcode.h ../src/tree.h ../src/objfmt.h
174forop.o: ../src/pc.h /usr/include/setjmp.h /usr/include/pcc.h ../src/tmps.h
175forop.o: ../src/tree_ty.h
176func.o: ../src/func.c whoami.h
177gen.o: ../src/gen.c whoami.h
178hash.o: ../src/hash.c whoami.h ../src/0.h /usr/include/stdio.h
179hash.o: /usr/include/sys/types.h ../src/tree_ty.h ../src/yy.h y.tab.h
180lab.o: ../src/lab.c whoami.h ../src/0.h /usr/include/stdio.h
181lab.o: /usr/include/sys/types.h ../src/tree.h opcode.h ../src/objfmt.h
182lab.o: ../src/pc.h /usr/include/setjmp.h /usr/include/pcc.h ../src/tree_ty.h
183lookup.o: ../src/lookup.c whoami.h ../src/0.h /usr/include/stdio.h
184lookup.o: /usr/include/sys/types.h
185lval.o: ../src/lval.c whoami.h ../src/0.h /usr/include/stdio.h
186lval.o: /usr/include/sys/types.h ../src/tree.h opcode.h ../src/objfmt.h
187lval.o: ../src/tree_ty.h ../src/pc.h /usr/include/setjmp.h /usr/include/pcc.h
188stklval.o: ../src/stklval.c whoami.h ../src/0.h /usr/include/stdio.h
189stklval.o: /usr/include/sys/types.h ../src/tree.h opcode.h ../src/objfmt.h
190stklval.o: ../src/tree_ty.h
191main.o: ../src/main.c whoami.h ../src/0.h /usr/include/stdio.h
192main.o: /usr/include/sys/types.h ../src/tree_ty.h ../src/yy.h y.tab.h
193main.o: /usr/include/signal.h /usr/include/machine/trap.h ../src/objfmt.h
194main.o: ../src/config.h
195nl.o: ../src/nl.c whoami.h ../src/0.h /usr/include/stdio.h
196nl.o: /usr/include/sys/types.h opcode.h ../src/objfmt.h
197proc.o: ../src/proc.c whoami.h
198put.o: ../src/put.c whoami.h opcode.h ../src/0.h /usr/include/stdio.h
199put.o: /usr/include/sys/types.h ../src/objfmt.h ../src/pc.h
200put.o: /usr/include/setjmp.h ../src/align.h ../src/OPnames.h
201rec.o: ../src/rec.c whoami.h ../src/0.h /usr/include/stdio.h
202rec.o: /usr/include/sys/types.h ../src/tree.h opcode.h ../src/align.h
203rec.o: ../src/tree_ty.h
204rval.o: ../src/rval.c whoami.h ../src/0.h /usr/include/stdio.h
205rval.o: /usr/include/sys/types.h ../src/tree.h opcode.h ../src/objfmt.h
206rval.o: ../src/pc.h /usr/include/setjmp.h /usr/include/pcc.h ../src/tmps.h
207rval.o: ../src/tree_ty.h
208stkrval.o: ../src/stkrval.c whoami.h ../src/0.h /usr/include/stdio.h
209stkrval.o: /usr/include/sys/types.h ../src/tree.h opcode.h ../src/objfmt.h
210stkrval.o: ../src/align.h /usr/include/pcc.h ../src/tree_ty.h
211savenl.o: ../src/savenl.c whoami.h
212stat.o: ../src/stat.c whoami.h ../src/0.h /usr/include/stdio.h
213stat.o: /usr/include/sys/types.h ../src/tree.h ../src/objfmt.h
214stat.o: /usr/include/pcc.h ../src/pc.h /usr/include/setjmp.h ../src/tmps.h
215stat.o: opcode.h ../src/tree_ty.h
216string.o: ../src/string.c whoami.h ../src/align.h ../src/0.h
217string.o: /usr/include/stdio.h /usr/include/sys/types.h
218subr.o: ../src/subr.c whoami.h ../src/0.h /usr/include/stdio.h
219subr.o: /usr/include/sys/types.h /usr/include/sys/stat.h
220tmps.o: ../src/tmps.c whoami.h ../src/0.h /usr/include/stdio.h
221tmps.o: /usr/include/sys/types.h ../src/objfmt.h ../src/pc.h
222tmps.o: /usr/include/setjmp.h ../src/align.h ../src/tmps.h
223tree.o: ../src/tree.c whoami.h ../src/0.h /usr/include/stdio.h
224tree.o: /usr/include/sys/types.h
225type.o: ../src/type.c whoami.h ../src/0.h /usr/include/stdio.h
226type.o: /usr/include/sys/types.h ../src/tree.h ../src/objfmt.h ../src/tree_ty.h
227var.o: ../src/var.c whoami.h ../src/0.h /usr/include/stdio.h
228var.o: /usr/include/sys/types.h ../src/objfmt.h ../src/align.h ../src/iorec.h
229var.o: /usr/include/stdio.h ../src/pc.h /usr/include/setjmp.h ../src/tmps.h
230var.o: ../src/tree_ty.h
231TRdata.o: ../src/TRdata.c whoami.h ../src/0.h /usr/include/stdio.h
232TRdata.o: /usr/include/sys/types.h
233treen.o: ../src/treen.c ../src/0.h /usr/include/stdio.h
234treen.o: /usr/include/sys/types.h ../src/tree_ty.h
235yycopy.o: ../src/yycopy.c whoami.h ../src/0.h /usr/include/stdio.h
236yycopy.o: /usr/include/sys/types.h ../src/tree_ty.h ../src/yy.h y.tab.h
237yycosts.o: ../src/yycosts.c whoami.h ../src/0.h /usr/include/stdio.h
238yycosts.o: /usr/include/sys/types.h ../src/tree_ty.h ../src/yy.h y.tab.h
239yyerror.o: ../src/yyerror.c whoami.h ../src/0.h /usr/include/stdio.h
240yyerror.o: /usr/include/sys/types.h ../src/tree_ty.h ../src/yy.h y.tab.h
241yyget.o: ../src/yyget.c whoami.h ../src/0.h /usr/include/stdio.h
242yyget.o: /usr/include/sys/types.h ../src/tree_ty.h ../src/yy.h y.tab.h
243yyid.o: ../src/yyid.c whoami.h ../src/0.h /usr/include/stdio.h
244yyid.o: /usr/include/sys/types.h ../src/tree_ty.h ../src/yy.h y.tab.h
245yylex.o: ../src/yylex.c whoami.h ../src/0.h /usr/include/stdio.h
246yylex.o: /usr/include/sys/types.h ../src/tree_ty.h ../src/yy.h y.tab.h
247yymain.o: ../src/yymain.c whoami.h ../src/0.h /usr/include/stdio.h
248yymain.o: /usr/include/sys/types.h ../src/tree_ty.h ../src/yy.h y.tab.h
249yymain.o: /usr/include/a.out.h /usr/include/sys/exec.h ../src/objfmt.h
250yymain.o: /usr/include/signal.h /usr/include/machine/trap.h ../src/config.h
251yyoptions.o: ../src/yyoptions.c whoami.h ../src/0.h /usr/include/stdio.h
252yyoptions.o: /usr/include/sys/types.h ../src/tree_ty.h ../src/yy.h y.tab.h
253yypanic.o: ../src/yypanic.c whoami.h ../src/0.h /usr/include/stdio.h
254yypanic.o: /usr/include/sys/types.h ../src/tree_ty.h ../src/yy.h y.tab.h
255yyparse.o: ../src/yyparse.c whoami.h ../src/0.h /usr/include/stdio.h
256yyparse.o: /usr/include/sys/types.h ../src/tree_ty.h ../src/yy.h y.tab.h
257yyprint.o: ../src/yyprint.c whoami.h ../src/0.h /usr/include/stdio.h
258yyprint.o: /usr/include/sys/types.h ../src/tree_ty.h ../src/yy.h y.tab.h
259yyput.o: ../src/yyput.c whoami.h ../src/0.h /usr/include/stdio.h
260yyput.o: /usr/include/sys/types.h ../src/tree.h ../src/tree_ty.h ../src/yy.h
261yyput.o: y.tab.h
262yyrecover.o: ../src/yyrecover.c whoami.h ../src/0.h /usr/include/stdio.h
263yyrecover.o: /usr/include/sys/types.h ../src/tree_ty.h ../src/yy.h y.tab.h
264yyseman.o: ../src/yyseman.c whoami.h ../src/0.h /usr/include/stdio.h
265yyseman.o: /usr/include/sys/types.h ../src/tree_ty.h ../src/yy.h y.tab.h
266yytree.o: ../src/yytree.c whoami.h ../src/0.h /usr/include/stdio.h
267yytree.o: /usr/include/sys/types.h ../src/tree.h ../src/tree_ty.h
268p2put.o: ../src/p2put.c whoami.h ../src/0.h /usr/include/stdio.h
269p2put.o: /usr/include/sys/types.h ../src/objfmt.h /usr/include/pcc.h
270p2put.o: ../src/pc.h /usr/include/setjmp.h ../src/align.h ../src/tmps.h
271stab.o: ../src/stab.c whoami.h ../src/0.h /usr/include/stdio.h
272stab.o: /usr/include/sys/types.h ../src/objfmt.h ../src/yy.h y.tab.h
273stab.o: /usr/include/stab.h ../src/pstab.h ../src/pc.h /usr/include/setjmp.h
274pcproc.o: ../src/pcproc.c whoami.h ../src/0.h /usr/include/stdio.h
275pcproc.o: /usr/include/sys/types.h ../src/tree.h ../src/objfmt.h opcode.h
276pcproc.o: ../src/pc.h /usr/include/setjmp.h /usr/include/pcc.h ../src/tmps.h
277pcproc.o: ../src/tree_ty.h
278pcfunc.o: ../src/pcfunc.c whoami.h ../src/0.h /usr/include/stdio.h
279pcfunc.o: /usr/include/sys/types.h ../src/tree.h ../src/objfmt.h opcode.h
280pcfunc.o: ../src/pc.h /usr/include/setjmp.h /usr/include/pcc.h ../src/tmps.h
281pcfunc.o: ../src/tree_ty.h
282pccaseop.o: ../src/pccaseop.c whoami.h ../src/0.h /usr/include/stdio.h
283pccaseop.o: /usr/include/sys/types.h ../src/tree.h ../src/objfmt.h
284pccaseop.o: /usr/include/pcc.h ../src/pc.h /usr/include/setjmp.h ../src/tmps.h
285pccaseop.o: ../src/tree_ty.h
286pclval.o: ../src/pclval.c whoami.h ../src/0.h /usr/include/stdio.h
287pclval.o: /usr/include/sys/types.h ../src/tree.h opcode.h ../src/objfmt.h
288pclval.o: ../src/tree_ty.h ../src/pc.h /usr/include/setjmp.h /usr/include/pcc.h
289sconv.o: ../src/sconv.c whoami.h ../src/0.h /usr/include/stdio.h
290sconv.o: /usr/include/sys/types.h /usr/include/pcc.h
291
292# IF YOU PUT ANYTHING HERE IT WILL GO AWAY
293