Implement formal functions and procedures
[unix-history] / usr / src / usr.bin / pascal / src / pimakefile
CommitLineData
c4e911b6 1SCCSID = "@(#)pimakefile 1.9 %G%"
ddda5d36
PK
2
3MKSTR = /usr/ucb/mkstr
4EYACC = /usr/ucb/eyacc
5f328766 5RM = -rm -f
c4e911b6 6GET = sccs -d${SRCDIR} get
ddda5d36
PK
7
8CFLAGS = -O -w
9LDFLAGS = -z
10
c4e911b6
PK
11SRCDIR = /usr/src/cmd/pc0
12INSTALLDIR = /usr/ucb
ddda5d36
PK
13LIBDIR = /usr/lib
14TMPDIR = tmp
15
c4e911b6 16ERRORSTRINGS = pi2.0strings
ddda5d36
PK
17
18SRCS = ato.c \
19 call.c case.c clas.c const.c conv.c cset.c \
c4e911b6 20 error.c fdec.c flvalue.c func.c gen.c hash.c \
ddda5d36
PK
21 lab.c lookup.c lval.c stklval.c \
22 main.c nl.c proc.c put.c \
23 rec.c rval.c stkrval.c\
24 stat.c string.c subr.c \
25 tree.c type.c var.c \
26 TRdata.c \
27 treen.c putn.c yycopy.c \
ddda5d36 28 yycosts.c yyerror.c yyget.c yyid.c yylex.c yymain.c yyoptions.c \
c4e911b6 29 yypanic.c yyparse.c yyprint.c yyput.c yyrecover.c yyseman.c yytree.c
ddda5d36 30
c4e911b6
PK
31HDRS = 0.h OPnames.h align.h iorec.h objfmt.h send.h tree.h yy.h \
32 pc.h pcops.h
ddda5d36
PK
33
34OTHERS = pas.y opc.c version.c gram pic.c
35
36OBJS = ato.o \
37 call.o case.o clas.o const.o conv.o cset.o \
c4e911b6 38 error.o fdec.o flvalue.o func.o gen.o hash.o \
ddda5d36
PK
39 lab.o lookup.o lval.o stklval.o \
40 main.o nl.o proc.o put.o \
41 rec.o rval.o stkrval.o\
42 stat.o string.o subr.o \
43 tree.o type.o var.o \
44 TRdata.o \
45 treen.o putn.o yycopy.o \
46 y.tab.o \
47 yycosts.o yyerror.o yyget.o yyid.o yylex.o yymain.o yyoptions.o \
c4e911b6 48 yypanic.o yyparse.o yyprint.o yyput.o yyrecover.o yyseman.o yytree.o
ddda5d36
PK
49
50a.out: ${OBJS} version
51 ./version > Version.c
52 ${CC} ${CFLAGS} ${LDFLAGS} ${OBJS} Version.c
53
c4e911b6 54sources: whoami.h ${SRCS} ${HDRS} ${OTHERS}
ddda5d36
PK
55
56${SRCS} ${HDRS} ${OTHERS}:
57 ${GET} ${REL} $@
58
59.c.o:
5f328766 60 ${RM} ${TMPDIR}/$*.c
ddda5d36
PK
61 ${MKSTR} - ${ERRORSTRINGS} ${TMPDIR}/ $*.c
62 cd ${TMPDIR} ; ${CC} ${CFLAGS} -I.. -c $*.c ; mv $*.o ../$*.o
5f328766 63 ${RM} ${TMPDIR}/$*.c
ddda5d36 64
c4e911b6
PK
65whoami.h:
66 ${GET} ${REL} piwhoami.h
67 mv piwhoami.h whoami.h
68
ddda5d36 69y.tab.h: pas.y gram
5f328766 70 ${EYACC} pas.y > /dev/null
ddda5d36
PK
71 ex - y.tab.c <gram
72 @echo that makes y.tab.h and y.tab.c
73
0ddf12b0 74opcode.h: OPnames.h opc.c
ddda5d36
PK
75 cc opc.c -o opc
76 opc >opcode.h
5f328766 77 ${RM} opc
ddda5d36 78
ddda5d36
PK
79pTree.h:
80 echo "/* this is not pTree.h */" > pTree.h
81
05225596
PK
82version: version.c
83 ${CC} version.c -o version
84
ddda5d36
PK
85clean:
86 ${RM} *.o ${TMPDIR}/*.c
c4e911b6 87 ${RM} whoami.h y.tab.h y.tab.c y.tab.out
ddda5d36
PK
88 ${RM} ${ERRORSTRINGS}
89 ${RM} version Version.c
90 ${RM} a.out core *.list *.bak
5f328766 91 ${RM} opc.c opc pic tags
ddda5d36
PK
92 sccs clean
93
94print: sources
95 @pr makefile READ_ME
96 @ls -ls | pr
97 @cc -o pic pic.c
98 @pic | pr
99 @rm pic
100 @pr 0.h whoami.h main.c pas.y
101 @pr OPnames.h opcode.h tree.h
ddda5d36
PK
102 @pr [a-ln-x]*.c
103 @pr yy.h yy*.c
104
105install: a.out
4ed629b9 106 sccs check
ddda5d36 107 cp ${ERRORSTRINGS} ${LIBDIR}/${ERRORSTRINGS}
c4e911b6
PK
108 cp ${INSTALLDIR}/pi ${INSTALLDIR}/pi.bak
109 cp a.out ${INSTALLDIR}/pi
ddda5d36
PK
110
111depend: sources
112 /bin/grep '^#[ ]*include' *.h \
113 | sed '/<.*>/d' \
05225596 114 | sed 's/\(.*\):[^"]*"\([^"]*\)".*/\1: \2/' >makedep
ddda5d36
PK
115 /bin/grep '^#[ ]*include' *.c \
116 | sed '/<.*>/d' \
117 | sed 's/:[^"]*"\([^"]*\)".*/: \1/' \
118 | sed 's/\.c/.o/' >>makedep
119 echo '/^# DO NOT DELETE THIS LINE/+2,$$d' >eddep
120 echo '$$r makedep' >>eddep
121 echo 'w' >>eddep
122 cp makefile makefile.bak
123 ed - makefile < eddep
124 rm eddep makedep
125 echo '# DEPENDENCIES MUST END AT END OF FILE' >> makefile
126 echo '# IF YOU PUT STUFF HERE IT WILL GO AWAY' >> makefile
127 echo '# see make depend above' >> makefile
128
129# DO NOT DELETE THIS LINE -- make depend uses it
130
05225596
PK
1310.h: pTree.h
132yy.h: y.tab.h
ddda5d36
PK
133TRdata.o: whoami.h
134TRdata.o: 0.h
135ato.o: whoami.h
136ato.o: 0.h
137call.o: whoami.h
138call.o: 0.h
139call.o: tree.h
140call.o: opcode.h
141call.o: objfmt.h
142call.o: pc.h
143call.o: pcops.h
144case.o: whoami.h
145case.o: 0.h
146case.o: tree.h
147case.o: opcode.h
148clas.o: whoami.h
149clas.o: 0.h
150clas.o: tree.h
151const.o: whoami.h
152const.o: 0.h
153const.o: tree.h
154conv.o: whoami.h
155conv.o: 0.h
156conv.o: opcode.h
157conv.o: pcops.h
158cset.o: whoami.h
159cset.o: 0.h
160cset.o: tree.h
161cset.o: opcode.h
05225596
PK
162cset.o: objfmt.h
163cset.o: pc.h
164cset.o: pcops.h
ddda5d36
PK
165error.o: whoami.h
166error.o: 0.h
167error.o: yy.h
168fdec.o: whoami.h
169fdec.o: 0.h
170fdec.o: tree.h
171fdec.o: opcode.h
172fdec.o: objfmt.h
05225596 173fdec.o: align.h
ddda5d36
PK
174fdec.o: pc.h
175fdec.o: pcops.h
c4e911b6
PK
176flvalue.o: whoami.h
177flvalue.o: 0.h
178flvalue.o: tree.h
179flvalue.o: opcode.h
180flvalue.o: objfmt.h
181flvalue.o: pc.h
182flvalue.o: pcops.h
ddda5d36
PK
183func.o: whoami.h
184func.o: 0.h
185func.o: tree.h
186func.o: opcode.h
187gen.o: whoami.h
188gen.o: 0.h
189gen.o: tree.h
190gen.o: opcode.h
191gen.o: objfmt.h
192hash.o: whoami.h
193hash.o: 0.h
194hash.o: yy.h
195lab.o: whoami.h
196lab.o: 0.h
197lab.o: tree.h
198lab.o: opcode.h
199lab.o: objfmt.h
200lab.o: pc.h
201lab.o: pcops.h
202lookup.o: whoami.h
203lookup.o: 0.h
204lval.o: whoami.h
205lval.o: 0.h
206lval.o: tree.h
207lval.o: opcode.h
208lval.o: objfmt.h
209lval.o: pc.h
210lval.o: pcops.h
211main.o: whoami.h
212main.o: 0.h
213main.o: yy.h
214main.o: objfmt.h
215nl.o: whoami.h
216nl.o: 0.h
217nl.o: opcode.h
218nl.o: objfmt.h
219opc.o: OPnames.h
ddda5d36
PK
220pic.o: OPnames.h
221proc.o: whoami.h
222proc.o: 0.h
223proc.o: tree.h
224proc.o: opcode.h
225proc.o: objfmt.h
226put.o: whoami.h
227put.o: opcode.h
228put.o: 0.h
229put.o: objfmt.h
230put.o: pc.h
231put.o: OPnames.h
232rec.o: whoami.h
233rec.o: 0.h
234rec.o: tree.h
235rec.o: opcode.h
236rval.o: whoami.h
237rval.o: 0.h
238rval.o: tree.h
239rval.o: opcode.h
240rval.o: objfmt.h
241rval.o: pc.h
242rval.o: pcops.h
ddda5d36
PK
243stat.o: whoami.h
244stat.o: 0.h
245stat.o: tree.h
246stat.o: objfmt.h
247stat.o: pcops.h
248stat.o: pc.h
249stat.o: opcode.h
250stklval.o: whoami.h
251stklval.o: 0.h
252stklval.o: tree.h
253stklval.o: opcode.h
254stklval.o: objfmt.h
255stkrval.o: whoami.h
256stkrval.o: 0.h
257stkrval.o: tree.h
258stkrval.o: opcode.h
259stkrval.o: objfmt.h
260stkrval.o: pcops.h
261string.o: whoami.h
262string.o: 0.h
263string.o: send.h
264subr.o: whoami.h
265subr.o: 0.h
266tree.o: whoami.h
267tree.o: 0.h
268type.o: whoami.h
269type.o: 0.h
270type.o: tree.h
271type.o: objfmt.h
272var.o: whoami.h
273var.o: 0.h
05225596 274var.o: align.h
ddda5d36
PK
275var.o: pc.h
276var.o: pcops.h
277var.o: iorec.h
05225596
PK
278y.tab.o: whoami.h
279y.tab.o: 0.h
280y.tab.o: yy.h
281y.tab.o: tree.h
ddda5d36
PK
282yycopy.o: 0.h
283yycopy.o: yy.h
284yycosts.o: whoami.h
285yycosts.o: 0.h
286yycosts.o: yy.h
287yyerror.o: whoami.h
288yyerror.o: 0.h
289yyerror.o: yy.h
290yyget.o: whoami.h
291yyget.o: 0.h
292yyget.o: yy.h
293yyid.o: whoami.h
294yyid.o: 0.h
295yyid.o: yy.h
296yylex.o: whoami.h
297yylex.o: 0.h
298yylex.o: yy.h
299yymain.o: whoami.h
300yymain.o: 0.h
301yymain.o: yy.h
302yymain.o: objfmt.h
303yyoptions.o: whoami.h
304yyoptions.o: 0.h
305yyoptions.o: yy.h
306yypanic.o: whoami.h
307yypanic.o: 0.h
308yypanic.o: yy.h
309yyparse.o: whoami.h
310yyparse.o: 0.h
311yyparse.o: yy.h
312yyprint.o: whoami.h
313yyprint.o: 0.h
314yyprint.o: yy.h
315yyput.o: whoami.h
316yyput.o: 0.h
317yyput.o: tree.h
318yyput.o: yy.h
319yyrecover.o: whoami.h
320yyrecover.o: 0.h
321yyrecover.o: yy.h
322yyseman.o: whoami.h
323yyseman.o: 0.h
324yyseman.o: yy.h
325yytree.o: whoami.h
326yytree.o: 0.h
327yytree.o: tree.h
328# DEPENDENCIES MUST END AT END OF FILE
329# IF YOU PUT STUFF HERE IT WILL GO AWAY
330# see make depend above