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