Commit | Line | Data |
---|---|---|
052e90e5 | 1 | # |
c088d9b0 | 2 | # Makefile 1.8 87/12/10 |
052e90e5 | 3 | # |
391d89e6 SL |
4 | # Makefile for tahoe pcc |
5 | # | |
1aff99c4 SL |
6 | RM= /bin/rm -f |
7 | GREP= egrep | |
907b764b | 8 | MIP= ../../mip |
1aff99c4 | 9 | # |
391d89e6 SL |
10 | # Some symbols are specific to certain compilers: |
11 | # ONEPASS compile pass 1 and pass 2 together | |
391d89e6 SL |
12 | # FORT get f77-style pass 2 |
13 | # | |
1aff99c4 SL |
14 | INCS= -I. -I${MIP} |
15 | CFLAGS= -O | |
16 | LDFLAGS= | |
391d89e6 | 17 | |
1e508397 DS |
18 | # c version |
19 | OPTS= -DONEPASS ${INCS} | |
20 | FLAGS= ${CFLAGS} ${OPTS} | |
1aff99c4 SL |
21 | SRCS= code.c local.c local2.c order.c rel.c stab.c \ |
22 | ${MIP}/common.c ${MIP}/match.c ${MIP}/optim.c ${MIP}/pftn.c \ | |
1e508397 DS |
23 | ${MIP}/reader.c ${MIP}/scan.c ${MIP}/xdefs.c ${MIP}/cgram.y \ |
24 | ${MIP}/allo.c ${MIP}/trees.c table.c | |
1aff99c4 SL |
25 | OBJS= code.o local.o local2.o order.o rel.o stab.o \ |
26 | comm1.o match.o optim.o pftn.o reader.o scan.o xdefs.o cgram.o \ | |
1e508397 | 27 | allo.o trees.o table.o rodata.o |
391d89e6 | 28 | # fortran version |
1e508397 | 29 | FOPTS= -DFORT ${INCS} |
1aff99c4 SL |
30 | FFLAGS= ${CFLAGS} ${FOPTS} |
31 | FSRCS= freader.c fallo.c fmatch.c ftable.c forder.c flocal2.c fcomm2.c ftable.c | |
13988513 | 32 | FOBJS= freader.o fallo.o fmatch.o ftable.o forder.o flocal2.o fcomm2.o ftable.o |
391d89e6 | 33 | |
391d89e6 SL |
34 | TESTDIR=. |
35 | ||
1e508397 | 36 | all: ./pcctokens ./pcclocal.h ccom f1 |
391d89e6 SL |
37 | |
38 | # | |
39 | # 'ccom' is a one-pass C compiler. | |
40 | # | |
1e508397 DS |
41 | ccom: ${OBJS} rel.o |
42 | ${CC} ${LDFLAGS} -o ${TESTDIR}/ccom ${OBJS} rel.o | |
1aff99c4 | 43 | trees.o: ${MIP}/trees.c |
1e508397 | 44 | ${CC} -c ${FLAGS} ${MIP}/trees.c |
1aff99c4 | 45 | optim.o: ${MIP}/optim.c |
1e508397 | 46 | ${CC} -c ${FLAGS} ${MIP}/optim.c |
1aff99c4 | 47 | pftn.o: ${MIP}/pftn.c |
1e508397 | 48 | ${CC} -c ${FLAGS} ${MIP}/pftn.c |
1aff99c4 | 49 | code.o: code.c |
1e508397 | 50 | ${CC} -c ${FLAGS} code.c |
1aff99c4 | 51 | local.o: local.c |
1e508397 | 52 | ${CC} -c ${FLAGS} local.c |
1aff99c4 | 53 | scan.o: ${MIP}/scan.c |
1e508397 | 54 | ${CC} -c ${FLAGS} ${MIP}/scan.c |
1aff99c4 | 55 | xdefs.o: ${MIP}/xdefs.c |
1e508397 | 56 | ${CC} -c ${FLAGS} ${MIP}/xdefs.c |
1aff99c4 | 57 | cgram.o: cgram.c |
1e508397 | 58 | ${CC} -c ${FLAGS} cgram.c |
052e90e5 | 59 | rodata.o: rodata.c |
1e508397 | 60 | ${CC} -c ${FLAGS} -R rodata.c |
1aff99c4 SL |
61 | rodata.c cgram.c: ${MIP}/cgram.y ./pcctokens |
62 | cat pcctokens ${MIP}/cgram.y > gram.in | |
391d89e6 SL |
63 | ${YACC} gram.in |
64 | ${RM} rodata.c | |
65 | sh ./:yyfix yyexca yyact yypact yypgo yyr1 yyr2 yychk yydef | |
052e90e5 | 66 | mv y.tab.c cgram.c |
1aff99c4 SL |
67 | comm1.o: ${MIP}/common.c |
68 | ln ${MIP}/common.c comm1.c | |
1e508397 | 69 | ${CC} -c ${FLAGS} -DPASS1COMMON comm1.c |
391d89e6 | 70 | ${RM} comm1.c |
1aff99c4 | 71 | stab.o: stab.c |
1e508397 | 72 | ${CC} -c ${FLAGS} stab.c |
1aff99c4 | 73 | table.o: table.c |
1e508397 | 74 | ${CC} -c ${FLAGS} -R table.c |
1aff99c4 | 75 | reader.o: ${MIP}/reader.c |
1e508397 | 76 | ${CC} -c ${FLAGS} ${MIP}/reader.c |
1aff99c4 | 77 | local2.o: local2.c |
1e508397 | 78 | ${CC} -c ${FLAGS} local2.c |
1aff99c4 | 79 | order.o: order.c |
1e508397 | 80 | ${CC} -c ${FLAGS} order.c |
1aff99c4 | 81 | match.o: ${MIP}/match.c |
1e508397 | 82 | ${CC} -c ${FLAGS} ${MIP}/match.c |
1aff99c4 | 83 | allo.o: ${MIP}/allo.c |
1e508397 | 84 | ${CC} -c ${FLAGS} ${MIP}/allo.c |
391d89e6 SL |
85 | |
86 | # | |
87 | # 'f1' is the f77 and pc code generator. | |
88 | # | |
89 | f1: fort.o ${FOBJS} | |
90 | ${CC} ${LDFLAGS} -o ${TESTDIR}/f1 fort.o ${FOBJS} | |
1aff99c4 SL |
91 | fort.o: fort.h ${MIP}/fort.c |
92 | ${CC} -c ${FFLAGS} ${MIP}/fort.c | |
93 | freader.o: ${MIP}/reader.c | |
94 | ln ${MIP}/reader.c freader.c | |
95 | ${CC} -c ${FFLAGS} freader.c | |
391d89e6 | 96 | ${RM} freader.c |
1aff99c4 SL |
97 | fallo.o: ${MIP}/allo.c |
98 | ln ${MIP}/allo.c fallo.c | |
99 | ${CC} -c ${FFLAGS} fallo.c | |
391d89e6 | 100 | ${RM} fallo.c |
1aff99c4 SL |
101 | fmatch.o: ${MIP}/match.c |
102 | ln ${MIP}/match.c fmatch.c | |
103 | ${CC} -c ${FFLAGS} fmatch.c | |
391d89e6 | 104 | ${RM} fmatch.c |
1aff99c4 | 105 | ftable.o: table.c |
391d89e6 | 106 | ln table.c ftable.c |
1aff99c4 | 107 | ${CC} -c -R ${FFLAGS} ftable.c |
391d89e6 | 108 | ${RM} ftable.c |
1aff99c4 | 109 | forder.o: order.c |
391d89e6 | 110 | ln order.c forder.c |
1aff99c4 | 111 | ${CC} -c ${FFLAGS} forder.c |
391d89e6 | 112 | ${RM} forder.c |
1aff99c4 | 113 | flocal2.o: local2.c |
391d89e6 | 114 | ln local2.c flocal2.c |
1aff99c4 | 115 | ${CC} -c ${FFLAGS} flocal2.c |
391d89e6 | 116 | ${RM} flocal2.c |
1aff99c4 SL |
117 | fcomm2.o: ${MIP}/common.c |
118 | ln ${MIP}/common.c fcomm2.c | |
119 | ${CC} -c ${FFLAGS} -DPASS2COMMON fcomm2.c | |
391d89e6 | 120 | ${RM} fcomm2.c |
052e90e5 | 121 | |
f51e6ca6 KB |
122 | install: |
123 | install -s -o bin -g bin -m 755 ${TESTDIR}/ccom ${DESTDIR}/lib/ccom | |
f51e6ca6 | 124 | install -s -o bin -g bin -m 755 ${TESTDIR}/f1 ${DESTDIR}/lib/f1 |
391d89e6 | 125 | |
c088d9b0 | 126 | ./pcclocal.h: ../localdefs.h /usr/include/pcc.h |
391d89e6 | 127 | ${RM} pcclocal.h |
c088d9b0 | 128 | cat /usr/include/pcc.h ../localdefs.h | \ |
1aff99c4 SL |
129 | ${GREP} '^#[ ]*(define[ ][ ]*PCC(F|T|TM|OM)?_|ifdef|ifndef|endif)' | \ |
130 | sed -e 's/PCC[A-Z]*_//' > pcclocal.h | |
391d89e6 | 131 | |
c088d9b0 | 132 | ./pcctokens: ../localdefs.h /usr/include/pcc.h |
391d89e6 | 133 | ${RM} pcctokens |
c088d9b0 | 134 | cat /usr/include/pcc.h ../localdefs.h | \ |
1aff99c4 | 135 | ${GREP} '^#[ ]*define[ ][ ]*PCC_' | sed -e 's/^#[ ]*define[ ][ ]*PCC_/%term /' > pcctokens |
391d89e6 | 136 | |
391d89e6 | 137 | clean: |
1e508397 | 138 | ${RM} *.o ccom f1 cgram.c rodata.c pcctokens pcclocal.h \ |
1aff99c4 SL |
139 | gram.in ${SSRCS} ${FSRCS} |
140 | ||
141 | lint: | |
1e508397 | 142 | lint -hx ${OPTS} -DPASS1COMMON cgram.c \ |
1aff99c4 SL |
143 | ${MIP}/xdefs.c ${MIP}/scan.c ${MIP}/pftn.c ${MIP}/trees.c \ |
144 | ${MIP}/optim.c ${MIP}/reader.c ${MIP}/match.c ${MIP}/allo.c \ | |
1e508397 DS |
145 | ${MIP}/common.c \ |
146 | code.c local.c stab.c local2.c order.c table.c rel.c | |
1aff99c4 | 147 | |
1e508397 DS |
148 | tags: ${SRCS} |
149 | ctags ${SRCS} | |
1aff99c4 SL |
150 | |
151 | # XXX this is less than complete | |
1e508397 DS |
152 | depend: ${SRCS} ./pcclocal.h ./pcctokens |
153 | mkdep ${CFLAGS} ${INCS} ${SRCS} | |
391d89e6 | 154 | |
f51e6ca6 KB |
155 | # DO NOT DELETE THIS LINE -- mkdep uses it. |
156 | # DO NOT PUT ANYTHING AFTER THIS LINE, IT WILL GO AWAY. | |
13988513 | 157 | |
1e508397 DS |
158 | code.o: code.c ../../mip/pass1.h macdefs.h ../../mip/manifest.h |
159 | code.o: /usr/include/stdio.h pcclocal.h ../../mip/config.h ../../mip/ndu.h | |
160 | code.o: /usr/include/sys/types.h /usr/include/a.out.h /usr/include/sys/exec.h | |
161 | code.o: /usr/include/stab.h | |
162 | local.o: local.c ../../mip/pass1.h macdefs.h ../../mip/manifest.h | |
163 | local.o: /usr/include/stdio.h pcclocal.h ../../mip/config.h ../../mip/ndu.h | |
164 | local2.o: local2.c ../../mip/pass2.h macdefs.h mac2defs.h ../../mip/manifest.h | |
165 | local2.o: /usr/include/stdio.h pcclocal.h ../../mip/config.h ../../mip/ndu.h | |
166 | local2.o: /usr/include/ctype.h | |
167 | order.o: order.c ../../mip/pass2.h macdefs.h mac2defs.h ../../mip/manifest.h | |
168 | order.o: /usr/include/stdio.h pcclocal.h ../../mip/config.h ../../mip/ndu.h | |
1aff99c4 | 169 | rel.o: rel.c |
1e508397 DS |
170 | stab.o: stab.c ../../mip/pass1.h macdefs.h ../../mip/manifest.h |
171 | stab.o: /usr/include/stdio.h pcclocal.h ../../mip/config.h ../../mip/ndu.h | |
172 | stab.o: /usr/include/sys/types.h /usr/include/a.out.h /usr/include/sys/exec.h | |
173 | stab.o: /usr/include/stab.h | |
907b764b | 174 | common.o: ../../mip/common.c |
1e508397 DS |
175 | match.o: ../../mip/match.c ../../mip/pass2.h macdefs.h mac2defs.h |
176 | match.o: ../../mip/manifest.h /usr/include/stdio.h pcclocal.h | |
f51e6ca6 | 177 | match.o: ../../mip/config.h ../../mip/ndu.h |
1e508397 DS |
178 | optim.o: ../../mip/optim.c ../../mip/pass1.h macdefs.h ../../mip/manifest.h |
179 | optim.o: /usr/include/stdio.h pcclocal.h ../../mip/config.h ../../mip/ndu.h | |
180 | pftn.o: ../../mip/pftn.c ../../mip/pass1.h macdefs.h ../../mip/manifest.h | |
181 | pftn.o: /usr/include/stdio.h pcclocal.h ../../mip/config.h ../../mip/ndu.h | |
182 | reader.o: ../../mip/reader.c ../../mip/pass2.h macdefs.h mac2defs.h | |
183 | reader.o: ../../mip/manifest.h /usr/include/stdio.h pcclocal.h | |
f51e6ca6 | 184 | reader.o: ../../mip/config.h ../../mip/ndu.h |
1e508397 DS |
185 | scan.o: ../../mip/scan.c ../../mip/pass1.h macdefs.h ../../mip/manifest.h |
186 | scan.o: /usr/include/stdio.h pcclocal.h ../../mip/config.h ../../mip/ndu.h | |
187 | scan.o: /usr/include/a.out.h /usr/include/sys/exec.h /usr/include/stab.h | |
188 | scan.o: /usr/include/ctype.h /usr/include/signal.h /usr/include/machine/trap.h | |
189 | xdefs.o: ../../mip/xdefs.c ../../mip/pass1.h macdefs.h ../../mip/manifest.h | |
190 | xdefs.o: /usr/include/stdio.h pcclocal.h ../../mip/config.h ../../mip/ndu.h | |
191 | cgram.o: ../../mip/cgram.y ../../mip/pass1.h macdefs.h ../../mip/manifest.h | |
192 | cgram.o: /usr/include/stdio.h pcclocal.h ../../mip/config.h ../../mip/ndu.h | |
193 | allo.o: ../../mip/allo.c ../../mip/pass2.h macdefs.h mac2defs.h | |
194 | allo.o: ../../mip/manifest.h /usr/include/stdio.h pcclocal.h ../../mip/config.h | |
195 | allo.o: ../../mip/ndu.h | |
196 | trees.o: ../../mip/trees.c ../../mip/pass1.h macdefs.h ../../mip/manifest.h | |
197 | trees.o: /usr/include/stdio.h pcclocal.h ../../mip/config.h ../../mip/ndu.h | |
198 | trees.o: /usr/include/setjmp.h | |
199 | table.o: table.c ../../mip/pass2.h macdefs.h mac2defs.h ../../mip/manifest.h | |
200 | table.o: /usr/include/stdio.h pcclocal.h ../../mip/config.h ../../mip/ndu.h | |
f51e6ca6 KB |
201 | |
202 | # IF YOU PUT ANYTHING HERE IT WILL GO AWAY |