OpenCores
URL https://opencores.org/ocsvn/open8_urisc/open8_urisc/trunk

Subversion Repositories open8_urisc

[/] [open8_urisc/] [trunk/] [gnu/] [binutils/] [bfd/] [config.bfd] - Blame information for rev 299

Go to most recent revision | Details | Compare with Previous | View Log

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

powered by: WebSVN 2.1.0

© copyright 1999-2024 OpenCores.org, equivalent to Oliscience, all rights reserved. OpenCores®, registered trademark.