xref: /original-bsd/usr.bin/pascal/pxp/Makefile (revision 7ecb520c)
1SCCSID = "@(#)Makefile	2.3 (Berkeley) 01/10/85"
2DESTDIR=
3ED=	-ex
4AS=	-as
5RM=	rm -f
6EYACC=	/usr/ucb/eyacc
7CFLAGS=	-O -I. -I${SRCDIR} -w -DRMOTHERS
8SRCDIR=	../src
9BINDIR=	../pxp
10#
11# Files which are specific to PXP
12#
13LOCOBJ=	Version.o call.o case.o const.o cset.o error.o fdec.o func.o \
14	lab.o lval.o main.o pmon.o pp.o proc.o rec.o rval.o stat.o \
15	type.o var.o y.tab.o yycomm.o yyerror.o \
16	yymain.o yyput.o rmothers.o
17#
18# Files which are shared with pi and pc0
19#
20SRCOBJ=	TRdata.o hash.o nl.o string.o subr.o tree.o treen.o yycopy.o \
21	yycosts.o yyget.o yyid.o yylex.o yypanic.o yyparse.o yyprint.o \
22	yyrecover.o yyseman.o yytree.o
23SRCSRC=	TRdata.c hash.c nl.c string.c subr.c tree.c treen.c yycopy.c \
24	yycosts.c yyget.c yyid.c yylex.c yypanic.c yyparse.c yyprint.c \
25	yyrecover.c yyseman.c yytree.c
26
27all: a.out
28
29a.out:	${LOCOBJ} ${SRCOBJ}
30	${CC} ${CFLAGS} ${LOCOBJ} ${SRCOBJ}
31
32${SRCOBJ}:
33	-ln ${SRCDIR}/$*.c $*.c
34	${CC} ${CFLAGS} -c $*.c
35	${RM} $*.c
36
37y.tab.h y.tab.c: ${SRCDIR}/pas.y
38	${EYACC} ${SRCDIR}/pas.y >/dev/null
39	${ED} - y.tab.c < ${SRCDIR}/gram
40
41newversion: version
42	version > Version.c
43
44version: version.c Version.o
45	cc -o version version.c Version.o
46
47opcode.h: ${SRCDIR}/OPnames.h ${SRCDIR}/opc.c
48	${RM} opcode.h
49	cc ${SRCDIR}/opc.c -o opc
50	./opc >opcode.h
51	${RM} opc
52
53clean:
54	-rm -f a.out core errs version *.bak
55	-rm -f *.o x* y.tab.c y.tab.h opcode.h
56
57install: a.out
58	install a.out ${DESTDIR}/usr/ucb/pxp
59#	cp a.outNOID /usr/ucb/pxp34
60
61print:
62	@pr Makefile READ_ME
63	@ls -ls | pr
64	@size a.out *.o | pr
65#	@cxref *.c | pr
66	@pr 0.h main.c ${SRCDIR}/pas.y
67	@pr yy.h yy*.c
68	@pr [a-ln-x]*.c
69#	@pr putn.s treen.s yycopy.s
70
71depend:
72	ls *.c | sed 's;^\([a-zA-Z0-9.]*\)\.c;\1.o: &;' >makedep
73	cd ${SRCDIR}; ls ${SRCSRC} | sed \
74		-e 's;^\([a-zA-Z0-9.]*\)\.c;\1.o: ${SRCDIR}/&;' \
75		>>${BINDIR}/makedep
76	/bin/grep '^#[ 	]*include' *.h ${SRCDIR}/*.h | sed \
77		-e '/<.*>/d' \
78		-e 's;\(.*\):[^"]*"\([^"]*\)".*;\1: \2;' >>makedep
79	cd ${SRCDIR}; /bin/grep '^#[ 	]*include' ${SRCSRC} | sed \
80		-e '/<.*>/d' \
81		-e 's;:[^"]*"\([^"]*\)".*;: ${SRCDIR}/\1;' \
82		-e 's;^\([a-zA-Z0-9.]*\)\.c;\1.o;' \
83		-e 's;: ${SRCDIR}/0.h;: 0.h;' \
84		-e 's;: ${SRCDIR}/whoami.h;: whoami.h;' \
85		-e 's;: ${SRCDIR}/opcode.h;: opcode.h;' >>${BINDIR}/makedep
86	/bin/grep '^#[ 	]*include' *.c | sed \
87		-e '/<.*>/d' \
88		-e 's;:[^"]*"\([^"]*\)".*;: ${SRCDIR}/\1;' \
89		-e 's;^\([a-zA-Z0-9.]*\)\.c;\1.o;' \
90		-e 's;: ${SRCDIR}/0.h;: 0.h;' \
91		-e 's;: ${SRCDIR}/whoami.h;: whoami.h;' \
92		-e 's;: ${SRCDIR}/opcode.h;: opcode.h;' >>makedep
93	echo '/^# DO NOT DELETE THIS LINE/+2,$$d' >eddep
94	echo '$$r makedep' >>eddep
95	echo 'w' >>eddep
96	cp Makefile Makefile.bak
97	ed - Makefile < eddep
98	rm eddep makedep
99	echo '# DEPENDENCIES MUST END AT END OF FILE' >> Makefile
100	echo '# IF YOU PUT STUFF HERE IT WILL GO AWAY' >> Makefile
101	echo '# see make depend above' >> Makefile
102
103# DO NOT DELETE THIS LINE
104# DEPENDENCIES MUST END AT END OF FILE
105Version.o: Version.c
106call.o: call.c
107case.o: case.c
108const.o: const.c
109cset.o: cset.c
110error.o: error.c
111fdec.o: fdec.c
112func.o: func.c
113lab.o: lab.c
114lval.o: lval.c
115main.o: main.c
116pmon.o: pmon.c
117pp.o: pp.c
118proc.o: proc.c
119rec.o: rec.c
120rmothers.o: rmothers.c
121rval.o: rval.c
122stat.o: stat.c
123type.o: type.c
124var.o: var.c
125version.o: version.c
126y.tab.o: y.tab.c
127yycomm.o: yycomm.c
128yyerror.o: yyerror.c
129yymain.o: yymain.c
130yyput.o: yyput.c
131TRdata.o: ../src/TRdata.c
132hash.o: ../src/hash.c
133nl.o: ../src/nl.c
134string.o: ../src/string.c
135subr.o: ../src/subr.c
136tree.o: ../src/tree.c
137treen.o: ../src/treen.c
138yycopy.o: ../src/yycopy.c
139yycosts.o: ../src/yycosts.c
140yyget.o: ../src/yyget.c
141yyid.o: ../src/yyid.c
142yylex.o: ../src/yylex.c
143yypanic.o: ../src/yypanic.c
144yyparse.o: ../src/yyparse.c
145yyprint.o: ../src/yyprint.c
146yyrecover.o: ../src/yyrecover.c
147yyseman.o: ../src/yyseman.c
148yytree.o: ../src/yytree.c
149../src/yy.h: y.tab.h
150TRdata.o: whoami.h
151TRdata.o: 0.h
152hash.o: whoami.h
153hash.o: 0.h
154hash.o: ../src/tree_ty.h
155hash.o: ../src/yy.h
156nl.o: whoami.h
157nl.o: 0.h
158nl.o: opcode.h
159nl.o: ../src/objfmt.h
160string.o: whoami.h
161string.o: 0.h
162string.o: ../src/send.h
163subr.o: whoami.h
164subr.o: 0.h
165tree.o: whoami.h
166tree.o: 0.h
167treen.o: 0.h
168treen.o: ../src/tree_ty.h
169yycopy.o: whoami.h
170yycopy.o: 0.h
171yycopy.o: ../src/tree_ty.h
172yycopy.o: ../src/yy.h
173yycosts.o: whoami.h
174yycosts.o: 0.h
175yycosts.o: ../src/tree_ty.h
176yycosts.o: ../src/yy.h
177yyget.o: whoami.h
178yyget.o: 0.h
179yyget.o: ../src/tree_ty.h
180yyget.o: ../src/yy.h
181yyid.o: whoami.h
182yyid.o: 0.h
183yyid.o: ../src/tree_ty.h
184yyid.o: ../src/yy.h
185yylex.o: whoami.h
186yylex.o: 0.h
187yylex.o: ../src/tree_ty.h
188yylex.o: ../src/yy.h
189yypanic.o: whoami.h
190yypanic.o: 0.h
191yypanic.o: ../src/tree_ty.h
192yypanic.o: ../src/yy.h
193yyparse.o: whoami.h
194yyparse.o: 0.h
195yyparse.o: ../src/tree_ty.h
196yyparse.o: ../src/yy.h
197yyprint.o: whoami.h
198yyprint.o: 0.h
199yyprint.o: ../src/tree_ty.h
200yyprint.o: ../src/yy.h
201yyrecover.o: whoami.h
202yyrecover.o: 0.h
203yyrecover.o: ../src/tree_ty.h
204yyrecover.o: ../src/yy.h
205yyseman.o: whoami.h
206yyseman.o: 0.h
207yyseman.o: ../src/tree_ty.h
208yyseman.o: ../src/yy.h
209yytree.o: whoami.h
210yytree.o: 0.h
211yytree.o: ../src/tree.h
212yytree.o: ../src/tree_ty.h
213call.o: 0.h
214call.o: ../src/tree.h
215case.o: 0.h
216case.o: ../src/tree.h
217const.o: 0.h
218const.o: ../src/tree.h
219cset.o: 0.h
220cset.o: ../src/tree.h
221error.o: whoami.h
222error.o: 0.h
223error.o: ../src/yy.h
224fdec.o: 0.h
225fdec.o: ../src/tree.h
226func.o: 0.h
227func.o: ../src/tree.h
228lab.o: 0.h
229lval.o: 0.h
230lval.o: ../src/tree.h
231main.o: 0.h
232pmon.o: 0.h
233pp.o: 0.h
234proc.o: 0.h
235proc.o: ../src/tree.h
236rec.o: 0.h
237rmothers.o: 0.h
238rmothers.o: ../src/tree.h
239rval.o: 0.h
240rval.o: ../src/tree.h
241stat.o: 0.h
242stat.o: ../src/tree.h
243type.o: 0.h
244type.o: ../src/tree.h
245var.o: 0.h
246var.o: ../src/tree.h
247y.tab.o: whoami.h
248y.tab.o: 0.h
249y.tab.o: ../src/tree_ty.h
250y.tab.o: ../src/yy.h
251y.tab.o: ../src/tree.h
252yycomm.o: whoami.h
253yycomm.o: 0.h
254yycomm.o: ../src/yy.h
255yyerror.o: whoami.h
256yyerror.o: 0.h
257yyerror.o: ../src/yy.h
258yymain.o: whoami.h
259yymain.o: 0.h
260yymain.o: ../src/yy.h
261yyput.o: whoami.h
262yyput.o: 0.h
263yyput.o: ../src/tree.h
264yyput.o: ../src/yy.h
265# DEPENDENCIES MUST END AT END OF FILE
266# IF YOU PUT STUFF HERE IT WILL GO AWAY
267# see make depend above
268