Commit | Line | Data |
---|---|---|
add1fb05 | 1 | # Makefile template for Configure for the opcodes library. |
7adf2630 | 2 | # Copyright (C) 1990, 91, 92, 93, 94, 95, 96, 1997 |
42b4add9 | 3 | # Free Software Foundation, Inc. |
add1fb05 SC |
4 | # Written by Cygnus Support. |
5 | # | |
6 | # This program is free software; you can redistribute it and/or modify | |
7 | # it under the terms of the GNU General Public License as published by | |
8 | # the Free Software Foundation; either version 2 of the License, or | |
9 | # (at your option) any later version. | |
10 | # | |
11 | # This program is distributed in the hope that it will be useful, | |
12 | # but WITHOUT ANY WARRANTY; without even the implied warranty of | |
13 | # MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the | |
14 | # GNU General Public License for more details. | |
15 | # | |
16 | # You should have received a copy of the GNU General Public License | |
17 | # along with this program; if not, write to the Free Software | |
40db6118 | 18 | # Foundation, Inc., 59 Temple Place - Suite 330, Boston, MA 02111-1307, USA. |
add1fb05 | 19 | |
40db6118 ILT |
20 | VPATH = @srcdir@ |
21 | srcdir = @srcdir@ | |
add1fb05 | 22 | |
40db6118 | 23 | prefix = @prefix@ |
add1fb05 | 24 | |
6d76c71f | 25 | program_transform_name = @program_transform_name@ |
40db6118 | 26 | exec_prefix = @exec_prefix@ |
42b4add9 JM |
27 | bindir = @bindir@ |
28 | libdir = @libdir@ | |
add1fb05 | 29 | |
42b4add9 JM |
30 | datadir = @datadir@ |
31 | mandir = @mandir@ | |
add1fb05 SC |
32 | man1dir = $(mandir)/man1 |
33 | man2dir = $(mandir)/man2 | |
34 | man3dir = $(mandir)/man3 | |
35 | man4dir = $(mandir)/man4 | |
36 | man5dir = $(mandir)/man5 | |
37 | man6dir = $(mandir)/man6 | |
38 | man7dir = $(mandir)/man7 | |
39 | man8dir = $(mandir)/man8 | |
40 | man9dir = $(mandir)/man9 | |
42b4add9 JM |
41 | infodir = @infodir@ |
42 | includedir = @includedir@ | |
add1fb05 SC |
43 | |
44 | SHELL = /bin/sh | |
45 | ||
40db6118 ILT |
46 | INSTALL = @INSTALL@ |
47 | INSTALL_PROGRAM = @INSTALL_PROGRAM@ | |
48 | INSTALL_DATA = @INSTALL_DATA@ | |
add1fb05 | 49 | |
40db6118 ILT |
50 | AR = @AR@ |
51 | AR_FLAGS = rc | |
52 | CC = @CC@ | |
53 | CFLAGS = @CFLAGS@ | |
add1fb05 | 54 | MAKEINFO = makeinfo |
40db6118 | 55 | RANLIB = @RANLIB@ |
add1fb05 | 56 | |
e0bf1022 ILT |
57 | ALLLIBS = @ALLLIBS@ |
58 | ||
59 | PICFLAG = @PICFLAG@ | |
60 | SHLIB = @SHLIB@ | |
61 | SHLIB_CC = @SHLIB_CC@ | |
62 | SHLIB_CFLAGS = @SHLIB_CFLAGS@ | |
63 | COMMON_SHLIB = @COMMON_SHLIB@ | |
c8303271 | 64 | SHLIB_DEP = @SHLIB_DEP@ |
e0bf1022 ILT |
65 | SHLINK = @SHLINK@ |
66 | ||
6d76c71f ILT |
67 | SONAME = lib`echo $(SHLIB) | sed -e 's,^\.\./bfd/,,' -e 's/^lib//' | sed '$(program_transform_name)'` |
68 | ||
fde326fb | 69 | INCDIR = $(srcdir)/../include |
c840244e | 70 | BFDDIR = $(srcdir)/../bfd |
fde326fb | 71 | CSEARCH = -I. -I$(srcdir) -I../bfd -I$(INCDIR) -I$(BFDDIR) |
add1fb05 SC |
72 | DEP = mkdep |
73 | ||
794a16b0 | 74 | TARGETLIB = libopcodes.a |
add1fb05 | 75 | |
f7ed13c7 JK |
76 | # To circumvent a Sun make VPATH bug, each file listed here |
77 | # should also have a foo.o: foo.c line further along in this file. | |
a4c01299 | 78 | |
42b4add9 | 79 | ALL_MACHINES = a29k-dis.o alpha-dis.o alpha-opc.o h8300-dis.o h8500-dis.o \ |
d7ace307 ILT |
80 | $(start-sanitize-arc) \ |
81 | arc-dis.o arc-opc.o \ | |
82 | $(end-sanitize-arc) \ | |
a79d0193 FF |
83 | $(start-sanitize-d10v) \ |
84 | d10v-dis.o d10v-opc.o \ | |
85 | $(end-sanitize-d10v) \ | |
b2e3f844 MH |
86 | $(start-sanitize-d30v) \ |
87 | d30v-dis.o d30v-opc.o \ | |
88 | $(end-sanitize-d30v) \ | |
40db6118 | 89 | hppa-dis.o i386-dis.o i960-dis.o m68k-dis.o m68k-opc.o \ |
a79d0193 FF |
90 | m88k-dis.o mn10200-dis.o mn10200-opc.o mn10300-dis.o \ |
91 | mn10300-opc.o mips-dis.o mips-opc.o mips16-opc.o sh-dis.o \ | |
92 | sparc-dis.o sparc-opc.o z8k-dis.o ns32k-dis.o ppc-dis.o ppc-opc.o \ | |
93 | $(start-sanitize-v850) \ | |
94 | v850-dis.o v850-opc.o \ | |
95 | $(end-sanitize-v850) \ | |
96 | $(start-sanitize-tic80) \ | |
97 | tic80-dis.o tic80-opc.o \ | |
98 | $(end-sanitize-tic80) \ | |
d7ace307 ILT |
99 | arm-dis.o w65-dis.o |
100 | ||
40db6118 | 101 | OFILES = @BFD_MACHINES@ dis-buf.o disassemble.o |
add1fb05 SC |
102 | |
103 | FLAGS_TO_PASS = \ | |
104 | "against=$(against)" \ | |
105 | "AR=$(AR)" \ | |
106 | "AR_FLAGS=$(AR_FLAGS)" \ | |
107 | "CC=$(CC)" \ | |
108 | "CFLAGS=$(CFLAGS)" \ | |
109 | "RANLIB=$(RANLIB)" \ | |
110 | "MAKEINFO=$(MAKEINFO)" \ | |
111 | "INSTALL=$(INSTALL)" \ | |
112 | "INSTALL_DATA=$(INSTALL_DATA)" \ | |
e0bf1022 | 113 | "INSTALL_PROGRAM=$(INSTALL_PROGRAM)" |
add1fb05 | 114 | |
b2e3f844 | 115 | ALL_CFLAGS = -D_GNU_SOURCE $(CSEARCH) @HDEFINES@ $(CFLAGS) |
add1fb05 | 116 | |
40db6118 | 117 | .c.o: |
e0bf1022 ILT |
118 | if [ -n "$(PICFLAG)" ]; then \ |
119 | $(CC) -c $(PICFLAG) $(ALL_CFLAGS) $< -o pic/$@; \ | |
120 | else true; fi | |
40db6118 | 121 | $(CC) -c $(ALL_CFLAGS) $< |
add1fb05 SC |
122 | |
123 | # C source files that correspond to .o's. | |
d7ace307 | 124 | CFILES = i386-dis.c z8k-dis.c m68k-dis.c mips-dis.c ns32k-dis.c ppc-dis.c |
add1fb05 | 125 | |
e0bf1022 | 126 | all: $(ALLLIBS) |
add1fb05 SC |
127 | |
128 | .NOEXPORT: | |
129 | ||
5d0734a7 | 130 | installcheck check: |
add1fb05 | 131 | |
e5bc6aaf | 132 | info: |
add1fb05 | 133 | clean-info: |
e5bc6aaf | 134 | install-info: |
5d0734a7 | 135 | dvi: |
add1fb05 SC |
136 | |
137 | # HDEPFILES comes from the host config; TDEPFILES from the target config. | |
138 | ||
139 | ||
140 | $(TARGETLIB): $(OFILES) | |
141 | rm -f $(TARGETLIB) | |
142 | $(AR) $(AR_FLAGS) $(TARGETLIB) $(OFILES) | |
143 | $(RANLIB) $(TARGETLIB) | |
144 | ||
c8303271 | 145 | LIBIBERTY_LISTS = ../libiberty/required-list ../libiberty/needed-list |
42b4add9 | 146 | BFD_PICLIST = @BFD_PICLIST@ |
c8303271 | 147 | |
42b4add9 | 148 | stamp-piclist: Makefile $(LIBIBERTY_LISTS) $(BFD_PICLIST) |
e0bf1022 ILT |
149 | rm -f tpiclist |
150 | if [ -n "$(PICFLAG)" ]; then \ | |
151 | echo $(OFILES) | sed -e 's,\([^ ][^ ]*\),pic/\1,g' > tpiclist; \ | |
152 | else \ | |
153 | echo $(OFILES) > tpiclist; \ | |
154 | fi | |
c8303271 ILT |
155 | if [ "$(COMMON_SHLIB)" = "yes" ]; then \ |
156 | lobjs=`cat $(LIBIBERTY_LISTS)`; \ | |
157 | if [ -n "$(PICFLAG)" ]; then \ | |
158 | lobjs=`echo $$lobjs | sed -e 's,\([^ ][^ ]*\),pic/\1,g'`; \ | |
159 | fi; \ | |
160 | lobjs=`echo $$lobjs | sed -e 's,\([^ ][^ ]*\),../libiberty/\1,g'`; \ | |
161 | echo $$lobjs >> tpiclist; \ | |
42b4add9 | 162 | sed -e 's,\([^ ][^ ]*\),../bfd/\1,g' $(BFD_PICLIST) >> tpiclist; \ |
c8303271 | 163 | else true; fi |
e0bf1022 ILT |
164 | $(srcdir)/../move-if-change tpiclist piclist |
165 | touch stamp-piclist | |
166 | ||
167 | piclist: stamp-piclist ; @true | |
168 | ||
c8303271 | 169 | $(SHLIB): stamp-picdir $(OFILES) piclist $(SHLIB_DEP) |
e0bf1022 | 170 | rm -f $(SHLIB) |
c8303271 | 171 | $(SHLIB_CC) $(SHLIB_CFLAGS) -o $(SHLIB) `cat piclist` |
e0bf1022 ILT |
172 | |
173 | $(SHLINK): $(SHLIB) | |
6d76c71f ILT |
174 | ts=lib`echo $(SHLIB) | sed -e 's,^\.\./bfd/,,' -e 's/^lib//' | sed -e '$(program_transform_name)'`; \ |
175 | if [ "$(COMMON_SHLIB)" = "yes" ]; then \ | |
176 | ts=../bfd/$$ts; \ | |
177 | fi; \ | |
178 | if [ "$$ts" != "$(SHLIB)" ]; then \ | |
179 | rm -f $$ts; \ | |
180 | ln -sf `echo $(SHLIB) | sed -e 's,^\.\./bfd/,,'` $$ts; \ | |
181 | else true; fi | |
e0bf1022 ILT |
182 | rm -f $(SHLINK) |
183 | ln -sf `echo $(SHLIB) | sed -e 's,^\.\./bfd/,,'` $(SHLINK) | |
184 | ||
6d76c71f ILT |
185 | # This target creates libTARGET-opcodes.so.VERSION as a symlink to |
186 | # libopcodes.so.VERSION. It is used on SunOS, which does not have SONAME. | |
187 | stamp-tshlink: $(SHLIB) | |
188 | tf=lib`echo $(SHLIB) | sed -e 's,\.\./bfd/,,' -e 's/^lib//' | sed '$(program_transform_name)'`; \ | |
189 | if [ "$(COMMON_SHLIB)" = "yes" ]; then \ | |
190 | tf=../bfd/$$tf; \ | |
191 | fi; \ | |
192 | if [ "$$tf" != "$(SHLIB)" ]; then \ | |
193 | rm -f $$tf; \ | |
194 | ln -sf $(SHLIB) $$tf; \ | |
195 | else true; fi | |
196 | if [ "$(COMMON_SHLIB)" = "yes" ]; then \ | |
197 | tf=lib`echo $(TARGETLIB) | sed -e 's/^lib//' | sed '$(program_transform_name)'`; \ | |
198 | if [ "$$tf" != "$(TARGETLIB)" ]; then \ | |
199 | rm -f $$tf; \ | |
200 | ln -sf $(TARGETLIB) $$tf; \ | |
201 | else true; fi; \ | |
202 | else true; fi | |
203 | touch stamp-tshlink | |
204 | ||
e0bf1022 ILT |
205 | $(OFILES): stamp-picdir |
206 | ||
d7ace307 | 207 | disassemble.o: disassemble.c $(INCDIR)/dis-asm.h |
e0bf1022 ILT |
208 | if [ -n "$(PICFLAG)" ]; then \ |
209 | $(CC) -c @archdefs@ $(PICFLAG) $(ALL_CFLAGS) $(srcdir)/disassemble.c -o pic/disassemble.o; \ | |
210 | else true; fi | |
40db6118 | 211 | $(CC) -c @archdefs@ $(ALL_CFLAGS) $(srcdir)/disassemble.c |
d7ace307 | 212 | |
7adf2630 ILT |
213 | a29k-dis.o: a29k-dis.c $(INCDIR)/dis-asm.h ../bfd/bfd.h $(INCDIR)/opcode/a29k.h |
214 | dis-buf.o: dis-buf.c $(INCDIR)/dis-asm.h ../bfd/bfd.h | |
215 | h8500-dis.o: h8500-dis.c h8500-opc.h $(INCDIR)/dis-asm.h ../bfd/bfd.h | |
216 | h8300-dis.o: h8300-dis.c $(INCDIR)/dis-asm.h ../bfd/bfd.h \ | |
217 | $(INCDIR)/opcode/h8300.h | |
218 | i386-dis.o: i386-dis.c $(INCDIR)/dis-asm.h ../bfd/bfd.h | |
219 | i960-dis.o: i960-dis.c $(INCDIR)/dis-asm.h ../bfd/bfd.h | |
d7ace307 | 220 | w65-dis.o: w65-dis.c |
7adf2630 ILT |
221 | m68k-dis.o: m68k-dis.c $(INCDIR)/dis-asm.h ../bfd/bfd.h \ |
222 | $(INCDIR)/floatformat.h $(INCDIR)/opcode/m68k.h | |
39620b71 | 223 | m68k-opc.o: m68k-opc.c $(INCDIR)/opcode/m68k.h |
7adf2630 | 224 | mips-dis.o: mips-dis.c $(INCDIR)/dis-asm.h ../bfd/bfd.h $(INCDIR)/opcode/mips.h |
d7ace307 | 225 | mips-opc.o: mips-opc.c $(INCDIR)/opcode/mips.h |
a79d0193 | 226 | mips16-opc.o: mips16-opc.c $(INCDIR)/opcode/mips.h |
7adf2630 | 227 | ppc-dis.o: ppc-dis.c $(INCDIR)/dis-asm.h ../bfd/bfd.h $(INCDIR)/opcode/ppc.h |
d7ace307 | 228 | ppc-opc.o: ppc-opc.c $(INCDIR)/opcode/ppc.h |
7adf2630 ILT |
229 | sparc-dis.o: sparc-dis.c $(INCDIR)/dis-asm.h ../bfd/bfd.h \ |
230 | $(INCDIR)/opcode/sparc.h | |
fde326fb | 231 | sparc-opc.o: sparc-opc.c $(INCDIR)/opcode/sparc.h |
7adf2630 ILT |
232 | z8k-dis.o: z8k-dis.c z8k-opc.h $(INCDIR)/dis-asm.h ../bfd/bfd.h |
233 | ns32k-dis.o: ns32k-dis.c $(INCDIR)/dis-asm.h ../bfd/bfd.h \ | |
234 | $(INCDIR)/opcode/ns32k.h | |
235 | sh-dis.o: sh-dis.c sh-opc.h $(INCDIR)/dis-asm.h ../bfd/bfd.h | |
236 | alpha-dis.o: alpha-dis.c $(INCDIR)/dis-asm.h ../bfd/bfd.h \ | |
237 | $(INCDIR)/opcode/alpha.h | |
238 | alpha-opc.o: alpha-opc.c $(INCDIR)/opcode/alpha.h ../bfd/bfd.h | |
239 | hppa-dis.o: hppa-dis.c $(INCDIR)/dis-asm.h ../bfd/bfd.h $(INCDIR)/opcode/hppa.h | |
240 | m88k-dis.o: m88k-dis.c $(INCDIR)/dis-asm.h ../bfd/bfd.h $(INCDIR)/opcode/m88k.h | |
241 | arm-dis.o: arm-dis.c arm-opc.h $(INCDIR)/dis-asm.h ../bfd/bfd.h | |
39620b71 | 242 | # start-sanitize-tic80 |
7adf2630 ILT |
243 | tic80-dis.o: tic80-dis.c $(INCDIR)/dis-asm.h ../bfd/bfd.h \ |
244 | $(INCDIR)/opcode/tic80.h | |
39620b71 | 245 | tic80-opc.o: tic80-opc.c $(INCDIR)/opcode/tic80.h |
f204f752 | 246 | # end-sanitize-tic80 |
39620b71 | 247 | |
68ca3238 | 248 | |
add1fb05 SC |
249 | tags etags: TAGS |
250 | ||
251 | TAGS: force | |
252 | etags $(INCDIR)/*.h $(srcdir)/*.h $(srcdir)/*.c | |
253 | ||
42b4add9 | 254 | MOSTLYCLEAN = *.o core *.E *.p *.ip pic/*.o |
d7ace307 | 255 | mostlyclean: |
c840244e | 256 | rm -rf $(MOSTLYCLEAN) |
add1fb05 | 257 | clean: |
e0bf1022 | 258 | rm -f *.a $(MOSTLYCLEAN) $(SHLIB) $(SHLINK) piclist stamp-piclist |
c840244e | 259 | distclean: clean |
e0bf1022 | 260 | rm -rf Makefile config.status TAGS config.cache config.h stamp-h \ |
42b4add9 | 261 | pic stamp-picdir config.log |
e0bf1022 | 262 | clobber realclean maintainer-clean: distclean |
add1fb05 SC |
263 | |
264 | # Mark everything as depending on config.status, since the timestamp on | |
265 | # sysdep.h might actually move backwards if we reconfig and relink it | |
266 | # to a different hosts/h-xxx.h file. This will force a recompile anyway. | |
267 | RECONFIG = config.status | |
268 | ||
269 | ||
270 | ||
271 | # This target should be invoked before building a new release. | |
272 | # 'VERSION' file must be present and contain a string of the form "x.y" | |
273 | # | |
274 | roll: | |
275 | @V=`cat VERSION` ; \ | |
276 | MAJ=`sed 's/\..*//' VERSION` ; \ | |
277 | MIN=`sed 's/.*\.//' VERSION` ; \ | |
278 | V=$$MAJ.`expr $$MIN + 1` ; \ | |
279 | rm -f VERSION ; \ | |
280 | echo $$V >VERSION ; \ | |
281 | echo Version $$V | |
282 | ||
283 | # Dummy target to force execution of dependent targets. | |
284 | # | |
285 | force: | |
286 | ||
e0bf1022 ILT |
287 | install: $(ALLLIBS) |
288 | for f in $(ALLLIBS); do \ | |
6d76c71f ILT |
289 | if [ "$$f" = "stamp-tshlink" ]; then \ |
290 | continue; \ | |
291 | fi; \ | |
292 | tf=lib`echo $$f | sed -e 's,^\.\./bfd/,,' -e 's/^lib//' | sed '$(program_transform_name)'`; \ | |
293 | rm -f $(libdir)/$$tf; \ | |
e0bf1022 | 294 | if [ "$$f" = "$(SHLINK)" ]; then \ |
6d76c71f ILT |
295 | ts=lib`echo $(SHLIB) | sed -e 's,^\.\./bfd/,,' -e 's/^lib//' | sed '$(program_transform_name)'`; \ |
296 | ln -sf $$ts $(libdir)/$$tf; \ | |
e0bf1022 | 297 | elif [ "$$f" = "$(SHLIB)" ]; then \ |
42b4add9 | 298 | @INSTALL_SHLIB@ \ |
e0bf1022 | 299 | else \ |
6d76c71f ILT |
300 | $(INSTALL_DATA) $$f $(libdir)/$$tf; \ |
301 | $(RANLIB) $(libdir)/$$tf; \ | |
302 | chmod a-x $(libdir)/$$tf; \ | |
e0bf1022 ILT |
303 | fi; \ |
304 | done | |
794a16b0 | 305 | |
824155e8 ILT |
306 | Makefile: Makefile.in config.status |
307 | CONFIG_FILES=Makefile CONFIG_HEADERS= $(SHELL) ./config.status | |
308 | ||
309 | config.h: stamp-h ; @true | |
310 | stamp-h: config.in config.status | |
311 | CONFIG_FILES= CONFIG_HEADERS=config.h:config.in $(SHELL) ./config.status | |
40db6118 | 312 | |
c8303271 | 313 | config.status: configure $(srcdir)/../bfd/configure.host $(srcdir)/../bfd/config.bfd $(srcdir)/../bfd/VERSION |
40db6118 | 314 | $(SHELL) config.status --recheck |
add1fb05 SC |
315 | |
316 | dep: $(CFILES) | |
b2e3f844 | 317 | mkdep $(ALL_CFLAGS) $? |
add1fb05 | 318 | |
e0bf1022 ILT |
319 | stamp-picdir: |
320 | if [ -n "$(PICFLAG)" ] && [ ! -d pic ]; then \ | |
321 | mkdir pic; \ | |
322 | else true; fi | |
323 | touch stamp-picdir | |
add1fb05 SC |
324 | |
325 | # What appears below is generated by a hacked mkdep using gcc -MM. | |
326 | ||
327 | # DO NOT DELETE THIS LINE -- mkdep uses it. | |
328 | # DO NOT PUT ANYTHING AFTER THIS LINE, IT WILL GO AWAY. | |
329 | ||
330 | ||
331 | # IF YOU PUT ANYTHING HERE IT WILL GO AWAY | |
332 |