Support R_SPARC_WDISP10 and R_SPARC_H34.
[external/binutils.git] / bfd / config.bfd
1 # config.bfd
2 # Convert a canonical host type into a BFD host type.
3 # Set shell variable targ to canonical target name, and run
4 # using ``. config.bfd''.
5 # Sets the following shell variables:
6 #  targ_defvec          Default vector for this target
7 #  targ_selvecs         Vectors to build for this target
8 #  targ64_selvecs       Vectors to build if --enable-64-bit-bfd is given
9 #                       or if host is 64 bit.
10 #  targ_archs           Architectures for this target
11 #  targ_cflags          $(CFLAGS) for this target (FIXME: pretty bogus)
12 #  targ_underscore      Whether underscores are used: yes or no
13
14 # Part of this file is processed by targmatch.sed to generate the
15 # targmatch.h file.  The #ifdef and #endif lines that appear below are
16 # copied directly into targmatch.h.
17
18 # The binutils c++filt program wants to know whether underscores are
19 # stripped or not.  That is why we set targ_underscore.  c++filt uses
20 # this information to choose a default.  This information is
21 # duplicated in the symbol_leading_char field of the BFD target
22 # vector, but c++filt does not deal with object files and is not
23 # linked against libbfd.a.  It is not terribly important that c++filt
24 # get this right; it is just convenient.
25
26 targ_defvec=
27 targ_selvecs=
28 targ64_selvecs=
29 targ_cflags=
30 targ_underscore=no
31
32 # Catch obsolete configurations.
33 case $targ in
34  null)
35     if test "x$enable_obsolete" != xyes; then
36       echo "*** Configuration $targ is obsolete." >&2
37       echo "*** Specify --enable-obsolete to build it anyway." >&2
38       echo "*** Support will be REMOVED in the next major release of BINUTILS," >&2
39       echo "*** unless a maintainer comes forward." >&2
40       exit 1
41     fi;;
42 esac
43
44 case $targ in
45  m68*-apple-aux* | \
46  m68*-apollo-* | \
47  m68*-bull-sysv* | \
48  m68*-*-rtemscoff* | \
49  maxq-*-coff | \
50  i960-*-rtems* | \
51  or32-*-rtems* | \
52  m68*-*-lynxos* | \
53  sparc-*-lynxos* | \
54  vax-*-vms* | \
55  arm-*-oabi | \
56  a29k-* | \
57  hppa*-*-rtems* | \
58  *-go32-rtems* | \
59  i[3-7]86*-*-rtemscoff* | \
60  mips*el-*-rtems* | \
61  powerpcle-*-rtems* | \
62  sparc*-*-rtemsaout* | \
63  null)
64     echo "*** Configuration $targ is obsolete." >&2
65     echo "*** Support has been REMOVED." >&2
66     exit 1
67     ;;
68 esac
69
70 targ_cpu=`echo $targ | sed 's/^\([^-]*\)-\([^-]*\)-\(.*\)$/\1/'`
71 case "${targ_cpu}" in
72 alpha*)          targ_archs=bfd_alpha_arch ;;
73 am34*|am33_2.0*) targ_archs=bfd_mn10300_arch ;;
74 arm*)            targ_archs=bfd_arm_arch ;;
75 bfin*)           targ_archs=bfd_bfin_arch ;;
76 c30*)            targ_archs=bfd_tic30_arch ;;
77 c4x*)            targ_archs=bfd_tic4x_arch ;;
78 c54x*)           targ_archs=bfd_tic54x_arch ;;
79 cr16*)           targ_archs=bfd_cr16_arch ;;
80 crisv32)         targ_archs=bfd_cris_arch ;;
81 crx*)            targ_archs=bfd_crx_arch ;;
82 dlx*)            targ_archs=bfd_dlx_arch ;;
83 fido*)           targ_archs=bfd_m68k_arch ;;
84 hppa*)           targ_archs=bfd_hppa_arch ;;
85 i[3-7]86)        targ_archs=bfd_i386_arch ;;
86 i370)            targ_archs=bfd_i370_arch ;;
87 lm32)            targ_archs=bfd_lm32_arch ;;
88 m6811*|m68hc11*) targ_archs="bfd_m68hc11_arch bfd_m68hc12_arch" ;;
89 m6812*|m68hc12*) targ_archs="bfd_m68hc12_arch bfd_m68hc11_arch" ;;
90 m68*)            targ_archs=bfd_m68k_arch ;;
91 m88*)            targ_archs=bfd_m88k_arch ;;
92 microblaze*)     targ_archs=bfd_microblaze_arch ;;
93 mips*)           targ_archs=bfd_mips_arch ;;
94 or32*)           targ_archs=bfd_or32_arch ;;
95 pdp11*)          targ_archs=bfd_pdp11_arch ;;
96 pj*)             targ_archs="bfd_pj_arch bfd_i386_arch";;
97 powerpc*)        targ_archs="bfd_rs6000_arch bfd_powerpc_arch" ;;
98 rs6000)          targ_archs="bfd_rs6000_arch bfd_powerpc_arch" ;;
99 s390*)           targ_archs=bfd_s390_arch ;;
100 sh*)             targ_archs=bfd_sh_arch ;;
101 sparc*)          targ_archs=bfd_sparc_arch ;;
102 spu*)            targ_archs=bfd_spu_arch ;;
103 tilegx*)         targ_archs=bfd_tilegx_arch ;;
104 tilepro*)        targ_archs=bfd_tilepro_arch ;;
105 v850*)           targ_archs=bfd_v850_arch ;;
106 x86_64*)         targ_archs=bfd_i386_arch ;;
107 xtensa*)         targ_archs=bfd_xtensa_arch ;;
108 z80|r800)        targ_archs=bfd_z80_arch ;;
109 z8k*)            targ_archs=bfd_z8k_arch ;;
110 *)               targ_archs=bfd_${targ_cpu}_arch ;;
111 esac
112
113
114 # WHEN ADDING ENTRIES TO THIS MATRIX:
115 #  Make sure that the left side always has two dashes.  Otherwise you
116 #  can get spurious matches.  Even for unambiguous cases, do this as a
117 #  convention, else the table becomes a real mess to understand and maintain.
118 #
119 #  Keep obsolete entries above the START comment, to keep them out of
120 #  targmatch.h.
121
122 case "${targ}" in
123   mips*-dec-bsd*)
124     echo "This target is obsolete and has been removed."
125     exit 1
126     ;;
127
128   mips*-*-mach3*)
129     echo "This target is obsolete and has been removed."
130     exit 1
131     ;;
132
133   mips*-*-pe*)
134     echo "This target is obsolete and has been removed."
135     exit 1
136     ;;
137
138   plugin)
139     targ_defvec=plugin_vec
140     targ_selvecs="plugin_vec"
141     ;;
142
143 # START OF targmatch.h
144 #ifdef BFD64
145   alpha*-*-freebsd* | alpha*-*-kfreebsd*-gnu)
146     targ_defvec=bfd_elf64_alpha_freebsd_vec
147     targ_selvecs="bfd_elf64_alpha_vec ecoffalpha_little_vec"
148     want64=true
149     # FreeBSD <= 4.0 supports only the old nonstandard way of ABI labelling.
150     case "${targ}" in
151       alpha*-*-freebsd3* | alpha*-*-freebsd4 | alpha*-*-freebsd4.0*)
152         targ_cflags=-DOLD_FREEBSD_ABI_LABEL ;;
153     esac
154     ;;
155   alpha*-*-netbsd* | alpha*-*-openbsd*)
156     targ_defvec=bfd_elf64_alpha_vec
157     targ_selvecs=ecoffalpha_little_vec
158     want64=true
159     ;;
160   alpha*-*-netware*)
161     targ_defvec=ecoffalpha_little_vec
162     targ_selvecs=nlm32_alpha_vec
163     want64=true
164     ;;
165   alpha*-*-linuxecoff*)
166     targ_defvec=ecoffalpha_little_vec
167     targ_selvecs=bfd_elf64_alpha_vec
168     want64=true
169     ;;
170   alpha*-*-linux-* | alpha*-*-elf*)
171     targ_defvec=bfd_elf64_alpha_vec
172     targ_selvecs=ecoffalpha_little_vec
173     want64=true
174     ;;
175   alpha*-*-*vms*)
176     targ_defvec=vms_alpha_vec
177     targ_selvecs=vms_lib_txt_vec
178     want64=true
179     ;;
180   alpha*-*-*)
181     targ_defvec=ecoffalpha_little_vec
182     want64=true
183     ;;
184   ia64*-*-freebsd* | ia64*-*-netbsd* | ia64*-*-linux-* | ia64*-*-elf* | ia64*-*-kfreebsd*-gnu)
185     targ_defvec=bfd_elf64_ia64_little_vec
186     targ_selvecs="bfd_elf64_ia64_big_vec bfd_pei_ia64_vec"
187     want64=true
188     ;;
189   ia64*-*-hpux*)
190     targ_defvec=bfd_elf32_ia64_hpux_big_vec
191     targ_selvecs="bfd_elf64_ia64_hpux_big_vec"
192     want64=true
193     ;;
194   ia64*-*-*vms*)
195     targ_defvec=bfd_elf64_ia64_vms_vec
196     targ_selvecs=vms_lib_txt_vec
197     want64=true
198     ;;
199   sparc64-*-freebsd* | sparc64-*-kfreebsd*-gnu)
200     targ_defvec=bfd_elf64_sparc_freebsd_vec
201     targ_selvecs="bfd_elf64_sparc_vec bfd_elf32_sparc_vec sunos_big_vec"
202     ;;
203   sparc64-*-netbsd* | sparc64-*-openbsd*)
204     targ_defvec=bfd_elf64_sparc_vec
205     targ_selvecs="bfd_elf32_sparc_vec sunos_big_vec"
206     want64=true
207     ;;
208 #endif /* BFD64 */
209
210   am34-*-linux* | am33_2.0-*-linux*)
211     targ_defvec=bfd_elf32_am33lin_vec
212     ;;
213
214   arc-*-elf*)
215     targ_defvec=bfd_elf32_littlearc_vec
216     targ_selvecs=bfd_elf32_bigarc_vec
217     ;;
218
219   arm-*-nacl*)
220     targ_defvec=bfd_elf32_littlearm_nacl_vec
221     targ_selvecs="bfd_elf32_bigarm_nacl_vec bfd_elf32_i386_nacl_vec"
222     targ64_selvecs="bfd_elf32_x86_64_nacl_vec bfd_elf64_x86_64_nacl_vec"
223     targ_archs="$targ_archs bfd_i386_arch"
224     ;;
225   armeb-*-nacl*)
226     targ_defvec=bfd_elf32_bigarm_nacl_vec
227     targ_selvecs="bfd_elf32_littlearm_nacl_vec bfd_elf32_i386_nacl_vec"
228     targ64_selvecs="bfd_elf32_x86_64_nacl_vec bfd_elf64_x86_64_nacl_vec"
229     targ_archs="$targ_archs bfd_i386_arch"
230     ;;
231   armeb-*-netbsdelf*)
232     targ_defvec=bfd_elf32_bigarm_vec
233     targ_selvecs="bfd_elf32_littlearm_vec armnetbsd_vec"
234     ;;
235   arm-*-netbsdelf*)
236     targ_defvec=bfd_elf32_littlearm_vec
237     targ_selvecs="bfd_elf32_bigarm_vec armnetbsd_vec"
238     ;;
239   arm-*-netbsd* | arm-*-openbsd*)
240     targ_defvec=armnetbsd_vec
241     targ_selvecs="bfd_elf32_littlearm_vec bfd_elf32_bigarm_vec"
242     targ_underscore=yes
243     targ_cflags=-D__QNXTARGET__
244     ;;
245   arm-*-nto* | nto*arm*)
246     targ_defvec=bfd_elf32_littlearm_vec
247     targ_selvecs=bfd_elf32_bigarm_vec
248     ;;
249   arm-*-riscix*)
250     targ_defvec=riscix_vec
251     ;;
252   arm-epoc-pe*)
253     targ_defvec=arm_epoc_pe_little_vec
254     targ_selvecs="arm_epoc_pe_little_vec arm_epoc_pe_big_vec arm_epoc_pei_little_vec arm_epoc_pei_big_vec"
255     targ_underscore=no
256     targ_cflags=-DARM_COFF_BUGFIX
257     ;;
258   arm-wince-pe | arm-*-wince | arm*-*-mingw32ce* | arm*-*-cegcc*)
259     targ_defvec=arm_wince_pe_little_vec
260     targ_selvecs="arm_wince_pe_little_vec arm_wince_pe_big_vec arm_wince_pei_little_vec arm_wince_pei_big_vec"
261     targ_underscore=no
262     targ_cflags="-DARM_WINCE -DARM_COFF_BUGFIX"
263     ;;
264   arm-*-pe*)
265     targ_defvec=armpe_little_vec
266     targ_selvecs="armpe_little_vec armpe_big_vec armpei_little_vec armpei_big_vec"
267     targ_underscore=yes
268     ;;
269   arm-*-aout | armel-*-aout)
270     targ_defvec=aout_arm_little_vec
271     targ_selvecs=aout_arm_big_vec
272     ;;
273   armeb-*-aout)
274     targ_defvec=aout_arm_big_vec
275     targ_selvecs=aout_arm_little_vec
276     ;;
277   arm-*-coff)
278     targ_defvec=armcoff_little_vec
279     targ_selvecs=armcoff_big_vec
280     targ_underscore=yes
281     ;;
282   arm-*-rtems*)
283     targ_defvec=bfd_elf32_littlearm_vec
284     targ_selvecs=bfd_elf32_bigarm_vec
285     ;;
286   armeb-*-elf | arm*b-*-linux-*)
287     targ_defvec=bfd_elf32_bigarm_vec
288     targ_selvecs=bfd_elf32_littlearm_vec
289     ;;
290   arm-*-kaos*)
291     targ_defvec=bfd_elf32_littlearm_vec
292     targ_selvecs=bfd_elf32_bigarm_vec
293     ;;
294   arm-*-elf | arm-*-freebsd* | arm*-*-linux-* | arm*-*-conix* | \
295   arm*-*-uclinux* | arm-*-kfreebsd*-gnu | \
296   arm*-*-eabi* )
297     targ_defvec=bfd_elf32_littlearm_vec
298     targ_selvecs=bfd_elf32_bigarm_vec
299     ;;
300   arm*-*-vxworks | arm*-*-windiss)
301     targ_defvec=bfd_elf32_littlearm_vxworks_vec
302     targ_selvecs=bfd_elf32_bigarm_vxworks_vec
303     ;;
304   arm*-*-symbianelf*)
305     targ_defvec=bfd_elf32_littlearm_symbian_vec
306     targ_selvecs=bfd_elf32_bigarm_symbian_vec
307     ;;
308   arm9e-*-elf)
309     targ_defvec=bfd_elf32_littlearm_vec
310     targ_selvecs=bfd_elf32_bigarm_vec
311     ;;
312
313   avr-*-*)
314     targ_defvec=bfd_elf32_avr_vec
315     ;;
316
317   bfin-*-*)
318     targ_defvec=bfd_elf32_bfin_vec
319     targ_selvecs=bfd_elf32_bfinfdpic_vec
320     targ_underscore=yes
321     ;;
322
323   c30-*-*aout* | tic30-*-*aout*)
324     targ_defvec=tic30_aout_vec
325     ;;
326   c30-*-*coff* | tic30-*-*coff*)
327     targ_defvec=tic30_coff_vec
328     ;;
329
330   c4x-*-*coff* | tic4x-*-*coff* | tic4x-*-rtems*)
331     targ_defvec=tic4x_coff1_vec
332     targ_selvecs="tic4x_coff1_beh_vec tic4x_coff2_vec tic4x_coff2_beh_vec tic4x_coff0_vec tic4x_coff0_beh_vec"
333     targ_underscore=yes
334     ;;
335
336   c54x*-*-*coff* | tic54x-*-*coff*)
337     targ_defvec=tic54x_coff1_vec
338     targ_selvecs="tic54x_coff1_beh_vec tic54x_coff2_vec tic54x_coff2_beh_vec tic54x_coff0_vec tic54x_coff0_beh_vec"
339     targ_underscore=yes
340     ;;
341
342   cr16-*-elf*)
343     targ_defvec=bfd_elf32_cr16_vec
344     targ_underscore=yes
345     ;;
346
347   cr16c-*-elf*)
348     targ_defvec=bfd_elf32_cr16c_vec
349     targ_underscore=yes
350     ;;
351
352   cris-*-* | crisv32-*-*)
353     targ_defvec=cris_aout_vec
354     targ_selvecs="bfd_elf32_us_cris_vec bfd_elf32_cris_vec ieee_vec"
355     targ_underscore=yes # Note: not true for bfd_elf32_cris_vec.
356     ;;
357
358   crx-*-elf*)
359     targ_defvec=bfd_elf32_crx_vec
360     targ_underscore=yes
361     ;;
362
363   d10v-*-*)
364     targ_defvec=bfd_elf32_d10v_vec
365     ;;
366
367   dlx-*-elf*)
368     targ_defvec=bfd_elf32_dlx_big_vec
369     targ_selvecs="bfd_elf32_dlx_big_vec"
370     ;;
371
372   d30v-*-*)
373     targ_defvec=bfd_elf32_d30v_vec
374     ;;
375
376   epiphany-*-elf)
377     targ_defvec=bfd_elf32_epiphany_vec
378     ;;
379
380   fido-*-elf* )
381     targ_defvec=bfd_elf32_m68k_vec
382     targ_selvecs="m68kcoff_vec ieee_vec"
383     ;;
384
385   fr30-*-elf)
386     targ_defvec=bfd_elf32_fr30_vec
387     ;;
388
389   frv-*-elf)
390     targ_defvec=bfd_elf32_frv_vec
391     targ_selvecs=bfd_elf32_frvfdpic_vec
392     ;;
393
394   frv-*-*linux*)
395     targ_defvec=bfd_elf32_frvfdpic_vec
396     targ_selvecs=bfd_elf32_frv_vec
397     ;;
398
399   moxie-*-elf | moxie-*-rtems | moxie-*-uclinux)
400     targ_defvec=bfd_elf32_moxie_vec
401     ;;
402
403   h8300*-*-rtemscoff*)
404     targ_defvec=h8300coff_vec
405     targ_underscore=yes
406     ;;
407
408   h8300*-*-elf | h8300*-*-rtems*)
409     targ_defvec=bfd_elf32_h8300_vec
410     targ_underscore=yes
411     ;;
412
413   h8300*-*-*)
414     targ_defvec=h8300coff_vec
415     targ_underscore=yes
416     ;;
417
418   h8500-*-*)
419     targ_defvec=h8500coff_vec
420     targ_underscore=yes
421     ;;
422
423 #ifdef BFD64
424   hppa*64*-*-linux-*)
425     targ_defvec=bfd_elf64_hppa_linux_vec
426     targ_selvecs=bfd_elf64_hppa_vec
427     want64=true
428     ;;
429   hppa*64*-*-hpux11*)
430     targ_defvec=bfd_elf64_hppa_vec
431     targ_selvecs=bfd_elf64_hppa_linux_vec
432     targ_cflags=-DHPUX_LARGE_AR_IDS
433     want64=true
434     ;;
435 #endif
436
437   hppa*-*-linux-*)
438     targ_defvec=bfd_elf32_hppa_linux_vec
439     targ_selvecs=bfd_elf32_hppa_vec
440     ;;
441   hppa*-*-netbsd*)
442     targ_defvec=bfd_elf32_hppa_nbsd_vec
443     targ_selvecs="bfd_elf32_hppa_vec bfd_elf32_hppa_linux_vec"
444     ;;
445   hppa*-*-*elf* | hppa*-*-lites* | hppa*-*-sysv4* | hppa*-*-openbsd*)
446     targ_defvec=bfd_elf32_hppa_vec
447     targ_selvecs=bfd_elf32_hppa_linux_vec
448     ;;
449
450   hppa*-*-bsd*)
451     targ_defvec=som_vec
452     targ_selvecs=bfd_elf32_hppa_vec
453     ;;
454   hppa*-*-hpux* | hppa*-*-hiux* | hppa*-*-mpeix*)
455     targ_defvec=som_vec
456     ;;
457   hppa*-*-osf*)
458     targ_defvec=som_vec
459     targ_selvecs=bfd_elf32_hppa_vec
460     ;;
461
462   i370-*-*)
463     targ_defvec=bfd_elf32_i370_vec
464     targ_selvecs="bfd_elf32_i370_vec"
465     ;;
466   i[3-7]86-*-sco3.2v5*coff)
467     targ_defvec=i386coff_vec
468     targ_selvecs=bfd_elf32_i386_vec
469     ;;
470   i[3-7]86-*-sysv4* | i[3-7]86-*-unixware* | \
471   i[3-7]86-*-elf | i[3-7]86-*-sco3.2v5* | \
472   i[3-7]86-*-dgux* | i[3-7]86-*-sysv5*)
473     targ_defvec=bfd_elf32_i386_vec
474     targ_selvecs=i386coff_vec
475     ;;
476   i[3-7]86-*-solaris2*)
477     targ_defvec=bfd_elf32_i386_sol2_vec
478     targ_selvecs="i386coff_vec"
479     targ64_selvecs="bfd_elf64_x86_64_sol2_vec bfd_elf64_l1om_vec bfd_elf64_k1om_vec"
480     want64=true
481     ;;
482 #ifdef BFD64
483   x86_64-*-solaris2*)
484     targ_defvec=bfd_elf32_i386_sol2_vec
485     targ_selvecs="bfd_elf64_x86_64_sol2_vec bfd_elf64_l1om_vec bfd_elf64_k1om_vec i386coff_vec"
486     want64=true
487     ;;
488 #endif
489   i[3-7]86-*-kaos*)
490     targ_defvec=bfd_elf32_i386_vec
491     targ_selvecs=bfd_elf32_i386_vec
492     ;;
493   i[3-7]86-*-nto*)
494     targ_defvec=bfd_elf32_i386_vec
495     targ_selvecs=i386coff_vec
496     ;;
497   i[3-7]86-*-aros*)
498     targ_defvec=bfd_elf32_i386_vec
499     ;;
500   i[3-7]86-*-chorus*)
501     targ_defvec=bfd_elf32_i386_vec
502     ;;
503   i[3-7]86-*-dicos*)
504     targ_defvec=bfd_elf32_i386_vec
505     targ64_selvecs="bfd_elf64_x86_64_vec bfd_elf64_l1om_vec bfd_elf64_k1om_vec"
506     ;;
507   *-*-msdosdjgpp* | *-*-go32* )
508     targ_defvec=go32coff_vec
509     targ_selvecs="go32stubbedcoff_vec i386aout_vec"
510     ;;
511   i[3-7]86-*-sysv* | i[3-7]86-*-isc* | i[3-7]86-*-sco* | i[3-7]86-*-coff | \
512   i[3-7]86-*-aix*)
513     targ_defvec=i386coff_vec
514     ;;
515   i[3-7]86-*-rtems*)
516     targ_defvec=bfd_elf32_i386_vec
517     targ_selvecs="i386coff_vec i386aout_vec"
518     ;;
519   i[3-7]86-*-darwin* | i[3-7]86-*-macos10* | i[3-7]86-*-rhapsody*)
520     targ_defvec=mach_o_i386_vec
521     targ_selvecs="mach_o_le_vec mach_o_be_vec mach_o_fat_vec pef_vec pef_xlib_vec sym_vec"
522     targ64_selvecs=mach_o_x86_64_vec
523     targ_archs="$targ_archs bfd_powerpc_arch bfd_rs6000_arch"
524     ;;
525   i[3-7]86-sequent-bsd*)
526     targ_defvec=i386dynix_vec
527     targ_underscore=yes
528     ;;
529   i[3-7]86-*-bsd*)
530     targ_defvec=i386bsd_vec
531     targ_underscore=yes
532     ;;
533   i[3-7]86-*-dragonfly*)
534     targ_defvec=bfd_elf32_i386_vec
535     targ64_selvecs="bfd_elf64_x86_64_vec bfd_elf64_l1om_vec bfd_elf64_k1om_vec"
536     ;;
537   i[3-7]86-*-freebsdaout* | i[3-7]86-*-freebsd[12].* | \
538   i[3-7]86-*-freebsd[12])
539     targ_defvec=i386freebsd_vec
540     targ_selvecs=i386bsd_vec
541     targ_underscore=yes
542     ;;
543   i[3-7]86-*-freebsd* | i[3-7]86-*-kfreebsd*-gnu)
544     targ_defvec=bfd_elf32_i386_freebsd_vec
545     targ_selvecs="bfd_elf32_i386_vec i386pei_vec i386coff_vec"
546     targ64_selvecs="bfd_elf64_x86_64_freebsd_vec bfd_elf64_x86_64_vec x86_64pei_vec bfd_elf64_l1om_vec bfd_elf64_l1om_freebsd_vec bfd_elf64_k1om_vec bfd_elf64_k1om_freebsd_vec"
547     # FreeBSD <= 4.0 supports only the old nonstandard way of ABI labelling.
548     case "${targ}" in
549       i[3-7]86-*-freebsd3* | i[3-7]86-*-freebsd4 | i[3-7]86-*-freebsd4.0*)
550         targ_cflags=-DOLD_FREEBSD_ABI_LABEL ;;
551     esac
552     ;;
553   i[3-7]86-*-netbsdelf* | i[3-7]86-*-netbsd*-gnu* | i[3-7]86-*-knetbsd*-gnu)
554     targ_defvec=bfd_elf32_i386_vec
555     targ_selvecs=i386netbsd_vec
556     targ64_selvecs="bfd_elf64_x86_64_vec bfd_elf64_l1om_vec bfd_elf64_k1om_vec"
557     ;;
558   i[3-7]86-*-netbsdpe*)
559     targ_defvec=i386pe_vec
560     targ_selvecs="i386pe_vec i386pei_vec bfd_elf32_i386_vec"
561     ;;
562   i[3-7]86-*-netbsdaout* | i[3-7]86-*-netbsd* | \
563   i[3-7]86-*-openbsd[0-2].* | i[3-7]86-*-openbsd3.[0-3])
564     targ_defvec=i386netbsd_vec
565     targ_selvecs="bfd_elf32_i386_vec i386bsd_vec"
566     targ_underscore=yes
567     ;;
568   i[3-7]86-*-openbsd*)
569     targ_defvec=bfd_elf32_i386_vec
570     targ_selvecs=i386netbsd_vec
571     ;;
572   i[3-7]86-*-netware*)
573     targ_defvec=bfd_elf32_i386_vec
574     targ_selvecs="nlm32_i386_vec i386coff_vec i386aout_vec"
575     ;;
576   i[3-7]86-*-linux*aout*)
577     targ_defvec=i386linux_vec
578     targ_selvecs=bfd_elf32_i386_vec
579     targ_underscore=yes
580     ;;
581   i[3-7]86-*-linux-*)
582     targ_defvec=bfd_elf32_i386_vec
583     targ_selvecs="i386linux_vec i386pei_vec"
584     targ64_selvecs="bfd_elf64_x86_64_vec bfd_elf32_x86_64_vec bfd_elf64_l1om_vec bfd_elf64_k1om_vec"
585     ;;
586   i[3-7]86-*-nacl*)
587     targ_defvec=bfd_elf32_i386_nacl_vec
588     targ_selvecs="bfd_elf32_bigarm_nacl_vec bfd_elf32_littlearm_nacl_vec"
589     targ64_selvecs="bfd_elf64_x86_64_nacl_vec bfd_elf32_x86_64_nacl_vec"
590     targ_archs="$targ_archs bfd_arm_arch"
591     ;;
592 #ifdef BFD64
593   x86_64-*-darwin*)
594     targ_defvec=mach_o_x86_64_vec
595     targ_selvecs="mach_o_i386_vec mach_o_le_vec mach_o_be_vec mach_o_fat_vec pef_vec pef_xlib_vec sym_vec"
596     targ_archs="$targ_archs bfd_powerpc_arch bfd_rs6000_arch"
597     want64=true
598     ;;
599   x86_64-*-dicos*)
600     targ_defvec=bfd_elf64_x86_64_vec
601     targ_selvecs="bfd_elf32_i386_vec bfd_elf64_l1om_vec bfd_elf64_k1om_vec"
602     want64=true
603     ;;
604   x86_64-*-elf*)
605     targ_defvec=bfd_elf64_x86_64_vec
606     targ_selvecs="bfd_elf32_i386_vec bfd_elf64_l1om_vec bfd_elf64_k1om_vec i386coff_vec"
607     want64=true
608     ;;
609   x86_64-*-dragonfly*)
610     targ_defvec=bfd_elf64_x86_64_vec
611     targ_selvecs="bfd_elf32_i386_vec bfd_elf64_l1om_vec bfd_elf64_k1om_vec"
612     want64=true
613     ;;
614   x86_64-*-freebsd* | x86_64-*-kfreebsd*-gnu)
615     targ_defvec=bfd_elf64_x86_64_freebsd_vec
616     targ_selvecs="bfd_elf32_i386_freebsd_vec i386coff_vec i386pei_vec x86_64pei_vec bfd_elf32_i386_vec bfd_elf64_x86_64_vec bfd_elf64_l1om_vec bfd_elf64_l1om_freebsd_vec bfd_elf64_k1om_vec bfd_elf64_k1om_freebsd_vec"
617     want64=true
618     ;;
619   x86_64-*-netbsd* | x86_64-*-openbsd*)
620     targ_defvec=bfd_elf64_x86_64_vec
621     targ_selvecs="bfd_elf32_i386_vec i386netbsd_vec i386coff_vec i386pei_vec x86_64pei_vec bfd_elf64_l1om_vec bfd_elf64_k1om_vec"
622     want64=true
623     ;;
624   x86_64-*-linux-*)
625     targ_defvec=bfd_elf64_x86_64_vec
626     targ_selvecs="bfd_elf32_i386_vec bfd_elf32_x86_64_vec i386linux_vec i386pei_vec x86_64pei_vec bfd_elf64_l1om_vec bfd_elf64_k1om_vec"
627     want64=true
628     ;;
629   x86_64-*-nacl*)
630     targ_defvec=bfd_elf32_x86_64_nacl_vec
631     targ_selvecs="bfd_elf32_i386_nacl_vec bfd_elf64_x86_64_nacl_vec bfd_elf32_bigarm_nacl_vec bfd_elf32_littlearm_nacl_vec"
632     targ_archs="$targ_archs bfd_arm_arch"
633     want64=true
634     ;;
635   x86_64-*-mingw* | x86_64-*-pe | x86_64-*-pep)
636     targ_defvec=x86_64pe_vec
637     targ_selvecs="x86_64pe_vec x86_64pei_vec bfd_elf64_x86_64_vec bfd_elf64_l1om_vec bfd_elf64_k1om_vec i386pe_vec i386pei_vec bfd_elf32_i386_vec"
638     want64=true
639     targ_underscore=no
640     ;;
641 #endif
642   i[3-7]86-*-lynxos*)
643     targ_defvec=bfd_elf32_i386_vec
644     targ_selvecs="i386lynx_coff_vec i386lynx_aout_vec"
645     ;;
646   i[3-7]86-*-gnu*)
647     targ_defvec=bfd_elf32_i386_vec
648     ;;
649   i[3-7]86-*-mach* | i[3-7]86-*-osf1mk*)
650     targ_defvec=i386mach3_vec
651     targ_cflags=-DSTAT_FOR_EXEC
652     targ_underscore=yes
653     ;;
654   i[3-7]86-*-os9k)
655     targ_defvec=i386os9k_vec
656     ;;
657   i[3-7]86-*-msdos*)
658     targ_defvec=i386aout_vec
659     targ_selvecs=i386msdos_vec
660     ;;
661   i[3-7]86-*-moss*)
662     targ_defvec=bfd_elf32_i386_vec
663     targ_selvecs="i386msdos_vec i386aout_vec"
664     ;;
665   i[3-7]86-*-beospe*)
666     targ_defvec=i386pe_vec
667     targ_selvecs="i386pe_vec i386pei_vec"
668     ;;
669   i[3-7]86-*-beoself* | i[3-7]86-*-beos*)
670     targ_defvec=bfd_elf32_i386_vec
671     targ_selvecs="i386pe_vec i386pei_vec"
672     ;;
673   i[3-7]86-*-interix*)
674     targ_defvec=i386pei_vec
675     targ_selvecs="i386pe_vec"
676     # FIXME: This should eventually be checked at runtime.
677     targ_cflags=-DSTRICT_PE_FORMAT
678     ;;
679   i[3-7]86-*-rdos*)
680     targ_defvec=bfd_elf32_i386_vec
681     targ_selvecs=i386coff_vec
682     ;;
683   i[3-7]86-*-mingw32* | i[3-7]86-*-cygwin* | i[3-7]86-*-winnt | i[3-7]86-*-pe)
684     targ_defvec=i386pe_vec
685     targ_selvecs="i386pe_vec i386pei_vec bfd_elf32_i386_vec"
686     targ_underscore=yes
687     ;;
688   i[3-7]86-none-*)
689     targ_defvec=i386coff_vec
690     ;;
691   i[3-7]86-*-aout* | i[3-7]86*-*-vsta*)
692     targ_defvec=i386aout_vec
693     ;;
694   i[3-7]86-*-vxworks*)
695     targ_defvec=bfd_elf32_i386_vxworks_vec
696     targ_underscore=yes
697     ;;
698   i[3-7]86-*-chaos)
699     targ_defvec=bfd_elf32_i386_vec
700     targ_selfvecs=i386chaos_vec
701     ;;
702
703   i860-*-mach3* | i860-*-osf1* | i860-*-coff*)
704     targ_defvec=i860coff_vec
705     ;;
706   i860-stardent-sysv4* | i860-stardent-elf*)
707     targ_defvec=bfd_elf32_i860_little_vec
708     targ_selvecs="bfd_elf32_i860_vec bfd_elf32_i860_little_vec"
709     ;;
710   i860-*-sysv4* | i860-*-elf*)
711     targ_defvec=bfd_elf32_i860_vec
712     ;;
713
714   i960-*-vxworks4* | i960-*-vxworks5.0)
715     targ_defvec=b_out_vec_little_host
716     targ_selvecs="b_out_vec_big_host icoff_little_vec icoff_big_vec ieee_vec"
717     targ_underscore=yes
718     ;;
719   i960-*-vxworks5.* | i960-*-coff* | i960-*-sysv*)
720     targ_defvec=icoff_little_vec
721     targ_selvecs="icoff_big_vec b_out_vec_little_host b_out_vec_big_host ieee_vec"
722     targ_underscore=yes
723     ;;
724   i960-*-vxworks* | i960-*-aout* | i960-*-bout* | i960-*-nindy*)
725     targ_defvec=b_out_vec_little_host
726     targ_selvecs="b_out_vec_big_host icoff_little_vec icoff_big_vec ieee_vec"
727     targ_underscore=yes
728     ;;
729   i960-*-elf*)
730     targ_defvec=bfd_elf32_i960_vec
731     targ_selvecs="icoff_little_vec icoff_big_vec"
732     ;;
733
734   ip2k-*-elf)
735     targ_defvec=bfd_elf32_ip2k_vec
736     ;;
737
738   iq2000-*-elf)
739     targ_defvec=bfd_elf32_iq2000_vec
740     ;;
741
742   lm32-*-elf | lm32-*-rtems*)
743     targ_defvec=bfd_elf32_lm32_vec
744     targ_selvecs=bfd_elf32_lm32fdpic_vec
745     ;;
746
747   lm32-*-*linux*)
748     targ_defvec=bfd_elf32_lm32fdpic_vec
749     targ_selvecs=bfd_elf32_lm32_vec
750     ;;
751
752   m32c-*-elf | m32c-*-rtems*)
753     targ_defvec=bfd_elf32_m32c_vec
754     ;;
755
756   m32r*le-*-linux*)
757     targ_defvec=bfd_elf32_m32rlelin_vec
758     targ_selvecs="bfd_elf32_m32rlin_vec  bfd_elf32_m32rlelin_vec"
759     ;;
760   m32r*-*-linux*)
761     targ_defvec=bfd_elf32_m32rlin_vec
762     targ_selvecs="bfd_elf32_m32rlin_vec  bfd_elf32_m32rlelin_vec"
763     ;;
764   m32r*le-*-*)
765     targ_defvec=bfd_elf32_m32rle_vec
766     targ_selvecs="bfd_elf32_m32r_vec bfd_elf32_m32rle_vec"
767     ;;
768   m32r-*-*)
769     targ_defvec=bfd_elf32_m32r_vec
770     ;;
771
772   m68hc11-*-* | m6811-*-*)
773     targ_defvec=bfd_elf32_m68hc11_vec
774     targ_selvecs="bfd_elf32_m68hc11_vec bfd_elf32_m68hc12_vec"
775     ;;
776   m68hc12-*-* | m6812-*-*)
777     targ_defvec=bfd_elf32_m68hc12_vec
778     targ_selvecs="bfd_elf32_m68hc11_vec bfd_elf32_m68hc12_vec"
779     ;;
780
781   m68*-motorola-sysv*)
782     targ_defvec=m68ksysvcoff_vec
783     ;;
784   m68*-hp-bsd*)
785     targ_defvec=hp300bsd_vec
786     targ_underscore=yes
787     ;;
788   m68*-*-aout*)
789     targ_defvec=aout0_big_vec
790     # We include cisco_core_big_vec here, rather than making a separate cisco
791     # configuration, so that cisco-core.c gets routinely tested at
792     # least for compilation.
793     targ_selvecs="cisco_core_big_vec ieee_vec"
794     targ_underscore=yes
795     ;;
796   m68*-*-elf* | m68*-*-sysv4* | m68*-*-uclinux*)
797     targ_defvec=bfd_elf32_m68k_vec
798     targ_selvecs="m68kcoff_vec ieee_vec"
799     ;;
800   m68*-*-rtems*)
801     targ_defvec=bfd_elf32_m68k_vec
802     targ_selvecs="m68kcoff_vec versados_vec ieee_vec aout0_big_vec"
803     ;;
804   m68*-*-coff* | m68*-*-sysv*)
805     targ_defvec=m68kcoff_vec
806     targ_selvecs="m68kcoff_vec versados_vec ieee_vec"
807     ;;
808   m68*-*-hpux*)
809     targ_defvec=hp300hpux_vec
810     targ_underscore=yes
811     ;;
812   m68*-*-linux*aout*)
813     targ_defvec=m68klinux_vec
814     targ_selvecs=bfd_elf32_m68k_vec
815     targ_underscore=yes
816     ;;
817   m68*-*-linux-*)
818     targ_defvec=bfd_elf32_m68k_vec
819     targ_selvecs=m68klinux_vec
820     ;;
821   m68*-*-gnu*)
822     targ_defvec=bfd_elf32_m68k_vec
823     # targ_selvecs=m68kmach3_vec
824     # targ_cflags=-DSTAT_FOR_EXEC
825     ;;
826   m68*-hp*-netbsd*)
827     targ_defvec=m68k4knetbsd_vec
828     targ_selvecs="m68knetbsd_vec hp300bsd_vec sunos_big_vec"
829     targ_underscore=yes
830     ;;
831   m68*-*-netbsdelf*)
832     targ_defvec=bfd_elf32_m68k_vec
833     targ_selvecs="m68knetbsd_vec m68k4knetbsd_vec hp300bsd_vec sunos_big_vec"
834     ;;
835   m68*-*-netbsdaout* | m68*-*-netbsd*)
836     targ_defvec=m68knetbsd_vec
837     targ_selvecs="m68k4knetbsd_vec bfd_elf32_m68k_vec hp300bsd_vec sunos_big_vec"
838     targ_underscore=yes
839     ;;
840   m68*-*-openbsd*)
841     targ_defvec=m68knetbsd_vec
842     targ_selvecs="m68k4knetbsd_vec hp300bsd_vec sunos_big_vec"
843     targ_underscore=yes
844     ;;
845   m68*-*-sunos* | m68*-*-os68k* | m68*-*-vxworks* | m68*-netx-* | \
846   m68*-*-bsd* | m68*-*-vsta*)
847     targ_defvec=sunos_big_vec
848     targ_underscore=yes
849     ;;
850   m68*-ericsson-*)
851     targ_defvec=sunos_big_vec
852     targ_selvecs="m68kcoff_vec versados_vec tekhex_vec"
853     targ_underscore=yes
854     ;;
855   m68*-cbm-*)
856     targ_defvec=bfd_elf32_m68k_vec
857     targ_selvecs=m68kcoff_vec
858     ;;
859   m68*-*-psos*)
860     targ_defvec=bfd_elf32_m68k_vec
861     targ_selvecs=ieee_vec
862     targ_underscore=yes
863     ;;
864
865   m88*-harris-cxux* | m88*-*-dgux* | m88*-*-sysv4*)
866     targ_defvec=bfd_elf32_m88k_vec
867     targ_selvecs=m88kbcs_vec
868     ;;
869   m88*-*-mach3*)
870     targ_defvec=m88kmach3_vec
871     targ_cflags=-DSTAT_FOR_EXEC
872     ;;
873   m88*-*-openbsd*)
874    targ_defvec=m88kopenbsd_vec
875    targ_underscore=yes
876    ;;
877   m88*-*-*)
878     targ_defvec=m88kbcs_vec
879     targ_underscore=yes
880     ;;
881
882   mcore-*-elf)
883     targ_defvec=bfd_elf32_mcore_big_vec
884     targ_selvecs="bfd_elf32_mcore_big_vec bfd_elf32_mcore_little_vec"
885     ;;
886   mcore-*-pe)
887     targ_defvec=mcore_pe_big_vec
888     targ_selvecs="mcore_pe_big_vec mcore_pe_little_vec mcore_pei_big_vec mcore_pei_little_vec"
889     ;;
890
891   mep-*-elf)
892     targ_defvec=bfd_elf32_mep_vec
893     targ_selvecs=bfd_elf32_mep_little_vec
894     ;;
895
896   microblaze*-*)
897     targ_defvec=bfd_elf32_microblaze_vec
898     ;;
899
900   mips*-big-*)
901     targ_defvec=ecoff_big_vec
902     targ_selvecs=ecoff_little_vec
903     ;;
904   mips*el-*-netbsd*)
905     targ_defvec=bfd_elf32_tradlittlemips_vec
906     targ_selvecs="bfd_elf32_tradbigmips_vec bfd_elf64_tradbigmips_vec bfd_elf64_tradlittlemips_vec ecoff_little_vec ecoff_big_vec"
907     ;;
908   mips*-*-netbsd*)
909     targ_defvec=bfd_elf32_tradbigmips_vec
910     targ_selvecs="bfd_elf32_tradlittlemips_vec bfd_elf64_tradbigmips_vec bfd_elf64_tradlittlemips_vec ecoff_big_vec ecoff_little_vec"
911     ;;
912   mips*-dec-* | mips*el-*-ecoff*)
913     targ_defvec=ecoff_little_vec
914     targ_selvecs=ecoff_big_vec
915     ;;
916   mips*-*-ecoff*)
917     targ_defvec=ecoff_big_vec
918     targ_selvecs=ecoff_little_vec
919     ;;
920 #ifdef BFD64
921   mips*-*-irix6*)
922     targ_defvec=bfd_elf32_nbigmips_vec
923     targ_selvecs="bfd_elf32_nlittlemips_vec bfd_elf32_bigmips_vec bfd_elf32_littlemips_vec bfd_elf64_bigmips_vec bfd_elf64_littlemips_vec"
924     want64=true
925     ;;
926 #endif
927   mips*-*-irix5*)
928     targ_defvec=bfd_elf32_bigmips_vec
929     targ_selvecs="bfd_elf32_littlemips_vec ecoff_big_vec ecoff_little_vec"
930     ;;
931   mips*-sgi-* | mips*-*-bsd*)
932     targ_defvec=ecoff_big_vec
933     targ_selvecs=ecoff_little_vec
934     ;;
935   mips*-*-lnews*)
936     targ_defvec=ecoff_biglittle_vec
937     targ_selvecs="ecoff_little_vec ecoff_big_vec"
938     ;;
939   mips*-*-sysv4*)
940     targ_defvec=bfd_elf32_tradbigmips_vec
941     targ_selvecs="bfd_elf32_tradlittlemips_vec ecoff_big_vec ecoff_little_vec"
942     ;;
943   mips*-*-sysv* | mips*-*-riscos*)
944     targ_defvec=ecoff_big_vec
945     targ_selvecs=ecoff_little_vec
946     ;;
947 #ifdef BFD64
948   mips*el-*-vxworks*)
949     targ_defvec=bfd_elf32_littlemips_vxworks_vec
950     targ_selvecs="bfd_elf32_littlemips_vec bfd_elf32_bigmips_vxworks_vec bfd_elf32_bigmips_vec bfd_elf64_bigmips_vec bfd_elf64_littlemips_vec"
951     want64=true
952     ;;
953   mips*-*-vxworks*)
954     targ_defvec=bfd_elf32_bigmips_vxworks_vec
955     targ_selvecs="bfd_elf32_bigmips_vec bfd_elf32_littlemips_vxworks_vec bfd_elf32_bigmips_vec bfd_elf64_bigmips_vec bfd_elf64_littlemips_vec"
956     want64=true
957     ;;
958 #endif
959   mips*el-sde-elf*)
960     targ_defvec=bfd_elf32_tradlittlemips_vec
961     targ_selvecs="bfd_elf32_tradbigmips_vec bfd_elf32_ntradbigmips_vec bfd_elf32_ntradlittlemips_vec bfd_elf64_tradbigmips_vec bfd_elf64_tradlittlemips_vec"
962     want64=true
963     ;;
964   mips*-sde-elf*)
965     targ_defvec=bfd_elf32_tradbigmips_vec
966     targ_selvecs="bfd_elf32_tradlittlemips_vec bfd_elf32_ntradbigmips_vec bfd_elf32_ntradlittlemips_vec bfd_elf64_tradbigmips_vec bfd_elf64_tradlittlemips_vec"
967     want64=true
968     ;;
969   mips*el-*-elf* | mips*el-*-vxworks* | mips*-*-chorus*)
970     targ_defvec=bfd_elf32_littlemips_vec
971     targ_selvecs="bfd_elf32_bigmips_vec bfd_elf64_bigmips_vec bfd_elf64_littlemips_vec"
972     ;;
973   mips*-*-elf* | mips*-*-rtems* | mips*-*-vxworks | mips*-*-windiss)
974     targ_defvec=bfd_elf32_bigmips_vec
975     targ_selvecs="bfd_elf32_littlemips_vec bfd_elf64_bigmips_vec bfd_elf64_littlemips_vec"
976     ;;
977   mips*-*-none)
978     targ_defvec=bfd_elf32_bigmips_vec
979     targ_selvecs="bfd_elf32_littlemips_vec bfd_elf64_bigmips_vec bfd_elf64_littlemips_vec"
980     ;;
981 #ifdef BFD64
982   mips64*-*-openbsd*)
983     targ_defvec=bfd_elf64_tradbigmips_vec
984     targ_selvecs="bfd_elf32_ntradlittlemips_vec bfd_elf32_ntradbigmips_vec bfd_elf32_tradlittlemips_vec bfd_elf32_tradbigmips_vec bfd_elf64_tradlittlemips_vec"
985     want64=true
986     ;;
987 #endif
988   mips*el-*-openbsd*)
989     targ_defvec=bfd_elf32_littlemips_vec
990     targ_selvecs="bfd_elf32_bigmips_vec bfd_elf64_bigmips_vec bfd_elf64_littlemips_vec ecoff_little_vec ecoff_big_vec"
991     ;;
992   mips*-*-openbsd*)
993     targ_defvec=bfd_elf32_bigmips_vec
994     targ_selvecs="bfd_elf32_littlemips_vec bfd_elf64_bigmips_vec bfd_elf64_littlemips_vec ecoff_big_vec ecoff_little_vec"
995     ;;
996 #ifdef BFD64
997   mips64*el-*-linux*)
998     targ_defvec=bfd_elf32_ntradlittlemips_vec
999     targ_selvecs="bfd_elf32_ntradbigmips_vec bfd_elf32_tradlittlemips_vec bfd_elf32_tradbigmips_vec bfd_elf64_tradlittlemips_vec bfd_elf64_tradbigmips_vec"
1000     want64=true
1001     ;;
1002   mips64*-*-linux*)
1003     targ_defvec=bfd_elf32_ntradbigmips_vec
1004     targ_selvecs="bfd_elf32_ntradlittlemips_vec bfd_elf32_tradbigmips_vec bfd_elf32_tradlittlemips_vec bfd_elf64_tradbigmips_vec bfd_elf64_tradlittlemips_vec"
1005     want64=true
1006     ;;
1007 #endif
1008   mips*el-*-linux*)
1009     targ_defvec=bfd_elf32_tradlittlemips_vec
1010     targ_selvecs="bfd_elf32_tradbigmips_vec ecoff_little_vec ecoff_big_vec bfd_elf32_ntradlittlemips_vec bfd_elf64_tradlittlemips_vec bfd_elf32_ntradbigmips_vec bfd_elf64_tradbigmips_vec"
1011     want64=true
1012     ;;
1013   mips*-*-linux*)
1014     targ_defvec=bfd_elf32_tradbigmips_vec
1015     targ_selvecs="bfd_elf32_tradlittlemips_vec ecoff_big_vec ecoff_little_vec bfd_elf32_ntradbigmips_vec bfd_elf64_tradbigmips_vec bfd_elf32_ntradlittlemips_vec bfd_elf64_tradlittlemips_vec"
1016     want64=true
1017     ;;
1018 #ifdef BFD64
1019   mips64*el-*-freebsd* | mips64*el-*-kfreebsd*-gnu)
1020     # FreeBSD vectors
1021     targ_defvec=bfd_elf32_ntradlittlemips_freebsd_vec
1022     targ_selvecs="bfd_elf32_ntradbigmips_freebsd_vec bfd_elf32_tradlittlemips_freebsd_vec bfd_elf32_tradbigmips_freebsd_vec bfd_elf64_tradlittlemips_freebsd_vec bfd_elf64_tradbigmips_freebsd_vec"
1023     # Generic vectors
1024     targ_selvecs="${targ_selvecs} bfd_elf32_ntradlittlemips_vec bfd_elf32_ntradbigmips_vec bfd_elf32_tradlittlemips_vec bfd_elf32_tradbigmips_vec bfd_elf64_tradlittlemips_vec bfd_elf64_tradbigmips_vec"
1025     want64=true
1026     ;;
1027   mips64*-*-freebsd* | mips64*-*-kfreebsd*-gnu)
1028     # FreeBSD vectors
1029     targ_defvec=bfd_elf32_ntradbigmips_freebsd_vec
1030     targ_selvecs="bfd_elf32_ntradlittlemips_freebsd_vec bfd_elf32_tradbigmips_freebsd_vec bfd_elf32_tradlittlemips_freebsd_vec bfd_elf64_tradbigmips_freebsd_vec bfd_elf64_tradlittlemips_freebsd_vec"
1031     # Generic vectors
1032     targ_selvecs="${targ_selvecs} bfd_elf32_ntradbigmips_vec bfd_elf32_ntradlittlemips_vec bfd_elf32_tradbigmips_vec bfd_elf32_tradlittlemips_vec bfd_elf64_tradbigmips_vec bfd_elf64_tradlittlemips_vec"
1033     want64=true
1034     ;;
1035 #endif
1036   mips*el-*-freebsd* | mips*el-*-kfreebsd*-gnu)
1037     # FreeBSD vectors
1038     targ_defvec=bfd_elf32_tradlittlemips_freebsd_vec
1039     targ_selvecs="bfd_elf32_tradbigmips_freebsd_vec bfd_elf32_ntradlittlemips_freebsd_vec bfd_elf64_tradlittlemips_freebsd_vec bfd_elf32_ntradbigmips_freebsd_vec bfd_elf64_tradbigmips_freebsd_vec"
1040     # Generic vectors
1041     targ_selvecs="${targ_selvecs} bfd_elf32_tradlittlemips_vec bfd_elf32_tradbigmips_vec bfd_elf32_ntradlittlemips_vec bfd_elf64_tradlittlemips_vec bfd_elf32_ntradbigmips_vec bfd_elf64_tradbigmips_vec"
1042     want64=true
1043     ;;
1044   mips*-*-freebsd* | mips*-*-kfreebsd*-gnu)
1045     # FreeBSD vectors
1046     targ_defvec=bfd_elf32_tradbigmips_freebsd_vec
1047     targ_selvecs="bfd_elf32_tradlittlemips_freebsd_vec bfd_elf32_ntradbigmips_freebsd_vec bfd_elf64_tradbigmips_freebsd_vec bfd_elf32_ntradlittlemips_freebsd_vec bfd_elf64_tradlittlemips_freebsd_vec"
1048     # Generic vectors
1049     targ_selvecs="${targ_selvecs} bfd_elf32_tradbigmips_vec bfd_elf32_tradlittlemips_vec bfd_elf32_ntradbigmips_vec bfd_elf64_tradbigmips_vec bfd_elf32_ntradlittlemips_vec bfd_elf64_tradlittlemips_vec"
1050     want64=true
1051     ;;
1052 #ifdef BFD64
1053   mmix-*-*)
1054     targ_defvec=bfd_elf64_mmix_vec
1055     targ_selvecs=bfd_mmo_vec
1056     want64=true
1057     ;;
1058 #endif
1059   mn10200-*-*)
1060     targ_defvec=bfd_elf32_mn10200_vec
1061     ;;
1062
1063   mn10300-*-*)
1064     targ_defvec=bfd_elf32_mn10300_vec
1065     targ_underscore=yes
1066     ;;
1067
1068   mt-*-elf)
1069     targ_defvec=bfd_elf32_mt_vec
1070     ;;
1071
1072   msp430-*-*)
1073     targ_defvec=bfd_elf32_msp430_vec
1074     ;;
1075
1076   ns32k-pc532-mach* | ns32k-pc532-ux*)
1077     targ_defvec=pc532machaout_vec
1078     targ_underscore=yes
1079     ;;
1080   ns32k-*-netbsd* | ns32k-*-lites* | ns32k-*-openbsd*)
1081     targ_defvec=pc532netbsd_vec
1082     targ_underscore=yes
1083     ;;
1084
1085   openrisc-*-elf)
1086     targ_defvec=bfd_elf32_openrisc_vec
1087     ;;
1088
1089   or32-*-coff)
1090     targ_defvec=or32coff_big_vec
1091     targ_underscore=yes
1092     ;;
1093
1094   or32-*-elf)
1095     targ_defvec=bfd_elf32_or32_big_vec
1096     ;;
1097
1098   pdp11-*-*)
1099     targ_defvec=pdp11_aout_vec
1100     targ_underscore=yes
1101     ;;
1102
1103   pj-*-*)
1104     targ_defvec=bfd_elf32_pj_vec
1105     targ_selvecs="bfd_elf32_pj_vec bfd_elf32_pjl_vec"
1106     ;;
1107
1108   pjl-*-*)
1109     targ_defvec=bfd_elf32_pjl_vec
1110     targ_selvecs="bfd_elf32_pjl_vec bfd_elf32_pj_vec bfd_elf32_i386_vec"
1111     ;;
1112
1113   powerpc-*-aix5.[01] | rs6000-*-aix5.[01])
1114     targ_defvec=rs6000coff_vec
1115     targ_selvecs="aix5coff64_vec"
1116     want64=true
1117     ;;
1118 #ifdef BFD64
1119   powerpc64-*-aix5.[01] | rs6000-*-aix5.[01])
1120     targ_defvec=aix5coff64_vec
1121     targ_selvecs="rs6000coff_vec"
1122     want64=true
1123     ;;
1124 #endif
1125   powerpc-*-aix[5-9]* | rs6000-*-aix[5-9]*)
1126     targ_cflags=-DAIX_WEAK_SUPPORT
1127     targ_defvec=rs6000coff_vec
1128     targ_selvecs="aix5coff64_vec"
1129     want64=true
1130     ;;
1131 #ifdef BFD64
1132   powerpc64-*-aix[5-9]* | rs6000-*-aix[5-9]*)
1133     targ_cflags=-DAIX_WEAK_SUPPORT
1134     targ_defvec=aix5coff64_vec
1135     targ_selvecs="rs6000coff_vec"
1136     want64=true
1137     ;;
1138 #endif
1139
1140   powerpc-*-aix* | powerpc-*-beos* | rs6000-*-*)
1141     targ_defvec=rs6000coff_vec
1142     targ64_selvecs=rs6000coff64_vec
1143     case "${targ}" in
1144         *-*-aix4.[3456789]* | *-*-aix[56789]*)
1145         want64=true;;
1146         *)
1147         targ_cflags=-DSMALL_ARCHIVE;;
1148     esac
1149     ;;
1150 #ifdef BFD64
1151   powerpc64-*-aix*)
1152     targ_defvec=rs6000coff64_vec
1153     targ_selvecs=rs6000coff_vec
1154     want64=true
1155     ;;
1156   powerpc64-*-freebsd*)
1157     targ_defvec=bfd_elf64_powerpc_freebsd_vec
1158     targ_selvecs="bfd_elf64_powerpc_vec bfd_elf32_powerpc_vec bfd_elf32_powerpc_freebsd_vec bfd_elf32_powerpcle_vec rs6000coff_vec rs6000coff64_vec aix5coff64_vec"
1159     want64=true
1160     ;;
1161   powerpc64-*-elf* | powerpc-*-elf64* | powerpc64-*-linux* | \
1162   powerpc64-*-*bsd*)
1163     targ_defvec=bfd_elf64_powerpc_vec
1164     targ_selvecs="bfd_elf64_powerpcle_vec bfd_elf32_powerpc_vec bfd_elf32_powerpcle_vec rs6000coff_vec rs6000coff64_vec aix5coff64_vec"
1165     want64=true
1166     ;;
1167   powerpc64le-*-elf* | powerpcle-*-elf64*)
1168     targ_defvec=bfd_elf64_powerpcle_vec
1169     targ_selvecs="bfd_elf64_powerpc_vec bfd_elf32_powerpcle_vec bfd_elf32_powerpc_vec rs6000coff_vec rs6000coff64_vec aix5coff64_vec"
1170     want64=true
1171     ;;
1172 #endif
1173   powerpc-*-*freebsd*)
1174     targ_defvec=bfd_elf32_powerpc_freebsd_vec
1175     targ_selvecs="rs6000coff_vec bfd_elf32_powerpc_vec bfd_elf32_powerpcle_vec ppcboot_vec"
1176     targ64_selvecs="bfd_elf64_powerpc_vec bfd_elf64_powerpcle_vec bfd_elf64_powerpc_freebsd_vec"
1177     ;;
1178   powerpc-*-*bsd* | powerpc-*-elf* | powerpc-*-sysv4* | powerpc-*-eabi* | \
1179   powerpc-*-solaris2* | powerpc-*-linux-* | powerpc-*-rtems* | \
1180   powerpc-*-chorus*)
1181     targ_defvec=bfd_elf32_powerpc_vec
1182     targ_selvecs="rs6000coff_vec bfd_elf32_powerpcle_vec ppcboot_vec"
1183     targ64_selvecs="bfd_elf64_powerpc_vec bfd_elf64_powerpcle_vec"
1184     ;;
1185   powerpc-*-kaos*)
1186     targ_defvec=bfd_elf32_powerpc_vec
1187     targ_selvecs="bfd_elf32_powerpcle_vec ppcboot_vec"
1188     targ64_selvecs="bfd_elf64_powerpc_vec bfd_elf64_powerpcle_vec"
1189     ;;
1190   powerpc-*-darwin* | powerpc-*-macos10* | powerpc-*-rhapsody*)
1191     targ_defvec=mach_o_be_vec
1192     targ_selvecs="mach_o_be_vec mach_o_le_vec mach_o_fat_vec pef_vec pef_xlib_vec sym_vec"
1193     targ_archs="$targ_archs bfd_i386_arch"
1194     ;;
1195   powerpc-*-macos*)
1196     targ_defvec=pmac_xcoff_vec
1197     ;;
1198   powerpc-*-lynxos*)
1199     targ_defvec=bfd_elf32_powerpc_vec
1200     targ_selvecs="rs6000coff_vec"
1201     targ_cflags=-DSMALL_ARCHIVE
1202     ;;
1203   powerpc-*-netware*)
1204     targ_defvec=bfd_elf32_powerpc_vec
1205     targ_selvecs="nlm32_powerpc_vec rs6000coff_vec"
1206     ;;
1207   powerpc-*-nto*)
1208     targ_defvec=bfd_elf32_powerpc_vec
1209     targ_selvecs="rs6000coff_vec bfd_elf32_powerpcle_vec ppcboot_vec"
1210     ;;
1211   powerpc-*-vxworks* | powerpc-*-windiss*)
1212     targ_defvec=bfd_elf32_powerpc_vxworks_vec
1213     targ_selvecs="rs6000coff_vec bfd_elf32_powerpc_vec bfd_elf32_powerpcle_vec ppcboot_vec"
1214     targ64_selvecs="bfd_elf64_powerpc_vec bfd_elf64_powerpcle_vec"
1215     ;;
1216   powerpcle-*-nto*)
1217     targ_defvec=bfd_elf32_powerpcle_vec
1218     targ_selvecs="rs6000coff_vec bfd_elf32_powerpc_vec ppcboot_vec"
1219     ;;
1220   powerpcle-*-elf* | powerpcle-*-sysv4* | powerpcle-*-eabi* | \
1221   powerpcle-*-solaris2* | powerpcle-*-linux-* | powerpcle-*-vxworks*)
1222     targ_defvec=bfd_elf32_powerpcle_vec
1223     targ_selvecs="rs6000coff_vec bfd_elf32_powerpc_vec ppcboot_vec"
1224     targ64_selvecs="bfd_elf64_powerpc_vec bfd_elf64_powerpcle_vec"
1225     ;;
1226   powerpcle-*-pe | powerpcle-*-winnt* | powerpcle-*-cygwin*)
1227     targ_defvec=bfd_powerpcle_pe_vec
1228     targ_selvecs="bfd_powerpcle_pei_vec bfd_powerpc_pei_vec bfd_powerpcle_pe_vec bfd_powerpc_pe_vec"
1229     ;;
1230
1231   rl78-*-elf)
1232     targ_defvec=bfd_elf32_rl78_vec
1233     ;;
1234
1235   rx-*-elf)
1236     targ_defvec=bfd_elf32_rx_le_vec
1237     targ_selvecs="bfd_elf32_rx_be_vec bfd_elf32_rx_le_vec bfd_elf32_rx_be_ns_vec"
1238     ;;
1239
1240   s390-*-linux*)
1241     targ_defvec=bfd_elf32_s390_vec
1242     targ64_selvecs=bfd_elf64_s390_vec
1243     want64=true
1244     ;;
1245 #ifdef BFD64
1246   s390x-*-linux*)
1247     targ_defvec=bfd_elf64_s390_vec
1248     targ_selvecs=bfd_elf32_s390_vec
1249     want64=true
1250     ;;
1251   s390x-*-tpf*)
1252     targ_defvec=bfd_elf64_s390_vec
1253     want64=true
1254     ;;
1255
1256   score*-*-elf*)
1257     targ_defvec=bfd_elf32_bigscore_vec
1258     targ_selvecs=bfd_elf32_littlescore_vec
1259     ;;
1260
1261   sh64l*-*-elf*)
1262     targ_defvec=bfd_elf32_sh64l_vec
1263     targ_selvecs="bfd_elf32_sh64_vec bfd_elf64_sh64l_vec bfd_elf64_sh64_vec bfd_elf32_shl_vec bfd_elf32_sh_vec"
1264     targ_underscore=yes
1265     want64=true
1266     ;;
1267   sh64-*-elf*)
1268     targ_defvec=bfd_elf32_sh64_vec
1269     targ_selvecs="bfd_elf32_sh64l_vec bfd_elf64_sh64_vec bfd_elf64_sh64l_vec bfd_elf32_sh_vec bfd_elf32_shl_vec"
1270     targ_underscore=yes
1271     want64=true
1272     ;;
1273   sh64eb-*-linux*)
1274     targ_defvec=bfd_elf32_sh64blin_vec
1275     targ_selvecs="bfd_elf32_sh64lin_vec bfd_elf64_sh64blin_vec bfd_elf64_sh64lin_vec bfd_elf32_shblin_vec bfd_elf32_shlin_vec"
1276     want64=true
1277     ;;
1278   sh64-*-linux*)
1279     targ_defvec=bfd_elf32_sh64lin_vec
1280     targ_selvecs="bfd_elf32_sh64blin_vec bfd_elf64_sh64lin_vec bfd_elf64_sh64blin_vec bfd_elf32_shlin_vec bfd_elf32_shblin_vec"
1281     want64=true
1282     ;;
1283   sh-*-linux*)
1284     targ_defvec=bfd_elf32_shblin_vec
1285     targ_selvecs="bfd_elf32_shlin_vec bfd_elf32_sh64lin_vec bfd_elf32_sh64blin_vec bfd_elf64_sh64lin_vec bfd_elf64_sh64blin_vec"
1286     want64=true
1287     ;;
1288 #endif /* BFD64 */
1289
1290   sh*eb-*-linux*)
1291     targ_defvec=bfd_elf32_shblin_vec
1292     targ_selvecs=bfd_elf32_shlin_vec
1293     ;;
1294   sh*-*-linux*)
1295     targ_defvec=bfd_elf32_shlin_vec
1296     targ_selvecs=bfd_elf32_shblin_vec
1297     ;;
1298
1299   sh-*-uclinux* | sh[12]-*-uclinux*)
1300     targ_defvec=bfd_elf32_sh_vec
1301     targ_selvecs="bfd_elf32_shl_vec bfd_elf32_shblin_vec bfd_elf32_shlin_vec bfd_elf32_shfd_vec bfd_elf32_shbfd_vec"
1302 #ifdef BFD64
1303     targ_selvecs="${targ_selvecs} bfd_elf32_sh64lin_vec bfd_elf32_sh64blin_vec bfd_elf64_sh64lin_vec bfd_elf64_sh64blin_vec"
1304 #endif
1305     ;;
1306
1307 #ifdef BFD64
1308   sh5le-*-netbsd*)
1309     targ_defvec=bfd_elf32_sh64lnbsd_vec
1310     targ_selvecs="bfd_elf32_sh64nbsd_vec bfd_elf64_sh64lnbsd_vec bfd_elf64_sh64nbsd_vec bfd_elf32_shnbsd_vec bfd_elf32_shlnbsd_vec"
1311     want64=true
1312     ;;
1313   sh5-*-netbsd*)
1314     targ_defvec=bfd_elf32_sh64nbsd_vec
1315     targ_selvecs="bfd_elf32_sh64lnbsd_vec bfd_elf64_sh64lnbsd_vec bfd_elf64_sh64nbsd_vec bfd_elf32_shnbsd_vec bfd_elf32_shlnbsd_vec"
1316     want64=true
1317     ;;
1318
1319   sh64le-*-netbsd*)
1320     targ_defvec=bfd_elf64_sh64lnbsd_vec
1321     targ_selvecs="bfd_elf64_sh64nbsd_vec bfd_elf32_sh64lnbsd_vec bfd_elf32_sh64nbsd_vec bfd_elf32_shnbsd_vec bfd_elf32_shlnbsd_vec"
1322     want64=true
1323     ;;
1324   sh64-*-netbsd*)
1325     targ_defvec=bfd_elf64_sh64nbsd_vec
1326     targ_selvecs="bfd_elf64_sh64lnbsd_vec bfd_elf32_sh64lnbsd_vec bfd_elf32_sh64nbsd_vec bfd_elf32_shnbsd_vec bfd_elf32_shlnbsd_vec"
1327     want64=true
1328     ;;
1329
1330   sh*l*-*-netbsdelf*)
1331     targ_defvec=bfd_elf32_shlnbsd_vec
1332     targ_selvecs="bfd_elf32_shnbsd_vec shcoff_vec shlcoff_vec bfd_elf32_sh64lnbsd_vec bfd_elf32_sh64nbsd_vec bfd_elf64_sh64lnbsd_vec bfd_elf64_sh64nbsd_vec"
1333     want64=true
1334     ;;
1335   sh-*-netbsdelf*)
1336     targ_defvec=bfd_elf32_shnbsd_vec
1337     targ_selvecs="bfd_elf32_shlnbsd_vec shcoff_vec shlcoff_vec bfd_elf32_sh64lnbsd_vec bfd_elf32_sh64nbsd_vec bfd_elf64_sh64lnbsd_vec bfd_elf64_sh64nbsd_vec"
1338     want64=true
1339     ;;
1340 #endif
1341
1342   sh*-*-netbsdelf*)
1343     targ_defvec=bfd_elf32_shnbsd_vec
1344     targ_selvecs="bfd_elf32_shlnbsd_vec shcoff_vec shlcoff_vec"
1345     ;;
1346   sh*-*-symbianelf*)
1347     targ_defvec=bfd_elf32_shl_symbian_vec
1348     targ_selvecs="shlcoff_vec shlcoff_small_vec"
1349     targ_underscore=yes
1350     ;;
1351
1352 #ifdef BFD64
1353   shl*-*-elf* | sh[1234]l*-*-elf* | sh3el*-*-elf* | shl*-*-kaos*)
1354     targ_defvec=bfd_elf32_shl_vec
1355     targ_selvecs="bfd_elf32_sh_vec shlcoff_vec shcoff_vec shlcoff_small_vec shcoff_small_vec bfd_elf32_sh64_vec bfd_elf32_sh64l_vec bfd_elf64_sh64_vec bfd_elf64_sh64l_vec"
1356     targ_underscore=yes
1357     want64=true
1358     ;;
1359 #endif
1360
1361   sh-*-rtemscoff*)
1362     targ_defvec=shcoff_vec
1363     targ_selvecs="shcoff_vec shlcoff_vec shcoff_small_vec shlcoff_small_vec"
1364     targ_underscore=yes
1365     ;;
1366
1367 #ifdef BFD64
1368   sh-*-elf* | sh[1234]*-elf* | sh-*-rtems* | sh-*-kaos*)
1369     targ_defvec=bfd_elf32_sh_vec
1370     targ_selvecs="bfd_elf32_shl_vec shcoff_vec shlcoff_vec shcoff_small_vec shlcoff_small_vec bfd_elf32_sh64_vec bfd_elf32_sh64l_vec bfd_elf64_sh64_vec bfd_elf64_sh64l_vec"
1371     targ_underscore=yes
1372     want64=true
1373     ;;
1374 #endif
1375
1376   sh-*-nto*)
1377     targ_defvec=bfd_elf32_sh_vec
1378     targ_selvecs="bfd_elf32_shl_vec shcoff_vec shlcoff_vec shcoff_small_vec shlcoff_small_vec"
1379     targ_underscore=yes
1380     ;;
1381   sh*-*-openbsd*)
1382     targ_defvec=bfd_elf32_shlnbsd_vec
1383     targ_selvecs="bfd_elf32_shnbsd_vec shcoff_vec shlcoff_vec"
1384     ;;
1385   sh-*-pe)
1386     targ_defvec=shlpe_vec
1387     targ_selvecs="shlpe_vec shlpei_vec"
1388     targ_underscore=yes
1389     ;;
1390   sh-*-vxworks)
1391     targ_defvec=bfd_elf32_shvxworks_vec
1392     targ_selvecs="bfd_elf32_shlvxworks_vec"
1393     # FIXME None of the following are actually used on this target, but
1394     # they're necessary for coff-sh.c (which is unconditionally used) to be
1395     # compiled correctly.
1396     targ_selvecs="$targ_selvecs shcoff_vec shlcoff_vec shcoff_small_vec shlcoff_small_vec"
1397     targ_underscore=yes
1398     ;;
1399   sh-*-*)
1400     targ_defvec=shcoff_vec
1401     targ_selvecs="shcoff_vec shlcoff_vec shcoff_small_vec shlcoff_small_vec"
1402     targ_underscore=yes
1403     ;;
1404
1405   sparclet-*-aout*)
1406     targ_defvec=sunos_big_vec
1407     targ_selvecs=sparcle_aout_vec
1408     targ_underscore=yes
1409     ;;
1410   sparc86x-*-aout*)
1411     targ_defvec=sunos_big_vec
1412     targ_underscore=yes
1413     ;;
1414   sparclite-*-elf* | sparc86x-*-elf*)
1415     targ_defvec=bfd_elf32_sparc_vec
1416     ;;
1417   sparc*-*-chorus*)
1418     targ_defvec=bfd_elf32_sparc_vec
1419     ;;
1420   sparc-*-linux*aout*)
1421     targ_defvec=sparclinux_vec
1422     targ_selvecs="bfd_elf32_sparc_vec sunos_big_vec"
1423     targ_underscore=yes
1424     ;;
1425   sparc-*-linux-* | sparcv*-*-linux-*)
1426     targ_defvec=bfd_elf32_sparc_vec
1427     targ_selvecs="sparclinux_vec bfd_elf64_sparc_vec sunos_big_vec"
1428     ;;
1429   sparc-*-netbsdelf*)
1430     targ_defvec=bfd_elf32_sparc_vec
1431     targ_selvecs=sparcnetbsd_vec
1432     ;;
1433   sparc-*-netbsdaout* | sparc-*-netbsd*)
1434     targ_defvec=sparcnetbsd_vec
1435     targ_selvecs=bfd_elf32_sparc_vec
1436     targ_underscore=yes
1437     ;;
1438   sparc-*-openbsd[0-2].* | sparc-*-openbsd3.[0-1])
1439     targ_defvec=sparcnetbsd_vec
1440     targ_underscore=yes
1441     ;;
1442   sparc-*-openbsd*)
1443     targ_defvec=bfd_elf32_sparc_vec
1444     targ_selvecs=sparcnetbsd_vec
1445     ;;
1446   sparc-*-elf*)
1447     targ_defvec=bfd_elf32_sparc_vec
1448     targ_selvecs=sunos_big_vec
1449     ;;
1450   sparc-*-solaris2.[0-6] | sparc-*-solaris2.[0-6].*)
1451     targ_defvec=bfd_elf32_sparc_sol2_vec
1452     targ_selvecs=sunos_big_vec
1453     ;;
1454 #ifdef BFD64
1455   sparc-*-solaris2* | sparcv9-*-solaris2* | sparc64-*-solaris2*)
1456     targ_defvec=bfd_elf32_sparc_sol2_vec
1457     targ_selvecs="bfd_elf64_sparc_sol2_vec sunos_big_vec"
1458     want64=true
1459     ;;
1460 #endif
1461   sparc-*-sysv4*)
1462     targ_defvec=bfd_elf32_sparc_vec
1463     ;;
1464   sparc-*-vxworks*)
1465     targ_defvec=bfd_elf32_sparc_vxworks_vec
1466     targ_selvecs="bfd_elf32_sparc_vec sunos_big_vec"
1467     ;;
1468   sparc-*-netware*)
1469     targ_defvec=bfd_elf32_sparc_vec
1470     targ_selvecs="nlm32_sparc_vec sunos_big_vec"
1471     ;;
1472 #ifdef BFD64
1473   sparc64-*-aout*)
1474     targ_defvec=sunos_big_vec
1475     targ_underscore=yes
1476     want64=true
1477     ;;
1478   sparc64*-*-linux-*)
1479     targ_defvec=bfd_elf64_sparc_vec
1480     targ_selvecs="bfd_elf32_sparc_vec sparclinux_vec sunos_big_vec"
1481     want64=true
1482     ;;
1483   sparc64-*-elf* | sparc64-*-rtems* )
1484     targ_defvec=bfd_elf64_sparc_vec
1485     targ_selvecs=bfd_elf32_sparc_vec
1486     want64=true
1487     ;;
1488 #endif /* BFD64 */
1489   sparc*-*-coff*)
1490     targ_defvec=sparccoff_vec
1491     ;;
1492   sparc-*-rtems*)
1493     targ_defvec=bfd_elf32_sparc_vec
1494     targ_selvecs="sunos_big_vec sparccoff_vec"
1495     ;;
1496   sparc*-*-*)
1497     targ_defvec=sunos_big_vec
1498     targ_underscore=yes
1499     ;;
1500
1501   spu-*-elf)
1502     targ_defvec=bfd_elf32_spu_vec
1503     want64=true
1504     ;;
1505
1506 #if HAVE_host_aout_vec
1507   tahoe-*-*)
1508     targ_defvec=host_aout_vec
1509     targ_underscore=yes
1510     ;;
1511 #endif
1512
1513   tic6x-*-elf)
1514     targ_defvec=bfd_elf32_tic6x_elf_le_vec
1515     targ_selvecs="bfd_elf32_tic6x_elf_be_vec bfd_elf32_tic6x_le_vec bfd_elf32_tic6x_be_vec"
1516     ;;
1517
1518   tic6x-*-uclinux)
1519     targ_defvec=bfd_elf32_tic6x_linux_le_vec
1520     targ_selvecs="bfd_elf32_tic6x_linux_be_vec bfd_elf32_tic6x_le_vec bfd_elf32_tic6x_be_vec"
1521     ;;
1522
1523   tic80*-*-*)
1524     targ_defvec=tic80coff_vec
1525     targ_underscore=yes
1526     ;;
1527
1528 #ifdef BFD64
1529   tilegx-*-*)
1530     targ_defvec=bfd_elf64_tilegx_le_vec
1531     targ_selvecs="bfd_elf64_tilegx_be_vec bfd_elf32_tilegx_be_vec bfd_elf32_tilegx_le_vec"
1532     ;;
1533   tilegxbe-*-*)
1534     targ_defvec=bfd_elf64_tilegx_be_vec
1535     targ_selvecs="bfd_elf64_tilegx_le_vec bfd_elf32_tilegx_be_vec bfd_elf32_tilegx_le_vec"
1536     ;;
1537 #endif
1538
1539   tilepro-*-*)
1540     targ_defvec=bfd_elf32_tilepro_vec
1541     ;;
1542
1543   v850*-*-*)
1544     targ_defvec=bfd_elf32_v850_vec
1545     ;;
1546
1547   vax-*-netbsdelf*)
1548     targ_defvec=bfd_elf32_vax_vec
1549     targ_selvecs="vaxnetbsd_vec vax1knetbsd_vec"
1550     ;;
1551
1552   vax-*-netbsdaout* | vax-*-netbsd*)
1553     targ_defvec=vaxnetbsd_vec
1554     targ_selvecs="bfd_elf32_vax_vec vax1knetbsd_vec"
1555     targ_underscore=yes
1556     ;;
1557
1558   vax-*-bsd* | vax-*-ultrix*)
1559     targ_defvec=vaxbsd_vec
1560     targ_underscore=yes
1561     ;;
1562
1563   vax-*-openbsd*)
1564     targ_defvec=vaxnetbsd_vec
1565     targ_underscore=yes
1566     ;;
1567
1568   vax-*-linux-*)
1569     targ_defvec=bfd_elf32_vax_vec
1570     ;;
1571
1572   we32k-*-*)
1573     targ_defvec=we32kcoff_vec
1574     ;;
1575
1576   w65-*-*)
1577     targ_defvec=w65_vec
1578     ;;
1579
1580   xstormy16-*-elf)
1581     targ_defvec=bfd_elf32_xstormy16_vec
1582     ;;
1583
1584   xtensa*-*-*)
1585     targ_defvec=bfd_elf32_xtensa_le_vec
1586     targ_selvecs=bfd_elf32_xtensa_be_vec
1587     ;;
1588  xc16x-*-elf)
1589     targ_defvec=bfd_elf32_xc16x_vec
1590     ;;
1591
1592   z80-*-*)
1593     targ_defvec=z80coff_vec
1594     targ_underscore=no
1595     ;;
1596
1597   z8k*-*-*)
1598     targ_defvec=z8kcoff_vec
1599     targ_underscore=yes
1600     ;;
1601
1602   *-*-ieee*)
1603     targ_defvec=ieee_vec
1604     ;;
1605
1606   *-adobe-*)
1607     targ_defvec=a_out_adobe_vec
1608     targ_underscore=yes
1609     ;;
1610
1611   *-sony-*)
1612     targ_defvec=newsos3_vec
1613     targ_underscore=yes
1614     ;;
1615
1616   *-tandem-*)
1617     targ_defvec=m68kcoff_vec
1618     targ_selvecs=ieee_vec
1619     ;;
1620 # END OF targmatch.h
1621   *)
1622     echo 1>&2 "*** BFD does not support target ${targ}."
1623     echo 1>&2 "*** Look in bfd/config.bfd for supported targets."
1624     exit 1
1625     ;;
1626 esac
1627
1628 case "${host64}${want64}" in
1629   *true*)
1630     targ_selvecs="${targ_selvecs} ${targ64_selvecs}"
1631     ;;
1632 esac
1633
1634 # If we support any ELF target, then automatically add support for the
1635 # generic ELF targets.  This permits an objdump with some ELF support
1636 # to be used on an arbitrary ELF file for anything other than
1637 # relocation information.
1638 case "${targ_defvec} ${targ_selvecs}" in
1639   *bfd_elf64* | *bfd_elf32_n*mips*)
1640     targ_selvecs="${targ_selvecs} bfd_elf64_little_generic_vec bfd_elf64_big_generic_vec bfd_elf32_little_generic_vec bfd_elf32_big_generic_vec"
1641     ;;
1642   *bfd_elf32*)
1643     targ_selvecs="${targ_selvecs} bfd_elf32_little_generic_vec bfd_elf32_big_generic_vec"
1644     ;;
1645 esac
1646
1647 # If we support Intel L1OM target, then add support for bfd_l1om_arch.
1648 case "${targ_defvec} ${targ_selvecs}" in
1649   *bfd_elf64_l1om_vec*)
1650     targ_archs="$targ_archs bfd_l1om_arch"
1651     ;;
1652 esac
1653
1654 # If we support Intel K1OM target, then add support for bfd_k1om_arch.
1655 case "${targ_defvec} ${targ_selvecs}" in
1656   *bfd_elf64_k1om_vec*)
1657     targ_archs="$targ_archs bfd_k1om_arch"
1658     ;;
1659 esac