4 # Convert a canonical host type into a BFD host type.
5 # Call with canonical name as the argument.
9 cpu
=`echo $canon | sed 's/^\(.*\)-\(.*\)-\(.*\)$/\1/'`
11 # WHEN ADDING ENTRIES TO THIS MATRIX:
12 # Make sure that the left side always has two dashes. Otherwise you
13 # can get spurious matches. Even for unambiguous cases, do this as a
14 # convention, else the table becomes a real mess to understand and maintain.
17 alpha-
*-*) bfd_name
=alphaosf
;;
18 a29k-
*-ebmon) bfd_name
=a29k-coff
;;
19 a29k-
*-udi) bfd_name
=a29k-coff
;;
20 a29k-
*-aout) bfd_name
=a29k-aout
;;
21 a29k-
*-coff) bfd_name
=a29k-coff
;;
22 a29k-
*-sym1) bfd_name
=a29k-coff
;;
23 h8300
*-*-*) bfd_name
=h8300-coff
;;
24 h8500-
*-*) bfd_name
=h8500-coff
;;
25 sh-
*-*) bfd_name
=sh-coff
;;
26 hppa
*-*-bsd*) bfd_name
=hppabsd
;;
27 hppa
*-*-hpux*) bfd_name
=hppahpux
;;
28 hppa
*-*-hiux*) bfd_name
=hppahpux
;;
29 hppa
*-*-osf) bfd_name
=hppa-elf
;;
30 i
[34]86-*-sysv4*) bfd_name
=i386-elf
;;
31 i
[34]86-*-solaris2*) bfd_name
=i386-elf
;;
32 i
[34]86-*-sysv*) bfd_name
=i386-coff
;;
33 i
[34]86-*-isc*) bfd_name
=i386-coff
;;
34 i
[34]86-*-sco*) bfd_name
=i386-coff
;;
35 i
[34]86-*-bsd*) bfd_name
=i386-bsd
;;
36 i
[34]86-*-coff) bfd_name
=i386-coff
;;
37 i
[34]86-*-aix*) bfd_name
=i386-coff
;;
38 i
[34]86-*-elf) bfd_name
=i386-elf
;;
39 i
[34]86-*-netbsd*) bfd_name
=i386-netbsd
;;
40 i
[34]86-*-netware*) bfd_name
=i386-nlm
;;
41 i
[34]86-*-linux*) bfd_name
=i386-linux
;;
42 i
[34]86-*-lynxos*) bfd_name
=i386-lynx
;;
43 i
[34]86-*-mach*) bfd_name
=i386-mach3
;;
44 i
[34]86-*-osf1mk*) bfd_name
=i386-mach3
;;
45 i
[34]86-none-*) bfd_name
=i386-coff
;;
46 i960-
*-vxworks) bfd_name
=i960-bout
;;
47 i960-
*-aout) bfd_name
=i960-bout
;;
48 i960-
*-bout) bfd_name
=i960-bout
;;
49 i960-
*-nindy*) bfd_name
=i960-bout
;;
50 m68
*-bull-sysv*) bfd_name
=u68k-coff
;;
51 m68
*-hp-bsd*) bfd_name
=hp300bsd
;;
52 m68
*-*-aout) bfd_name
=m68k-aout
;;
53 m68
*-*-coff) bfd_name
=m68k-coff
;;
54 m68
*-*-hpux*) bfd_name
=hp300hpux
;;
55 m68
*-*-lynxos*) bfd_name
=m68k-lynx
;;
56 m68
*-*-os68k) bfd_name
=m68k-aout
;;
57 m68
*-*-sunos*) bfd_name
=m68k-aout
;;
58 m68
*-*-sysv*) bfd_name
=m68k-coff
;;
59 m68
*-*-vxworks*) bfd_name
=m68k-aout
;;
60 m68
*-ericsson-*) bfd_name
=m68k-aout
;;
61 m68
*-netx-*) bfd_name
=m68k-aout
;;
62 m88
*-*-sysv4*) bfd_name
=m88k-elf
;;
63 m88k-
*-*) bfd_name
=m88k-coff
;;
64 m88110-
*-*) bfd_name
=m88k-coff
;;
65 mips-big-
*) bfd_name
=bigmips
;;
66 mips-dec-bsd
*) bfd_name
=mipsdecbsd
;;
67 mips-dec-
*) bfd_name
=decstation
;;
68 mips-
*-ecoffl*) bfd_name
=decstation
;;
69 mips-
*-ecoff*) bfd_name
=bigmips
;;
70 mips-sgi-
*) bfd_name
=bigmips
;;
71 mips-
*-sysv*) bfd_name
=riscos
;;
72 mips-
*-riscos*) bfd_name
=riscos
;;
73 mips-
*-bsd*) bfd_name
=noop
;;
74 mips-
*-elfl*) bfd_name
=mipslelf
;;
75 mips-
*-elf*) bfd_name
=mipsbelf
;;
76 # Apparently this is similar enough to 386 mach to use the same target.
77 ns32
*-*-mach*) bfd_name
=i386-mach3
;;
78 rs6000-
*-*) bfd_name
=rs6000
;;
79 sparc-
*-solaris2*) bfd_name
=sparc-elf
;;
80 sparc-
*-sysv4*) bfd_name
=sparc-elf
;;
82 # Don't set target64=true for sparc64-*-aout*. Keep it using the 32bit stuff
83 # so we continue to have something that works (until the 64 bit support is
85 sparc64-
*-aout*) bfd_name
=sparc-aout
;;
86 sparc64-
*-elf*) bfd_name
=sparc64-elf
; target64
=true
;;
88 sparc
*-*-*) bfd_name
=sparc-aout
;;
89 tahoe-
*-*) bfd_name
=tahoe
;;
90 vax-
*-vms) bfd_name
=vax-vms
;;
91 vax-
*-*) bfd_name
=vax
;;
92 we32k-
*-*) bfd_name
=we32k
;;
93 z8k
*-*-*) bfd_name
=z8k-coff
;;
95 *-*-aout) bfd_name
=${cpu}-aout ;;
96 *-*-bsd*) bfd_name
=${cpu}-aout ;;
97 *-*-netware*) bfd_name
=${cpu}-nlm ;;
98 *-*-sysv4*) bfd_name
=${cpu}-elf ;;
99 *-*-solaris2*) bfd_name
=${cpu}-elf ;;
100 *-*-go32) bfd_name
=${cpu}-aout ;;
101 *-*-sysv*) bfd_name
=${cpu}-coff ;;
103 *-*-aout64) bfd_name
=${cpu}-aout64 ; target64
=true
;;
104 *-*-elf64) bfd_name
=${cpu}-elf64 ; target64
=true
;;
106 *-adobe-*) bfd_name
=adobe
;;
107 *-sony-*) bfd_name
=news
;;
108 *-intel-*) bfd_name
=${cpu}-coff ;;
109 *-stratus-*) bfd_name
=${cpu}-elf ;;
110 *-cbm-*) bfd_name
=${cpu}-elf ;;
111 *-ncr-*) bfd_name
=${cpu}-elf ;;
112 *-tandem-*) bfd_name
=st2000
;;
114 # Allow targets that config.sub doesn't recognize, like "all".
115 *) bfd_name
=$canon ;;