Commit | Line | Data |
---|---|---|
49df10b1 DM |
1 | #!/bin/sh |
2 | ||
3 | # config.bfd | |
4 | # Convert a canonical host type into a BFD host type. | |
5 | # Call with canonical name as the argument. | |
6 | # Echos the result. | |
7 | ||
8 | canon="$1" | |
9 | cpu=`echo $canon | sed 's/^\(.*\)-\(.*\)-\(.*\)$/\1/'` | |
10 | ||
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. | |
15 | ||
16 | case "${canon}" in | |
17 | alpha-*-*) bfd_name=alphaosf ;; | |
ffa2b1df JK |
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 ;; | |
49df10b1 DM |
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 ;; | |
bdacad9c | 28 | hppa*-*-hiux*) bfd_name=hppahpux ;; |
ffa2b1df | 29 | hppa*-*-osf*) bfd_name=hppa-elf ;; |
49df10b1 | 30 | i[34]86-*-sysv4*) bfd_name=i386-elf ;; |
4a703e06 | 31 | i[34]86-*-unixware) bfd_name=i386-elf ;; |
d36bdf40 | 32 | i[34]86-*-solaris2*) bfd_name=i386-elf ;; |
49df10b1 | 33 | i[34]86-*-sysv*) bfd_name=i386-coff ;; |
2b91cc45 SG |
34 | i[34]86-*-isc*) bfd_name=i386-coff ;; |
35 | i[34]86-*-sco*) bfd_name=i386-coff ;; | |
49df10b1 | 36 | i[34]86-*-bsd*) bfd_name=i386-bsd ;; |
49df10b1 DM |
37 | i[34]86-*-coff) bfd_name=i386-coff ;; |
38 | i[34]86-*-aix*) bfd_name=i386-coff ;; | |
39 | i[34]86-*-elf) bfd_name=i386-elf ;; | |
1964686f | 40 | i[34]86-*-netbsd*) bfd_name=i386-netbsd ;; |
49df10b1 DM |
41 | i[34]86-*-netware*) bfd_name=i386-nlm ;; |
42 | i[34]86-*-linux*) bfd_name=i386-linux ;; | |
bdacad9c | 43 | i[34]86-*-lynxos*) bfd_name=i386-lynx ;; |
03f4cf99 ILT |
44 | i[34]86-*-mach*) bfd_name=i386-mach3 ;; |
45 | i[34]86-*-osf1mk*) bfd_name=i386-mach3 ;; | |
49df10b1 | 46 | i[34]86-none-*) bfd_name=i386-coff ;; |
ffa2b1df JK |
47 | i960-*-vxworks*) bfd_name=i960-bout ;; |
48 | i960-*-aout*) bfd_name=i960-bout ;; | |
49 | i960-*-bout*) bfd_name=i960-bout ;; | |
bdacad9c | 50 | i960-*-nindy*) bfd_name=i960-bout ;; |
ffa2b1df | 51 | m68*-apollo-bsd*) bfd_name=apollo ;; |
49df10b1 DM |
52 | m68*-bull-sysv*) bfd_name=u68k-coff ;; |
53 | m68*-hp-bsd*) bfd_name=hp300bsd ;; | |
ffa2b1df JK |
54 | m68*-*-aout*) bfd_name=m68k-aout ;; |
55 | m68*-*-coff*) bfd_name=m68k-coff ;; | |
49df10b1 | 56 | m68*-*-hpux*) bfd_name=hp300hpux ;; |
bdacad9c | 57 | m68*-*-lynxos*) bfd_name=m68k-lynx ;; |
ffa2b1df | 58 | m68*-*-os68k*) bfd_name=m68k-aout ;; |
49df10b1 DM |
59 | m68*-*-sunos*) bfd_name=m68k-aout ;; |
60 | m68*-*-sysv*) bfd_name=m68k-coff ;; | |
6198b7a1 | 61 | m68*-*-sysv4*) bfd_name=m68k-elf ;; |
49df10b1 DM |
62 | m68*-*-vxworks*) bfd_name=m68k-aout ;; |
63 | m68*-ericsson-*) bfd_name=m68k-aout ;; | |
64 | m68*-netx-*) bfd_name=m68k-aout ;; | |
8d3ad252 | 65 | m88*-*-sysv4*) bfd_name=m88k-elf ;; |
49df10b1 | 66 | m88k-*-*) bfd_name=m88k-coff ;; |
1964686f | 67 | m88110-*-*) bfd_name=m88k-coff ;; |
6198b7a1 JK |
68 | mips*-big-*) bfd_name=bigmips ;; |
69 | mips*-dec-bsd*) bfd_name=mipsdecbsd ;; | |
70 | mips*-dec-*) bfd_name=decstation ;; | |
71 | mips*el-*-ecoff*) bfd_name=decstation ;; | |
72 | mips*-*-ecoff*) bfd_name=bigmips ;; | |
5dac2dd5 | 73 | mips*-*-irix5*) bfd_name=mipsbelf ;; |
6198b7a1 JK |
74 | mips*-sgi-*) bfd_name=bigmips ;; |
75 | mips*-*-sysv*) bfd_name=riscos ;; | |
76 | mips*-*-riscos*) bfd_name=riscos ;; | |
242f60e2 | 77 | mips*-*-bsd*) bfd_name=bigmips ;; # Sony News |
6198b7a1 JK |
78 | mips*el-*-elf*) bfd_name=mipslelf ;; |
79 | mips*-*-elf*) bfd_name=mipsbelf ;; | |
03f4cf99 ILT |
80 | # Apparently this is similar enough to 386 mach to use the same target. |
81 | ns32*-*-mach*) bfd_name=i386-mach3 ;; | |
49df10b1 | 82 | rs6000-*-*) bfd_name=rs6000 ;; |
6198b7a1 | 83 | sparc-*-lynxos*) bfd_name=sparc-lynx ;; |
49df10b1 DM |
84 | sparc-*-solaris2*) bfd_name=sparc-elf ;; |
85 | sparc-*-sysv4*) bfd_name=sparc-elf ;; | |
86 | # start-sanitize-v9 | |
49df10b1 | 87 | sparc64-*-aout*) bfd_name=sparc-aout ;; |
5dac2dd5 | 88 | sparc64-*-elf*) bfd_name=sparc64-elf ;; |
49df10b1 | 89 | # end-sanitize-v9 |
4a703e06 | 90 | sparc-*-netware*) bfd_name=sparc-nlm ;; |
fff9ad37 | 91 | sparc*-*-coff*) bfd_name=sparc-coff ;; |
49df10b1 DM |
92 | sparc*-*-*) bfd_name=sparc-aout ;; |
93 | tahoe-*-*) bfd_name=tahoe ;; | |
ffa2b1df | 94 | vax-*-vms*) bfd_name=vax-vms ;; |
49df10b1 DM |
95 | vax-*-*) bfd_name=vax ;; |
96 | we32k-*-*) bfd_name=we32k ;; | |
97 | z8k*-*-*) bfd_name=z8k-coff ;; | |
98 | ||
ffa2b1df | 99 | *-*-aout*) bfd_name=${cpu}-aout ;; |
49df10b1 DM |
100 | *-*-bsd*) bfd_name=${cpu}-aout ;; |
101 | *-*-netware*) bfd_name=${cpu}-nlm ;; | |
102 | *-*-sysv4*) bfd_name=${cpu}-elf ;; | |
103 | *-*-solaris2*) bfd_name=${cpu}-elf ;; | |
ffa2b1df | 104 | *-*-go32*) bfd_name=${cpu}-aout ;; |
49df10b1 DM |
105 | *-*-sysv*) bfd_name=${cpu}-coff ;; |
106 | ||
5dac2dd5 ILT |
107 | *-*-aout64*) bfd_name=${cpu}-aout64 ;; |
108 | *-*-elf64*) bfd_name=${cpu}-elf64 ;; | |
49df10b1 DM |
109 | |
110 | *-adobe-*) bfd_name=adobe ;; | |
111 | *-sony-*) bfd_name=news ;; | |
112 | *-intel-*) bfd_name=${cpu}-coff ;; | |
113 | *-stratus-*) bfd_name=${cpu}-elf ;; | |
114 | *-cbm-*) bfd_name=${cpu}-elf ;; | |
115 | *-ncr-*) bfd_name=${cpu}-elf ;; | |
116 | *-tandem-*) bfd_name=st2000 ;; | |
117 | ||
118 | # Allow targets that config.sub doesn't recognize, like "all". | |
119 | *) bfd_name=$canon ;; | |
120 | esac | |
121 | ||
122 | echo $bfd_name |