Thu Jul 2 14:59:42 1998 Klaus Kaempf <kkaempf@rmi.de>
[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 #  targ_archs           Architectures for this target
9 #  targ_cflags          $(CFLAGS) for this target (FIXME: pretty bogus)
10 #  targ_underscore      Whether underscores are used: yes or no
11
12 # Part of this file is processed by targmatch.sed to generate the
13 # targmatch.h file.  The #ifdef and #endif lines that appear below are
14 # copied directly into targmatch.h.
15
16 # The binutils c++filt program wants to know whether underscores are
17 # stripped or not.  That is why we set targ_underscore.  c++filt uses
18 # this information to choose a default.  This information is
19 # duplicated in the symbol_leading_char field of the BFD target
20 # vector, but c++filt does not deal with object files and is not
21 # linked against libbfd.a.  It is not terribly important that c++filt
22 # get this right; it is just convenient.
23
24 targ_defvec=
25 targ_selvecs=
26 targ_cflags=
27 targ_underscore=no
28
29 targ_cpu=`echo $targ | sed 's/^\([^-]*\)-\([^-]*\)-\(.*\)$/\1/'`
30 case "${targ_cpu}" in
31 alpha*) targ_archs=bfd_alpha_arch ;;
32 arm*)   targ_archs=bfd_arm_arch ;;
33 c30*)   targ_archs=bfd_tic30_arch ;;
34 thumb*) targ_archs=bfd_arm_arch ;;
35 hppa*)  targ_archs=bfd_hppa_arch ;;
36 i[3456]86) targ_archs=bfd_i386_arch ;;
37 m68*)   targ_archs=bfd_m68k_arch ;;
38 m88*)   targ_archs=bfd_m88k_arch ;;
39 mips*)  targ_archs=bfd_mips_arch ;;
40 powerpc*) targ_archs="bfd_rs6000_arch bfd_powerpc_arch" ;;
41 rs6000) targ_archs="bfd_rs6000_arch bfd_powerpc_arch" ;;
42 sparc*) targ_archs=bfd_sparc_arch ;;
43 v850*)  targ_archs=bfd_v850_arch ;;
44 z8k*)   targ_archs=bfd_z8k_arch ;;
45 *)      targ_archs=bfd_${targ_cpu}_arch ;;
46 esac
47
48 # start-sanitize-sky
49 case "${targ}" in
50   mips64r5900-sky-elf*) targ_archs="${targ_archs} bfd_dvp_arch" ;;
51 esac
52 # end-sanitize-sky
53
54 # WHEN ADDING ENTRIES TO THIS MATRIX:
55 #  Make sure that the left side always has two dashes.  Otherwise you
56 #  can get spurious matches.  Even for unambiguous cases, do this as a
57 #  convention, else the table becomes a real mess to understand and maintain.
58
59 case "${targ}" in
60 # START OF targmatch.h
61 #ifdef BFD64
62   alpha*-*-netbsd*)
63     targ_defvec=bfd_elf64_alpha_vec
64     targ_selvecs=ecoffalpha_little_vec
65     ;;
66   alpha*-*-netware*)
67     targ_defvec=ecoffalpha_little_vec
68     targ_selvecs=nlm32_alpha_vec
69     ;;
70   alpha*-*-linuxecoff*)
71     targ_defvec=ecoffalpha_little_vec
72     targ_selvecs=bfd_elf64_alpha_vec
73     ;;
74   alpha*-*-linux-gnu* | alpha*-*-elf*)
75     targ_defvec=bfd_elf64_alpha_vec
76     targ_selvecs=ecoffalpha_little_vec
77     ;;
78   alpha*-*-*vms*)
79     targ_defvec=vms_alpha_vec
80     ;;
81   alpha*-*-*)
82     targ_defvec=ecoffalpha_little_vec
83     ;;
84 #endif /* BFD64 */
85
86   arc-*-elf*)
87     targ_defvec=bfd_elf32_littlearc_vec
88     targ_selvecs=bfd_elf32_bigarc_vec
89     ;;
90
91   arm-*-riscix*)
92     targ_defvec=riscix_vec
93     ;;
94   arm-*-pe*)
95     targ_defvec=armpe_little_vec
96     targ_selvecs="armpe_little_vec armpe_big_vec armpei_little_vec armpei_big_vec"
97     targ_underscore=yes
98     ;;
99   arm-*-aout | armel-*-aout)    
100     targ_defvec=aout_arm_little_vec
101     targ_selvecs=aout_arm_big_vec
102     ;;
103   armeb-*-aout)
104     targ_defvec=aout_arm_big_vec
105     targ_selvecs=aout_arm_little_vec
106     ;;
107   arm-*-coff)
108     targ_defvec=armcoff_little_vec
109     targ_selvecs=armcoff_big_vec
110     targ_underscore=yes
111     ;;
112   thumb-*-coff)
113     targ_defvec=armcoff_little_vec
114     targ_selvecs=armcoff_big_vec
115     targ_underscore=yes
116     ;;
117   thumb-*-pe*)
118     targ_defvec=armpe_little_vec
119     targ_selvecs="armpe_little_vec armpe_big_vec armpei_little_vec armpei_big_vec"
120     targ_underscore=yes
121     ;;
122   a29k-*-ebmon* | a29k-*-udi* | a29k-*-coff* | a29k-*-sym1* | \
123   a29k-*-vxworks* | a29k-*-sysv*)
124     targ_defvec=a29kcoff_big_vec
125     targ_selvecs=sunos_big_vec
126     targ_underscore=yes
127     ;;
128   a29k-*-aout* | a29k-*-bsd* | a29k-*-vsta*)
129     targ_defvec=sunos_big_vec
130     targ_underscore=yes
131     ;;
132
133   c30-*-*aout* | tic30-*-*aout*)
134     targ_defvec=tic30_aout_vec
135     ;;
136   c30-*-*coff* | tic30-*-*coff*)
137     targ_defvec=tic30_coff_vec
138     ;;
139
140   d10v-*-*)
141     targ_defvec=bfd_elf32_d10v_vec
142     ;;
143
144 # start-sanitize-d30v
145   d30v-*-*)
146     targ_defvec=bfd_elf32_d30v_vec
147     ;;
148 # end-sanitize-d30v
149
150 # start-sanitize-sky
151   dvp-*-*)
152     targ_defvec=bfd_elf32_littlemips_vec
153     targ_selvecs=bfd_elf64_littlemips_vec
154     ;;
155 # end-sanitize-sky
156
157   h8300*-*-*)
158     targ_defvec=h8300coff_vec
159     targ_underscore=yes
160     ;;
161
162   h8500-*-*)
163     targ_defvec=h8500coff_vec
164     targ_underscore=yes
165     ;;
166
167   hppa*-*-*elf* | hppa*-*-lites* | hppa*-*-sysv4* | hppa*-*-rtems*)
168     targ_defvec=bfd_elf32_hppa_vec
169     ;;
170 #if defined (HOST_HPPAHPUX) || defined (HOST_HPPABSD) || defined (HOST_HPPAOSF)
171   hppa*-*-bsd*)
172     targ_defvec=som_vec
173     targ_selvecs=bfd_elf32_hppa_vec
174     ;;
175   hppa*-*-hpux* | hppa*-*-hiux*)
176     targ_defvec=som_vec
177     ;;
178   hppa*-*-osf*)
179     targ_defvec=som_vec
180     targ_selvecs=bfd_elf32_hppa_vec
181     ;;
182 #endif /* defined (HOST_HPPAHPUX) || defined (HOST_HPPABSD) || defined (HOST_HPPAOSF) */
183
184   i[3456]86-*-sco3.2v5*coff)
185     targ_defvec=i386coff_vec
186     targ_selvecs=bfd_elf32_i386_vec
187     ;;
188   i[3456]86-*-sysv4* | i[3456]86-*-unixware | i[3456]86-*-solaris2* | \
189   i[3456]86-*-elf | i[3456]86-*-sco3.2v5* | i[3456]86-*-freebsdelf* | \
190   i[3456]86-*-dgux* | i[3456]86-*-sysv5*)
191     targ_defvec=bfd_elf32_i386_vec
192     targ_selvecs=i386coff_vec
193     ;;
194   i[3456]86-*-msdosdjgpp* | i[3456]*-*-go32* | i[3456]86-go32-rtems* )
195     targ_defvec=go32coff_vec
196     targ_selvecs="go32stubbedcoff_vec i386aout_vec"
197     ;;
198   i[3456]86-*-sysv* | i[3456]86-*-isc* | i[3456]86-*-sco* | i[3456]86-*-coff | \
199   i[3456]86-*-aix* | i[3456]86*-*-rtems*)
200     targ_defvec=i386coff_vec
201     ;;
202   i[3456]86-sequent-bsd*)
203     targ_defvec=i386dynix_vec
204     targ_underscore=yes
205     ;;
206   i[3456]86-*-bsd*)
207     targ_defvec=i386bsd_vec
208     targ_underscore=yes
209     ;;
210   i[3456]86-*-freebsd*)
211     targ_defvec=i386freebsd_vec
212     targ_selvecs=i386bsd_vec
213     targ_underscore=yes
214     ;;
215   i[3456]86-*-netbsd* | i[3456]86-*-openbsd*)
216     targ_defvec=i386netbsd_vec
217     targ_selvecs=i386bsd_vec
218     targ_underscore=yes
219     ;;
220   i[3456]86-*-netware*)
221     targ_defvec=bfd_elf32_i386_vec
222     targ_selvecs="nlm32_i386_vec i386coff_vec i386aout_vec"
223     ;;
224   i[3456]86-*-linux*aout*)
225     targ_defvec=i386linux_vec
226     targ_selvecs=bfd_elf32_i386_vec
227     targ_underscore=yes
228     ;;
229   i[3456]86-*-linux-gnu*)
230     targ_defvec=bfd_elf32_i386_vec
231     targ_selvecs=i386linux_vec
232     ;;
233   i[3456]86-*-lynxos*)
234     targ_defvec=i386lynx_coff_vec
235     targ_selvecs=i386lynx_aout_vec
236     ;;
237   i[3456]86-*-gnu*)
238     targ_defvec=bfd_elf32_i386_vec
239     ;;
240   i[3456]86-*-mach* | i[3456]86-*-osf1mk*)
241     targ_defvec=i386mach3_vec
242     targ_cflags=-DSTAT_FOR_EXEC
243     targ_underscore=yes
244     ;;
245   i[3456]86-*-os9k)
246     targ_defvec=i386os9k_vec
247     ;;
248   i[3456]86-*-msdos*)
249     targ_defvec=i386aout_vec
250     targ_selvecs=i386msdos_vec
251     ;;
252   i[3456]86-*-moss*)
253     targ_defvec=bfd_elf32_i386_vec
254     targ_selvecs="i386msdos_vec i386aout_vec"
255     ;;
256   i[3456]86-*-mingw32* | i[3456]86-*-cygwin32* | i[3456]86-*-winnt | i[3456]86-*-pe)
257     targ_defvec=i386pe_vec
258     targ_selvecs="i386pe_vec i386pei_vec"
259     ;;
260   i[3456]86-none-*)
261     targ_defvec=i386coff_vec
262     ;;
263   i[3456]86-*-aout* | i[3456]86*-*-vsta*)
264     targ_defvec=i386aout_vec
265     ;;
266
267   i860-*-mach3* | i860-*-osf1* | i860-*-coff*)
268     targ_defvec=i860coff_vec
269     ;;
270   i860-*-sysv4* | i860-*-elf*)
271     targ_defvec=bfd_elf32_i860_vec
272     ;;
273
274   i960-*-vxworks4* | i960-*-vxworks5.0)
275     targ_defvec=b_out_vec_little_host
276     targ_selvecs="b_out_vec_big_host icoff_little_vec icoff_big_vec ieee_vec"
277     targ_underscore=yes
278     ;;
279   i960-*-vxworks5.* | i960-*-coff* | i960-*-sysv* | i960-*-rtems*)
280     targ_defvec=icoff_little_vec
281     targ_selvecs="icoff_big_vec b_out_vec_little_host b_out_vec_big_host ieee_vec"
282     targ_underscore=yes
283     ;;
284   i960-*-vxworks* | i960-*-aout* | i960-*-bout* | i960-*-nindy*)
285     targ_defvec=b_out_vec_little_host
286     targ_selvecs="b_out_vec_big_host icoff_little_vec icoff_big_vec ieee_vec"
287     targ_underscore=yes
288     ;;
289
290   m32r-*-*)
291     targ_defvec=bfd_elf32_m32r_vec
292     ;;
293
294   m68*-apollo-*)
295     targ_defvec=apollocoff_vec
296     ;;
297   m68*-bull-sysv*)
298     targ_defvec=m68kcoffun_vec
299     targ_underscore=yes
300     ;;
301   m68*-motorola-sysv*)
302     targ_defvec=m68ksysvcoff_vec
303     ;;
304   m68*-hp-bsd*)
305     targ_defvec=hp300bsd_vec
306     targ_underscore=yes
307     ;;
308   m68*-*-aout*)
309     targ_defvec=aout0_big_vec
310     # We include cisco_core_vec here, rather than making a separate cisco
311     # configuration, so that cisco-core.c gets routinely tested at
312     # least for compilation.
313     targ_selvecs="cisco_core_vec ieee_vec"
314     targ_underscore=yes
315     ;;
316   m68*-*-elf* | m68*-*-sysv4*)
317     targ_defvec=bfd_elf32_m68k_vec
318     targ_selvecs="m68kcoff_vec ieee_vec"
319     ;;
320   m68*-*-coff* | m68*-*-sysv* | m68*-*-rtems*)
321     targ_defvec=m68kcoff_vec
322     targ_selvecs="m68kcoff_vec versados_vec ieee_vec"
323     ;;
324   m68*-*-hpux*)
325     targ_defvec=hp300hpux_vec
326     targ_underscore=yes
327     ;;
328   m68*-*-linux*aout*)
329     targ_defvec=m68klinux_vec
330     targ_selvecs=bfd_elf32_m68k_vec
331     targ_underscore=yes
332     ;;
333   m68*-*-linux-gnu*)
334     targ_defvec=bfd_elf32_m68k_vec
335     targ_selvecs=m68klinux_vec
336     ;;
337   m68*-*-lynxos*)
338     targ_defvec=m68klynx_coff_vec
339     targ_selvecs=m68klynx_aout_vec
340     ;;
341   m68*-hp*-netbsd*)
342     targ_defvec=m68k4knetbsd_vec
343     targ_selvecs="m68knetbsd_vec hp300bsd_vec sunos_big_vec"
344     targ_underscore=yes
345     ;;
346   m68*-*-netbsd* | m68*-*-openbsd*)
347     targ_defvec=m68knetbsd_vec
348     targ_selvecs="m68k4knetbsd_vec hp300bsd_vec sunos_big_vec"
349     targ_underscore=yes
350     ;;
351   m68*-*-sunos* | m68*-*-os68k* | m68*-*-vxworks* | m68*-netx-* | \
352   m68*-*-bsd* | m68*-*-vsta*)
353     targ_defvec=sunos_big_vec
354     targ_underscore=yes
355     ;;
356   m68*-ericsson-*)
357     targ_defvec=sunos_big_vec
358     targ_selvecs="m68kcoff_vec versados_vec tekhex_vec"
359     targ_underscore=yes
360     ;;
361   m68*-cbm-*)
362     targ_defvec=bfd_elf32_m68k_vec
363     targ_selvecs=m68kcoff_vec
364     ;;
365   m68*-apple-aux*)
366     targ_defvec=m68kaux_coff_vec
367     ;;
368   m68*-*-psos*)
369     targ_defvec=bfd_elf32_m68k_vec
370     targ_selvecs=ieee_vec
371     targ_underscore=yes
372     ;;
373
374   m88*-harris-cxux* | m88*-*-dgux* | m88*-*-sysv4*)
375     targ_defvec=bfd_elf32_m88k_vec
376     targ_selvecs=m88kbcs_vec
377     ;;
378   m88*-*-mach3*)
379     targ_defvec=m88kmach3_vec
380     targ_cflags=-DSTAT_FOR_EXEC
381     ;;
382   m88*-*-*)
383     targ_defvec=m88kbcs_vec
384     targ_underscore=yes
385     ;;
386
387   mips*-big-*)
388     targ_defvec=ecoff_big_vec
389     targ_selvecs=ecoff_little_vec
390     ;;
391   mips-dec-netbsd* | mips*el*-*-netbsd*)
392     targ_defvec=bfd_elf32_littlemips_vec
393     targ_selvecs="bfd_elf32_bigmips_vec ecoff_little_vec ecoff_big_vec"
394     ;;
395  mips*-*-netbsd*)
396     targ_defvec=bfd_elf32_bigmips_vec
397     targ_selvecs="bfd_elf32_littlemips_vec ecoff_big_vec ecoff_little_vec"
398     ;;
399   mips*-dec-bsd*)
400     targ_defvec=aout_mips_little_vec
401     targ_underscore=yes
402     ;;
403   mips*-dec-mach3*)
404     targ_defvec=aout_mips_little_vec
405     targ_cflags=-DSTAT_FOR_EXEC
406     ;;
407   mips*-dec-* | mips*el-*-ecoff*)
408     targ_defvec=ecoff_little_vec
409     targ_selvecs=ecoff_big_vec
410     ;;
411   mips*-*-ecoff*)
412     targ_defvec=ecoff_big_vec
413     targ_selvecs=ecoff_little_vec
414     ;;
415   mips*-*-irix6*)
416     targ_defvec=bfd_elf32_bigmips_vec
417     targ_selvecs="bfd_elf32_littlemips_vec bfd_elf64_bigmips_vec bfd_elf64_littlemips_vec"
418     ;;
419   mips*-*-irix5*)
420     targ_defvec=bfd_elf32_bigmips_vec
421     targ_selvecs="bfd_elf32_littlemips_vec ecoff_big_vec ecoff_little_vec"
422     ;;
423   mips*-sgi-* | mips*-*-bsd*)
424     targ_defvec=ecoff_big_vec
425     targ_selvecs=ecoff_little_vec
426     ;;
427   mips*-*-lnews*)
428     targ_defvec=ecoff_biglittle_vec
429     targ_selvecs="ecoff_little_vec ecoff_big_vec"
430     ;;
431   mips*-*-mach3*)
432     targ_defvec=aout_mips_little_vec
433     targ_cflags=-DSTAT_FOR_EXEC
434     ;;
435   mips*-*-sysv4*)
436     targ_defvec=bfd_elf32_bigmips_vec
437     targ_selvecs="bfd_elf32_littlemips_vec ecoff_big_vec ecoff_little_vec"
438     ;;
439   mips*-*-sysv* | mips*-*-riscos*)
440     targ_defvec=ecoff_big_vec
441     targ_selvecs=ecoff_little_vec
442     ;;
443   mips*el-*-elf*)
444     targ_defvec=bfd_elf32_littlemips_vec
445     targ_selvecs="bfd_elf32_bigmips_vec bfd_elf64_bigmips_vec bfd_elf64_littlemips_vec"
446     ;;
447   mips*-*-elf* | mips*-*-rtems*)
448     targ_defvec=bfd_elf32_bigmips_vec
449     targ_selvecs="bfd_elf32_littlemips_vec bfd_elf64_bigmips_vec bfd_elf64_littlemips_vec"
450     ;;
451   mips*-*-none)
452     targ_defvec=bfd_elf32_bigmips_vec
453     targ_selvecs="bfd_elf32_littlemips_vec bfd_elf64_bigmips_vec bfd_elf64_littlemips_vec"
454     ;;
455   mips*el*-*-linux-gnu* | mips*el*-*-openbsd*)
456     targ_defvec=bfd_elf32_littlemips_vec
457     targ_selvecs="bfd_elf32_bigmips_vec bfd_elf64_bigmips_vec bfd_elf64_littlemips_vec ecoff_little_vec ecoff_big_vec"
458     ;;
459   mips*-*-linux-gnu* | mips*-*-openbsd*)
460     targ_defvec=bfd_elf32_bigmips_vec
461     targ_selvecs="bfd_elf32_littlemips_vec bfd_elf64_bigmips_vec bfd_elf64_littlemips_vec ecoff_big_vec ecoff_little_vec"
462     ;;
463
464   mn10200-*-*)
465     targ_defvec=bfd_elf32_mn10200_vec
466     ;;
467
468   mn10300-*-*)
469     targ_defvec=bfd_elf32_mn10300_vec
470     ;;
471
472   ns32k-pc532-mach* | ns32k-pc532-ux*)
473     targ_defvec=pc532machaout_vec
474     targ_underscore=yes
475     ;;
476   ns32k-*-netbsd* | ns32k-*-lites* | ns32k-*-openbsd*)
477     targ_defvec=pc532netbsd_vec
478     targ_underscore=yes
479     ;;
480
481   powerpc-*-aix* | powerpc-*-beos*)
482     targ_defvec=rs6000coff_vec
483     ;;
484   powerpc-*-*bsd* | powerpc-*-elf* | powerpc-*-sysv4* | powerpc-*-eabi* | \
485   powerpc-*-solaris2* | powerpc-*-linux-gnu* | powerpc-*-rtems*)
486     targ_defvec=bfd_elf32_powerpc_vec
487     targ_selvecs="rs6000coff_vec bfd_elf32_powerpcle_vec ppcboot_vec"
488     ;;
489   powerpc-*-macos* | powerpc-*-mpw*)
490     targ_defvec=pmac_xcoff_vec
491     ;;
492   powerpc-*-netware*)
493     targ_defvec=bfd_elf32_powerpc_vec
494     targ_selvecs="nlm32_powerpc_vec rs6000coff_vec"
495     ;;
496   powerpcle-*-elf* | powerpcle-*-sysv4* | powerpcle-*-eabi* | \
497   powerpcle-*-solaris2* | powerpcle-*-linux-gnu*)
498     targ_defvec=bfd_elf32_powerpcle_vec
499     targ_selvecs="rs6000coff_vec bfd_elf32_powerpc_vec ppcboot_vec"
500     ;;
501
502   powerpcle-*-pe | powerpcle-*-winnt* | powerpcle-*-cygwin32*)
503     targ_defvec=bfd_powerpcle_pe_vec
504     targ_selvecs="bfd_powerpcle_pei_vec bfd_powerpc_pei_vec bfd_powerpcle_pe_vec bfd_powerpc_pe_vec"
505     ;;
506
507   rs6000-*-*)
508     targ_defvec=rs6000coff_vec
509     ;;
510
511   sh-*-elf*)
512     targ_defvec=bfd_elf32_sh_vec
513     targ_selvecs="bfd_elf32_shl_vec shcoff_vec shlcoff_vec shcoff_small_vec shlcoff_small_vec"
514     targ_underscore=yes
515     ;;
516   sh-*-* | sh-*-rtems*)
517     targ_defvec=shcoff_vec
518     targ_selvecs="shcoff_vec shlcoff_vec shcoff_small_vec shlcoff_small_vec"
519     targ_underscore=yes
520     ;;
521
522   sparclet-*-aout*)
523     targ_defvec=sunos_big_vec
524     targ_selvecs=sparcle_aout_vec
525     targ_underscore=yes
526     ;;
527   sparclite-*-elf* | sparc86x-*-elf*)
528     targ_defvec=bfd_elf32_sparc_vec
529     ;;
530   sparc-*-linux*aout*)
531     targ_defvec=sparclinux_vec
532     targ_selvecs="bfd_elf32_sparc_vec sunos_big_vec"
533     targ_underscore=yes
534     ;;
535   sparc-*-linux-gnu*)
536     targ_defvec=bfd_elf32_sparc_vec
537     targ_selvecs="sparclinux_vec sunos_big_vec"
538     ;;
539   sparc-*-lynxos*)
540     targ_defvec=sparclynx_coff_vec
541     targ_selvecs=sparclynx_aout_vec
542     ;;
543   sparc-*-netbsd* | sparc-*-openbsd*)
544     targ_defvec=sparcnetbsd_vec
545     targ_underscore=yes
546     ;;
547   sparc-*-elf* | sparc-*-solaris2*)
548     targ_defvec=bfd_elf32_sparc_vec
549     targ_selvecs=sunos_big_vec
550     ;;
551   sparc-*-sysv4*)
552     targ_defvec=bfd_elf32_sparc_vec
553     ;;
554   sparc-*-netware*)
555     targ_defvec=bfd_elf32_sparc_vec
556     targ_selvecs="nlm32_sparc_vec sunos_big_vec"
557     ;;
558 #ifdef BFD64
559   sparc64-*-aout*)
560     targ_defvec=sunos_big_vec
561     targ_underscore=yes
562     ;;
563   sparc64-*-linux-gnu*)
564     targ_defvec=bfd_elf64_sparc_vec
565     targ_selvecs="bfd_elf32_sparc_vec sparclinux_vec sunos_big_vec"
566     ;;
567   sparc64-*-elf*)
568     targ_defvec=bfd_elf64_sparc_vec
569     targ_selvecs=bfd_elf32_sparc_vec
570     ;;    
571 #endif /* BFD64 */
572   sparc*-*-coff*)
573     targ_defvec=sparccoff_vec
574     ;;
575   sparc*-*-* | sparc*-*-rtems*)
576     targ_defvec=sunos_big_vec
577     targ_underscore=yes
578     ;;
579
580 #if HAVE_host_aout_vec
581   tahoe-*-*)
582     targ_defvec=host_aout_vec
583     targ_underscore=yes
584     ;;
585 #endif
586 # start-sanitize-tic80
587
588   tic80*-*-*)
589     targ_defvec=tic80coff_vec
590     targ_underscore=yes
591     ;;
592
593 # end-sanitize-tic80
594
595   v850-*-*)
596     targ_defvec=bfd_elf32_v850_vec
597     ;;
598 # start-sanitize-v850e
599   v850e-*-*)
600     targ_defvec=bfd_elf32_v850_vec
601     ;;
602   v850ea-*-*)
603     targ_defvec=bfd_elf32_v850_vec
604     ;;
605 # end-sanitize-v850e
606 #if HAVE_host_aout_vec
607   vax-*-bsd* | vax-*-ultrix*)
608     targ_defvec=host_aout_vec
609     targ_underscore=yes
610     ;;
611 #endif
612
613   vax*-*-*vms*)
614     targ_defvec=vms_vax_vec
615     ;;
616
617   we32k-*-*)
618     targ_defvec=we32kcoff_vec
619     ;;
620
621   w65-*-*)
622     targ_defvec=w65_vec
623     ;;
624
625   z8k*-*-*)
626     targ_defvec=z8kcoff_vec
627     targ_underscore=yes
628     ;;
629
630   *-*-ieee*)
631     targ_defvec=ieee_vec
632     ;;
633
634   *-adobe-*)
635     targ_defvec=a_out_adobe_vec
636     targ_underscore=yes
637     ;;
638
639   *-sony-*)
640     targ_defvec=newsos3_vec
641     targ_underscore=yes
642     ;;
643
644   *-tandem-*)
645     targ_defvec=m68kcoff_vec
646     targ_selvecs=ieee_vec
647     ;;
648 # END OF targmatch.h
649   *)
650     echo 1>&2 "*** BFD does not support target ${targ}."
651     echo 1>&2 "*** Look in bfd/config.bfd for supported targets."
652     exit 1
653     ;;
654 esac
655
656 # If we support any ELF target, then automatically add support for the
657 # generic ELF targets.  This permits an objdump with some ELF support
658 # to be used on an arbitrary ELF file for anything other than
659 # relocation information.
660 case "${targ_defvec} ${targ_selvecs}" in
661   *bfd_elf64*)
662     targ_selvecs="${targ_selvecs} bfd_elf64_little_generic_vec bfd_elf64_big_generic_vec bfd_elf32_little_generic_vec bfd_elf32_big_generic_vec"
663     ;;
664   *bfd_elf32*)
665     targ_selvecs="${targ_selvecs} bfd_elf32_little_generic_vec bfd_elf32_big_generic_vec"
666     ;;
667 esac