Commit | Line | Data |
---|---|---|
e881afb8 ILT |
1 | dnl Process this file with autoconf to produce a configure script. |
2 | dnl | |
8c693660 KR |
3 | AC_PREREQ(2.3) |
4 | AC_INIT(libbfd.c) | |
5 | ||
6 | AC_ARG_ENABLE(64-bit-bfd, | |
e818c22e | 7 | [ --enable-64-bit-bfd 64-bit support (on hosts with narrower word sizes)], |
a52a3ce8 | 8 | [case "${enableval}" in |
8c693660 KR |
9 | yes) want64=true ;; |
10 | no) want64=false ;; | |
11 | *) AC_MSG_ERROR(bad value ${enableval} for 64-bit-bfd option) ;; | |
12 | esac],[want64=false])dnl | |
13 | AC_ARG_ENABLE(targets, | |
e818c22e | 14 | [ --enable-targets alternative target configurations], |
8c693660 KR |
15 | [case "${enableval}" in |
16 | yes | "") AC_ERROR(enable-targets option must specify target names or 'all') | |
17 | ;; | |
18 | no) enable_targets= ;; | |
19 | *) enable_targets=$enableval ;; | |
20 | esac])dnl | |
21 | ||
b7577823 ILT |
22 | AC_CONFIG_HEADER(config.h) |
23 | ||
8c693660 KR |
24 | AC_CONFIG_AUX_DIR(`cd $srcdir/..;pwd`) |
25 | AC_CANONICAL_SYSTEM | |
26 | if test -z "$target" ; then | |
27 | AC_MSG_ERROR(Unrecognized target system type; please check config.sub.) | |
28 | fi | |
29 | AC_ARG_PROGRAM | |
30 | ||
b32ae8e2 JK |
31 | host64=false |
32 | target64=false | |
21c9f626 | 33 | |
8c693660 | 34 | # host stuff: |
21c9f626 | 35 | |
f515fb2f | 36 | # Permit host specific settings. |
5a5fa368 | 37 | . ${srcdir}/configure.host |
4dfe09da | 38 | |
f515fb2f ILT |
39 | AC_PROG_CC |
40 | AC_SUBST(CFLAGS) | |
41 | AC_SUBST(HDEFINES) | |
42 | AR=${AR-ar} | |
43 | AC_SUBST(AR) | |
8c693660 | 44 | AC_PROG_RANLIB |
f515fb2f ILT |
45 | AC_PROG_INSTALL |
46 | ||
b7577823 ILT |
47 | HOST_64BIT_LONG=0 |
48 | if test "x${HOST_64BIT_TYPE}" = "xlong"; then | |
49 | HOST_64BIT_LONG=1 | |
f515fb2f | 50 | fi |
b7577823 ILT |
51 | AC_SUBST(HOST_64BIT_LONG) |
52 | ||
53 | BFD_CC_FOR_BUILD | |
8c693660 | 54 | |
b7577823 ILT |
55 | AC_CHECK_HEADERS(stddef.h string.h strings.h stdlib.h time.h unistd.h) |
56 | AC_CHECK_HEADERS(fcntl.h sys/file.h sys/procfs.h) | |
57 | AC_CHECK_FUNCS(fcntl) | |
5b2765bf | 58 | |
b7577823 ILT |
59 | BFD_BINARY_FOPEN |
60 | ||
61 | AC_MSG_CHECKING([whether malloc must be declared]) | |
62 | AC_CACHE_VAL(bfd_cv_decl_needed_malloc, | |
63 | [AC_TRY_COMPILE([ | |
64 | #include <stdio.h> | |
65 | #ifdef HAVE_STDLIB_H | |
66 | #include <stdlib.h> | |
67 | #endif | |
68 | #ifdef HAVE_UNISTD_H | |
69 | #include <unistd.h> | |
70 | #endif], | |
71 | [char *(*pfn) = (char *(*)) malloc], | |
72 | bfd_cv_decl_needed_malloc=no, bfd_cv_decl_needed_malloc=yes)]) | |
73 | AC_MSG_RESULT($bfd_cv_decl_needed_malloc) | |
74 | if test $bfd_cv_decl_needed_malloc = yes; then | |
75 | AC_DEFINE(NEED_DECLARATION_MALLOC) | |
21c9f626 RP |
76 | fi |
77 | ||
b7577823 ILT |
78 | AC_MSG_CHECKING([whether free must be declared]) |
79 | AC_CACHE_VAL(bfd_cv_decl_needed_free, | |
80 | [AC_TRY_COMPILE([ | |
81 | #include <stdio.h> | |
82 | #ifdef HAVE_STDLIB_H | |
83 | #include <stdlib.h> | |
84 | #endif | |
85 | #ifdef HAVE_UNISTD_H | |
86 | #include <unistd.h> | |
87 | #endif], | |
88 | [int (*pfn) = (int (*)) free], | |
89 | bfd_cv_decl_needed_free=no, bfd_cv_decl_needed_free=yes)]) | |
90 | AC_MSG_RESULT($bfd_cv_decl_needed_free) | |
91 | if test $bfd_cv_decl_needed_free = yes; then | |
92 | AC_DEFINE(NEED_DECLARATION_FREE) | |
93 | fi | |
8c693660 | 94 | |
a52a3ce8 ILT |
95 | # If we are configured native, pick a core file support file. |
96 | COREFILE= | |
97 | COREFLAG= | |
98 | if test "${target}" = "${host}"; then | |
99 | case "${host}" in | |
100 | alpha-*-*) COREFILE=osf-core.o ;; | |
101 | arm-*-riscix) COREFILE=trad-core.o ;; | |
102 | hppa*-*-hpux*) COREFILE=hpux-core.o ;; | |
103 | hppa*-*-hiux*) COREFILE=hpux-core.o ;; | |
104 | hppa*-*-bsd*) COREFILE="hpux-core.o hppabsd-core.o" | |
105 | COREFLAG="-DHPUX_CORE -DHPPABSD_CORE" ;; | |
2cb159a5 | 106 | changequote(,)dnl |
b7577823 ILT |
107 | i[345]86-sequent-bsd*) |
108 | changequote([,])dnl | |
109 | COREFILE=trad-core.o; | |
110 | AC_DEFINE(TRAD_HEADER,"hosts/symmetry.h") | |
111 | ;; | |
112 | changequote(,)dnl | |
a52a3ce8 | 113 | i[345]86-sequent-sysv4*) ;; |
b7577823 ILT |
114 | i[345]86-sequent-sysv*) |
115 | changequote([,])dnl | |
116 | COREFILE=trad-core.o | |
117 | AC_DEFINE(TRAD_HEADER,"hosts/symmetry.h") | |
118 | ;; | |
119 | changequote(,)dnl | |
120 | i[345]86-*-bsd* | i[345]86-*-freebsd* | i[345]86-*-netbsd*) | |
121 | changequote([,])dnl | |
122 | COREFILE=trad-core.o | |
123 | AC_DEFINE(TRAD_HEADER,"hosts/i386bsd.h") | |
124 | ;; | |
125 | changequote(,)dnl | |
126 | i[345]86-esix-sysv3*) | |
127 | changequote([,])dnl | |
128 | COREFILE=trad-core.o | |
129 | AC_DEFINE(TRAD_HEADER,"hosts/esix.h") | |
130 | ;; | |
131 | changequote(,)dnl | |
132 | i[345]86-*-sco* | i[345]86-*-isc*) | |
133 | changequote([,])dnl | |
134 | COREFILE=trad-core.o | |
135 | AC_DEFINE(TRAD_HEADER,"hosts/i386sco.h") | |
136 | ;; | |
137 | changequote(,)dnl | |
138 | i[345]86-*-mach3*) | |
139 | changequote([,])dnl | |
140 | COREFILE=trad-core.o | |
141 | AC_DEFINE(TRAD_HEADER,"hosts/i386mach3.h") | |
142 | ;; | |
143 | changequote(,)dnl | |
144 | i[345]86-*-linux*) | |
145 | changequote([,])dnl | |
146 | COREFILE=trad-core.o | |
147 | AC_DEFINE(TRAD_HEADER,"hosts/i386linux.h") | |
148 | ;; | |
149 | changequote(,)dnl | |
a52a3ce8 ILT |
150 | i[345]86-*-isc*) COREFILE=trad-core.o ;; |
151 | i[345]86-*-aix*) COREFILE=aix386-core.o ;; | |
2cb159a5 | 152 | changequote([,])dnl |
b7577823 ILT |
153 | mips-dec-bsd*) |
154 | COREFILE=trad-core.o | |
155 | AC_DEFINE(TRAD_HEADER,"hosts/mipsbsd.h") | |
156 | ;; | |
157 | mips-dec-mach3*) | |
158 | COREFILE=trad-core.o | |
159 | AC_DEFINE(TRAD_HEADER,"hosts/mipsmach3.h") | |
160 | ;; | |
161 | mips-dec-*) | |
162 | COREFILE=trad-core.o | |
163 | AC_DEFINE(TRAD_HEADER,"hosts/decstation.h") | |
164 | ;; | |
a52a3ce8 ILT |
165 | mips-sgi-irix4*) COREFILE=irix-core.o ;; |
166 | mips-sgi-irix5*) COREFILE=irix-core.o ;; | |
b7577823 ILT |
167 | mips-*-mach3*) |
168 | COREFILE=trad-core.o | |
169 | AC_DEFINE(TRAD_HEADER,"hosts/mipsmach3.h") | |
170 | ;; | |
a52a3ce8 | 171 | mips-*-sysv4*) ;; |
b7577823 ILT |
172 | mips-*-sysv* | mips-*-riscos*) |
173 | COREFILE=trad-core.o | |
174 | AC_DEFINE(TRAD_HEADER,"hosts/riscos.h") | |
175 | ;; | |
176 | mips-sony-bsd*) | |
177 | COREFILE=trad-core.o | |
178 | AC_DEFINE(TRAD_HEADER,"hosts/news-mips".h) | |
179 | ;; | |
180 | m68*-bull*-sysv*) | |
181 | COREFILE=trad-core.o | |
182 | AC_DEFINE(TRAD_HEADER,"hosts/dpx2.h") | |
183 | ;; | |
a52a3ce8 | 184 | m68*-hp-hpux*) COREFILE=hpux-core.o ;; |
b7577823 ILT |
185 | m68*-hp-bsd*) |
186 | COREFILE=trad-core.o | |
187 | AC_DEFINE(TRAD_HEADER,"hosts/hp300bsd.h") | |
188 | ;; | |
a52a3ce8 | 189 | m68*-motorola-sysv*) COREFILE=ptrace-core.o ;; |
b7577823 ILT |
190 | m68*-sony-*) |
191 | COREFILE=trad-core.o | |
192 | AC_DEFINE(TRAD_HEADER,"hosts/news.h") | |
193 | ;; | |
a52a3ce8 ILT |
194 | m88*-*-sysv4*) ;; |
195 | m88*-motorola-sysv*) COREFILE=trad-core.o ;; | |
b7577823 ILT |
196 | m88*-*-mach3*) |
197 | COREFILE=trad-core.o | |
198 | AC_DEFINE(TRAD_HEADER,"hosts/m88kmach3.h") | |
199 | ;; | |
200 | ns32k-pc532-mach) | |
201 | COREFILE=trad-core.o | |
202 | AC_DEFINE(TRAD_HEADER,"hosts/pc532mach.h") | |
203 | ;; | |
a52a3ce8 ILT |
204 | rs6000-*-lynx*) COREFILE=lynx-core.o ;; |
205 | rs6000-*-aix4*) COREFILE=rs6000-core.o | |
206 | COREFLAG=-DALTERNATE_AIX_CORE_FORMAT ;; | |
207 | rs6000-*-*) COREFILE=rs6000-core.o ;; | |
208 | powerpc-*-aix4*) COREFILE=rs6000-core.o | |
209 | COREFLAG=-DALTERNATE_AIX_CORE_FORMAT ;; | |
210 | powerpc-*-aix*) COREFILE=rs6000-core.o ;; | |
b7577823 ILT |
211 | tahoe-*-*) |
212 | COREFILE=trad-core.o | |
213 | AC_DEFINE(TRAD_HEADER,"hosts/tahoe.h") | |
214 | ;; | |
215 | vax-*-ultrix2*) | |
216 | COREFILE=trad-core.o | |
217 | AC_DEFINE(TRAD_HEADER,"hosts/vaxult2.h") | |
218 | ;; | |
219 | vax-*-ultrix*) | |
220 | COREFILE=trad-core.o | |
221 | AC_DEFINE(TRAD_HEADER,"hosts/vaxult2.h") | |
222 | ;; | |
223 | vax-*-*) | |
224 | COREFILE=trad-core.o | |
225 | AC_DEFINE(TRAD_HEADER,"hosts/vaxbsd.h") | |
226 | ;; | |
a52a3ce8 ILT |
227 | esac |
228 | ||
229 | case "$COREFILE" in | |
230 | aix386-core.o) COREFLAG=-DAIX386_CORE ;; | |
231 | hppabsd-core.o) COREFLAG=-DHPPABSD_CORE ;; | |
232 | hpux-core.o) COREFLAG=-DHPUX_CORE ;; | |
233 | irix-core.o) COREFLAG=-DIRIX_CORE ;; | |
234 | lynx-core.o) COREFLAG=-DLYNX_CORE ;; | |
235 | osf-core.o) COREFLAG=-DOSF_CORE ;; | |
236 | ptrace-core.o) COREFLAG=-DPTRACE_CORE ;; | |
237 | rs6000-core.o) COREFLAG="$COREFLAG -DAIX_CORE" ;; | |
b7577823 | 238 | trad-core.o) COREFLAG="$COREFLAG -DTRAD_CORE" ;; |
a52a3ce8 ILT |
239 | esac |
240 | fi | |
241 | AC_SUBST(COREFILE) | |
242 | AC_SUBST(COREFLAG) | |
243 | ||
8c693660 | 244 | # target stuff: |
21c9f626 | 245 | |
180acef5 | 246 | # Canonicalize the secondary target names. |
8c693660 | 247 | if test -n "$enable_targets" ; then |
318b02b6 | 248 | for targ in `echo $enable_targets | sed 's/,/ /g'` |
180acef5 | 249 | do |
9525b61b | 250 | result=`$ac_config_sub $targ 2>/dev/null` |
8c693660 | 251 | if test -n "$result" ; then |
180acef5 DM |
252 | canon_targets="$canon_targets $result" |
253 | else | |
254 | # Allow targets that config.sub doesn't recognize, like "all". | |
255 | canon_targets="$canon_targets $targ" | |
256 | fi | |
257 | done | |
258 | fi | |
5f9a2245 DM |
259 | |
260 | all_targets=false | |
2b79a104 ILT |
261 | defvec= |
262 | selvecs= | |
263 | selarchs= | |
264 | TDEFINES= | |
180acef5 | 265 | for targ in $target $canon_targets |
5f9a2245 | 266 | do |
2b79a104 | 267 | if test "x$targ" = "xall"; then |
5f9a2245 DM |
268 | all_targets=true |
269 | else | |
2b79a104 ILT |
270 | . $srcdir/config.bfd |
271 | if test "x$targ" = "x$target"; then | |
272 | defvec=$targ_defvec | |
5f9a2245 | 273 | fi |
2b79a104 ILT |
274 | selvecs="$selvecs $targ_defvec $targ_selvecs" |
275 | selarchs="$selarchs $targ_archs" | |
276 | TDEFINES="$TDEFINES $targ_cflags" | |
5f9a2245 DM |
277 | fi |
278 | done | |
2b79a104 | 279 | AC_SUBST(TDEFINES) |
b32ae8e2 | 280 | |
ffe26398 KR |
281 | # This processing still needs to be done if we're to decide properly whether |
282 | # 64-bit support needs to be compiled in. Currently, it will be included if | |
283 | # the default or any other explicitly requested target requires it; it | |
284 | # will not be included on a 32-bit host if no 64-bit target is requested, and | |
285 | # no "--with-64-bit-bfd" option is given, even if "--with-targets=all" is | |
286 | # used. | |
287 | ||
2b79a104 | 288 | # uniq the default and selected vectors in all the configured targets. |
ffe26398 | 289 | f="" |
2b79a104 | 290 | for i in $selvecs ; do |
ffe26398 KR |
291 | case " $f " in |
292 | *" $i "*) ;; | |
293 | *) f="$f $i" ;; | |
294 | esac | |
295 | done | |
2b79a104 | 296 | selvecs="$f" |
ffe26398 | 297 | |
2b79a104 | 298 | # uniq the architectures in all the configured targets. |
ffe26398 | 299 | f="" |
2b79a104 | 300 | for i in $selarchs ; do |
ffe26398 KR |
301 | case " $f " in |
302 | *" $i "*) ;; | |
303 | *) f="$f $i" ;; | |
304 | esac | |
305 | done | |
2b79a104 | 306 | selarchs="$f" |
5f9a2245 | 307 | |
ffe26398 KR |
308 | # Target backend .o files. |
309 | tb= | |
310 | ||
a52a3ce8 ILT |
311 | elf="elf.o elflink.o" |
312 | ||
2b79a104 | 313 | for vec in $selvecs |
ffe26398 KR |
314 | do |
315 | case "$vec" in | |
316 | # This list is alphabetized to make it easy to compare | |
317 | # with the two vector lists in targets.c. | |
69645d10 | 318 | a29kcoff_big_vec) tb="$tb coff-a29k.o cofflink.o" ;; |
ffe26398 | 319 | a_out_adobe_vec) tb="$tb aout-adobe.o aout32.o stab-syms.o" ;; |
a52a3ce8 ILT |
320 | armpe_little_vec) tb="$tb pe-arm.o cofflink.o " ;; |
321 | armpe_big_vec) tb="$tb pe-arm.o cofflink.o " ;; | |
322 | armpei_little_vec) tb="$tb pei-arm.o cofflink.o " ;; | |
323 | armpei_big_vec) tb="$tb pei-arm.o cofflink.o " ;; | |
4f9617ca | 324 | aout0_big_vec) tb="$tb aout0.o aout32.o stab-syms.o" ;; |
8c693660 KR |
325 | aout_arm_big_vec) tb="$tb aout-arm.o aout32.o stab-syms.o" ;; |
326 | aout_arm_little_vec) tb="$tb aout-arm.o aout32.o stab-syms.o" ;; | |
ffe26398 KR |
327 | aout_mips_big_vec) tb="$tb mipsbsd.o aout32.o stab-syms.o" ;; |
328 | aout_mips_little_vec) tb="$tb mipsbsd.o aout32.o stab-syms.o" ;; | |
2487f88f | 329 | apollocoff_vec) tb="$tb coff-apollo.o" ;; |
ffe26398 KR |
330 | b_out_vec_big_host) tb="$tb bout.o aout32.o stab-syms.o" ;; |
331 | b_out_vec_little_host) tb="$tb bout.o aout32.o stab-syms.o" ;; | |
c7b44b04 | 332 | # start-sanitize-arc |
a52a3ce8 ILT |
333 | bfd_elf32_littlearc_vec) tb="$tb elf32-arc.o elf32.o $elf" ;; |
334 | bfd_elf32_bigarc_vec) tb="$tb elf32-arc.o elf32.o $elf" ;; | |
c7b44b04 | 335 | # end-sanitize-arc |
a52a3ce8 ILT |
336 | bfd_elf32_big_generic_vec) tb="$tb elf32-gen.o elf32.o $elf" ;; |
337 | bfd_elf32_bigmips_vec) tb="$tb elf32-mips.o elf32.o $elf ecofflink.o" ;; | |
338 | bfd_elf32_hppa_vec) tb="$tb elf32-hppa.o elf32.o $elf" ;; | |
339 | bfd_elf32_i386_vec) tb="$tb elf32-i386.o elf32.o $elf" ;; | |
340 | bfd_elf32_i860_vec) tb="$tb elf32-i860.o elf32.o $elf" ;; | |
341 | bfd_elf32_little_generic_vec) tb="$tb elf32-gen.o elf32.o $elf" ;; | |
342 | bfd_elf32_littlemips_vec) tb="$tb elf32-mips.o elf32.o $elf ecofflink.o" ;; | |
343 | bfd_elf32_m68k_vec) tb="$tb elf32-m68k.o elf32.o $elf" ;; | |
344 | bfd_elf32_m88k_vec) tb="$tb elf32-m88k.o elf32.o $elf" ;; | |
345 | bfd_elf32_powerpc_vec) tb="$tb elf32-ppc.o elf32.o $elf" ;; | |
346 | bfd_elf32_powerpcle_vec) tb="$tb elf32-ppc.o elf32.o $elf" ;; | |
347 | bfd_elf32_sparc_vec) tb="$tb elf32-sparc.o elf32.o $elf" ;; | |
348 | bfd_elf64_big_generic_vec) tb="$tb elf64-gen.o elf64.o $elf" | |
7adbe989 | 349 | target64=true ;; |
a52a3ce8 | 350 | bfd_elf64_little_generic_vec) tb="$tb elf64-gen.o elf64.o $elf" |
7adbe989 | 351 | target64=true ;; |
a52a3ce8 | 352 | bfd_elf64_sparc_vec) tb="$tb elf64-sparc.o elf64.o $elf" |
7adbe989 | 353 | target64=true ;; |
4f9617ca | 354 | cisco_core_vec) tb="$tb cisco-core.o" ;; |
ffe26398 | 355 | demo_64_vec) tb="$tb demo64.o aout64.o stab-syms.o" |
7adbe989 | 356 | target64=true ;; |
318b02b6 KR |
357 | ecoff_big_vec) tb="$tb coff-mips.o ecoff.o ecofflink.o" ;; |
358 | ecoff_little_vec) tb="$tb coff-mips.o ecoff.o ecofflink.o" ;; | |
359 | ecoffalpha_little_vec) tb="$tb coff-alpha.o ecoff.o ecofflink.o" | |
5dac2dd5 | 360 | target64=true ;; |
ffe26398 KR |
361 | h8300coff_vec) tb="$tb coff-h8300.o reloc16.o" ;; |
362 | h8500coff_vec) tb="$tb coff-h8500.o reloc16.o" ;; | |
363 | host_aout_vec) tb="$tb host-aout.o aout32.o stab-syms.o" ;; | |
364 | hp300bsd_vec) tb="$tb hp300bsd.o aout32.o stab-syms.o" ;; | |
365 | hp300hpux_vec) tb="$tb hp300hpux.o aout32.o stab-syms.o" ;; | |
ffe26398 KR |
366 | i386aout_vec) tb="$tb i386aout.o aout32.o stab-syms.o" ;; |
367 | i386bsd_vec) tb="$tb i386bsd.o aout32.o stab-syms.o" ;; | |
4f9617ca | 368 | i386dynix_vec) tb="$tb i386dynix.o aout32.o stab-syms.o" ;; |
bd23b552 | 369 | i386coff_vec) tb="$tb coff-i386.o cofflink.o" ;; |
c7b44b04 | 370 | i386msdos_vec) tb="$tb i386msdos.o" ;; |
8c693660 KR |
371 | i386pe_vec) tb="$tb pe-i386.o cofflink.o " ;; |
372 | i386pei_vec) tb="$tb pei-i386.o cofflink.o" ;; | |
ffe26398 | 373 | i386linux_vec) tb="$tb i386linux.o aout32.o stab-syms.o" ;; |
48ee0757 | 374 | i386lynx_aout_vec) tb="$tb i386lynx.o lynx-core.o aout32.o stab-syms.o" ;; |
bd23b552 | 375 | i386lynx_coff_vec) tb="$tb cf-i386lynx.o cofflink.o lynx-core.o stab-syms.o" ;; |
5dac2dd5 | 376 | i386mach3_vec) tb="$tb i386mach3.o aout32.o stab-syms.o" ;; |
a3f7a777 | 377 | i386netbsd_vec) tb="$tb i386netbsd.o aout32.o stab-syms.o" ;; |
85cc33c7 | 378 | i386os9k_vec) tb="$tb i386os9k.o aout32.o stab-syms.o" ;; |
ffe26398 KR |
379 | icoff_big_vec) tb="$tb coff-i960.o" ;; |
380 | icoff_little_vec) tb="$tb coff-i960.o" ;; | |
381 | ieee_vec) tb="$tb ieee.o" ;; | |
bd23b552 ILT |
382 | m68kcoff_vec) tb="$tb coff-m68k.o cofflink.o" ;; |
383 | m68kcoffun_vec) tb="$tb coff-u68k.o coff-m68k.o cofflink.o" ;; | |
48ee0757 | 384 | m68klynx_aout_vec) tb="$tb m68klynx.o lynx-core.o aout32.o stab-syms.o" ;; |
bd23b552 | 385 | m68klynx_coff_vec) tb="$tb cf-m68klynx.o coff-m68k.o cofflink.o lynx-core.o stab-syms.o" ;; |
ec35a1c2 | 386 | m68knetbsd_vec) tb="$tb m68knetbsd.o aout32.o stab-syms.o" ;; |
ffe26398 KR |
387 | m88kbcs_vec) tb="$tb coff-m88k.o" ;; |
388 | newsos3_vec) tb="$tb newsos3.o aout32.o stab-syms.o" ;; | |
ffe26398 | 389 | nlm32_i386_vec) tb="$tb nlm32-i386.o nlm32.o nlm.o" ;; |
5dac2dd5 | 390 | nlm32_sparc_vec) tb="$tb nlm32-sparc.o nlm32.o nlm.o" ;; |
85cc33c7 | 391 | nlm32_alpha_vec) tb="$tb nlm32-alpha.o nlm32.o nlm.o" |
7adbe989 | 392 | target64=true ;; |
318b02b6 | 393 | riscix_vec) tb="$tb aout32.o riscix.o stab-syms.o" ;; |
4f9617ca | 394 | nlm32_powerpc_vec) tb="$tb nlm32-ppc.o nlm32.o nlm.o" ;; |
7a1d4567 | 395 | pc532netbsd_vec) tb="$tb ns32knetbsd.o aout-ns32k.o stab-syms.o" ;; |
318b02b6 | 396 | pc532machaout_vec) tb="$tb pc532-mach.o aout-ns32k.o stab-syms.o" ;; |
ffe26398 | 397 | rs6000coff_vec) tb="$tb coff-rs6000.o" ;; |
ec35a1c2 | 398 | shcoff_vec) tb="$tb coff-sh.o cofflink.o" ;; |
03c4ce2f | 399 | # start-sanitize-rce |
fb870b50 | 400 | rce_aout_vec) tb="$tb aout-rce.o aout32.o stab-syms.o" ;; |
03c4ce2f | 401 | # end-sanitize-rce |
7a1d4567 | 402 | shlcoff_vec) tb="$tb coff-sh.o cofflink.o" ;; |
318b02b6 | 403 | som_vec) tb="$tb som.o" ;; |
c9368a3b SS |
404 | sparclynx_aout_vec) tb="$tb sparclynx.o lynx-core.o aout32.o stab-syms.o" ;; |
405 | sparclynx_coff_vec) tb="$tb cf-sparclynx.o lynx-core.o stab-syms.o" ;; | |
a3f7a777 | 406 | sparcnetbsd_vec) tb="$tb sparcnetbsd.o aout32.o stab-syms.o" ;; |
6a6676fb | 407 | sparccoff_vec) tb="$tb coff-sparc.o" ;; |
318b02b6 | 408 | srec_vec) tb="$tb srec.o" ;; |
ffe26398 | 409 | sunos_big_vec) tb="$tb sunos.o aout32.o stab-syms.o" ;; |
318b02b6 | 410 | symbolsrec_vec) tb="$tb srec.o" ;; |
ffe26398 KR |
411 | tekhex_vec) tb="$tb tekhex.o" ;; |
412 | we32kcoff_vec) tb="$tb coff-we32k.o" ;; | |
413 | z8kcoff_vec) tb="$tb coff-z8k.o reloc16.o" ;; | |
c7b44b04 | 414 | w65_vec) tb="$tb coff-w65.o reloc16.o" ;; |
8c693660 | 415 | versados_vec) tb="$tb versados.o" ;; |
ffe26398 | 416 | |
ffe26398 | 417 | "") ;; |
8c693660 | 418 | *) AC_MSG_ERROR(*** unknown target vector $vec) ;; |
ffe26398 KR |
419 | esac |
420 | done | |
5f9a2245 | 421 | |
ffe26398 | 422 | # Target architecture .o files. |
2b79a104 | 423 | ta=`echo $selarchs | sed -e s/bfd_/cpu-/g -e s/_arch/.o/g` |
5f9a2245 | 424 | |
ffe26398 KR |
425 | # Weed out duplicate .o files. |
426 | f="" | |
427 | for i in $tb ; do | |
428 | case " $f " in | |
429 | *" $i "*) ;; | |
430 | *) f="$f $i" ;; | |
431 | esac | |
432 | done | |
433 | tb="$f" | |
434 | ||
435 | f="" | |
436 | for i in $ta ; do | |
437 | case " $f " in | |
438 | *" $i "*) ;; | |
439 | *) f="$f $i" ;; | |
440 | esac | |
441 | done | |
442 | ta="$f" | |
5f9a2245 | 443 | |
ffe26398 KR |
444 | bfd_backends="$tb" |
445 | bfd_machines="$ta" | |
5f9a2245 | 446 | |
8c693660 | 447 | if test x${all_targets} = xtrue ; then |
ffe26398 KR |
448 | bfd_backends="${bfd_backends}"' $(ALL_BACKENDS)' |
449 | bfd_machines="${bfd_machines}"' $(ALL_MACHINES)' | |
2b79a104 ILT |
450 | selvecs= |
451 | selarchs= | |
cede9731 PS |
452 | else # all_targets is true |
453 | # Only set these if they will be nonempty, for the clever echo. | |
2b79a104 ILT |
454 | test -n "$selvecs" && |
455 | selvecs=`echo $selvecs | sed -e 's/^/\&/' -e 's/ \(.\)/,\&\1/g'` | |
456 | test -n "$selarchs" && | |
457 | selarchs=`echo $selarchs | sed -e 's/ \(.\)/,\1/g'` | |
5f9a2245 DM |
458 | fi # all_targets is true |
459 | ||
7adbe989 KR |
460 | case ${host64}-${target64}-${want64} in |
461 | *true*) | |
462 | wordsize=64 | |
463 | all_backends='$(BFD64_BACKENDS) $(BFD32_BACKENDS)' | |
464 | ;; | |
465 | false-false-false) | |
466 | wordsize=32 | |
467 | all_backends='$(BFD32_BACKENDS)' | |
468 | ;; | |
469 | esac | |
470 | ||
8c693660 KR |
471 | AC_SUBST(wordsize) |
472 | AC_SUBST(all_backends) | |
473 | AC_SUBST(bfd_backends) | |
474 | AC_SUBST(bfd_machines) | |
7adbe989 | 475 | |
8c693660 | 476 | tdefaults="" |
c7b44b04 MM |
477 | test -n "${defvec}" && tdefaults="${tdefaults} -DDEFAULT_VECTOR=${defvec}" |
478 | test -n "${selvecs}" && tdefaults="${tdefaults} -DSELECT_VECS='${selvecs}'" | |
479 | test -n "${selarchs}" && tdefaults="${tdefaults} -DSELECT_ARCHITECTURES='${selarchs}'" | |
8c693660 | 480 | AC_SUBST(tdefaults) |
c812942f | 481 | |
8c693660 | 482 | rm -f doc/config.status |
870015b1 ILT |
483 | AC_OUTPUT(Makefile doc/Makefile, |
484 | [case x$CONFIG_HEADERS in xconfig.h) echo > stamp-h ;; esac]) |