]> Git Repo - binutils.git/blob - bfd/config.bfd
* config.bfd (i[345]86-*-gnu*): Set bfd_name to i386-gnu.
[binutils.git] / bfd / config.bfd
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 # If second argument is _, echoes whether underscores are stripped.
8
9 canon="$1"
10 cpu=`echo $canon | sed 's/^\(.*\)-\(.*\)-\(.*\)$/\1/'`
11
12 # The binutils c++filt program wants to know whether underscores are
13 # stripped or not.  It uses this information to choose a default.
14 # This information is duplicated in the symbol_leading_char field of
15 # the BFD target vector, but c++filt does not deal with object files
16 # and is not linked against libbfd.a.  It is not terribly important
17 # that c++filt get this right; it is just convenient.
18 strip_underscore=no
19
20 # WHEN ADDING ENTRIES TO THIS MATRIX:
21 #  Make sure that the left side always has two dashes.  Otherwise you
22 #  can get spurious matches.  Even for unambiguous cases, do this as a
23 #  convention, else the table becomes a real mess to understand and maintain.
24
25 case "${canon}" in
26   alpha-*-netware*)     bfd_name=alpha-nlm ;;
27   alpha-*-*)            bfd_name=alphaosf ;;
28 # start-sanitize-arc
29   arc-*-elf*)           bfd_name=arc-elf ;;
30 # end-sanitize-arc
31   arm-*-riscix*)        bfd_name=riscix ;;
32   a29k-*-ebmon*)        bfd_name=a29k-coff strip_underscore=yes ;;
33   a29k-*-udi*)          bfd_name=a29k-coff strip_underscore=yes ;;
34   a29k-*-aout*)         bfd_name=a29k-aout strip_underscore=yes ;;
35   a29k-*-coff*)         bfd_name=a29k-coff strip_underscore=yes ;;
36   a29k-*-sym1*)         bfd_name=a29k-coff strip_underscore=yes ;;
37   h8300*-*-*)           bfd_name=h8300-coff strip_underscore=yes ;;
38   h8500-*-*)            bfd_name=h8500-coff strip_underscore=yes ;;
39   sh-*-*)               bfd_name=sh-coff strip_underscore=yes ;;
40 # start-sanitize-rce
41   rce-*-aout)           bfd_name=rce-aout ;;
42 # end-sanitize-rce
43   hppa*-*-*elf*)        bfd_name=hppa-elf ;;
44   hppa*-*-bsd*)         bfd_name=hppabsd ;;
45   hppa*-*-hpux*)        bfd_name=hppahpux ;;
46   hppa*-*-hiux*)        bfd_name=hppahpux ;;
47   hppa*-*-osf*)         bfd_name=hppaosf ;;
48   i[345]86-*-sysv4*)    bfd_name=i386-elf ;;
49   i[345]86-*-unixware)  bfd_name=i386-elf ;;
50   i[345]86-*-solaris2*) bfd_name=i386-elf ;;
51   i[345]86-*-sysv*)     bfd_name=i386-coff ;;
52   i[345]86-*-isc*)      bfd_name=i386-coff ;;
53   i[345]86-*-sco*)      bfd_name=i386-coff ;;
54   i[345]86-sequent-bsd*) bfd_name=i386-dynix strip_underscore=yes ;;
55   i[345]86-*-bsd*)      bfd_name=i386-bsd strip_underscore=yes ;;
56   i[345]86-*-coff)      bfd_name=i386-coff ;;
57   i[345]86-*-aix*)      bfd_name=i386-coff ;;
58   i[345]86-*-elf)       bfd_name=i386-elf ;;
59   i[345]86-*-freebsd*)  bfd_name=i386-bsd strip_underscore=yes ;;
60   i[345]86-*-netbsd*)   bfd_name=i386-nbsd strip_underscore=yes ;;
61   i[345]86-*-netware*)  bfd_name=i386-nlm ;;
62   i[345]86-*-linux*)    bfd_name=i386-linux strip_underscore=yes ;;
63   i[345]86-*-lynxos*)   bfd_name=i386-lynx ;;
64   i[345]86-*-gnu*)      bfd_name=i386-gnu strip_underscore=yes ;;
65   i[345]86-*-mach*)     bfd_name=i386-mach3 strip_underscore=yes ;;
66   i[345]86-*-osf1mk*)   bfd_name=i386-mach3 strip_underscore=yes ;;
67   i[345]86-*-os9k)      bfd_name=i386-os9k ;;
68   i[345]86-none-*)      bfd_name=i386-coff ;;
69   i960-*-vxworks4*)     bfd_name=i960-bout strip_underscore=yes ;;
70   i960-*-vxworks5.0)    bfd_name=i960-bout strip_underscore=yes ;;
71   i960-*-vxworks5.*)    bfd_name=i960-coff strip_underscore=yes ;;
72   i960-*-vxworks*)      bfd_name=i960-bout strip_underscore=yes ;;
73   i960-*-aout*)         bfd_name=i960-bout strip_underscore=yes ;;
74   i960-*-bout*)         bfd_name=i960-bout strip_underscore=yes ;;
75   i960-*-coff*)         bfd_name=i960-coff strip_underscore=yes ;;
76   i960-*-nindy*)        bfd_name=i960-bout strip_underscore=yes ;;
77   m68*-apollo-*)        bfd_name=apollo ;;
78   m68*-bull-sysv*)      bfd_name=u68k-coff ;;
79   m68*-hp-bsd*)         bfd_name=hp300bsd strip_underscore=yes ;;
80   m68*-*-aout*)         bfd_name=m68k-0aout strip_underscore=yes ;;
81   m68*-*-coff*)         bfd_name=m68k-coff ;;
82   m68*-*-hpux*)         bfd_name=hp300hpux strip_underscore=yes ;;
83   m68*-*-lynxos*)       bfd_name=m68k-lynx ;;
84   m68*-*-netbsd*)       bfd_name=m68k-nbsd strip_underscore=yes ;;
85   m68*-*-os68k*)        bfd_name=m68k-aout strip_underscore=yes ;;
86   m68*-*-sunos*)        bfd_name=m68k-aout strip_underscore=yes ;;
87   m68*-*-sysv4*)        bfd_name=m68k-elf ;;
88   m68*-*-sysv*)         bfd_name=m68k-coff ;;
89   m68*-*-vxworks*)      bfd_name=m68k-aout strip_underscore=yes ;;
90   m68*-ericsson-*)      bfd_name=m68k-ose strip_underscore=yes ;;
91   m68*-netx-*)          bfd_name=m68k-aout strip_underscore=yes ;;
92
93   m88*-harris-cxux*)    bfd_name=m88k-elf ;;
94   # DGUX used to use COFF, but now (Jan 94) I believe it uses ELF by default.
95   m88*-*-dgux*)         bfd_name=m88k-elf ;;
96   m88*-*-mach3*)        bfd_name=m88k-mach3 ;;
97   m88*-*-sysv4*)        bfd_name=m88k-elf ;;
98   m88*-*-*)             bfd_name=m88k-coff strip_underscore=yes ;;
99
100   mips*-big-*)          bfd_name=bigmips ;;
101   mips*-dec-bsd*)       bfd_name=mipsdecbsd strip_underscore=yes ;;
102   mips*-dec-mach3*)     bfd_name=mips-mach3 ;;
103   mips*-dec-*)          bfd_name=decstation ;;
104   mips*el-*-ecoff*)     bfd_name=decstation ;;
105   mips*-*-ecoff*)       bfd_name=bigmips ;;
106   mips*-*-irix5*)       bfd_name=mipsbelf ;;
107   mips*-sgi-*)          bfd_name=bigmips ;;
108   mips*-*-mach3*)       bfd_name=mips-mach3 ;;
109   mips*-*-sysv4*)       bfd_name=mipsbelf ;;
110   mips*-*-sysv*)        bfd_name=riscos ;;
111   mips*-*-riscos*)      bfd_name=riscos ;;
112   mips*-*-bsd*)         bfd_name=bigmips ;; # Sony News
113   mips*el-*-elf*)       bfd_name=mipslelf ;;
114   mips*-*-elf*)         bfd_name=mipsbelf ;;
115   ns32k-pc532-mach*)    bfd_name=pc532-mach strip_underscore=yes;;
116   ns32k-*-netbsd*)      bfd_name=ns32k-nbsd strip_underscore=yes;;
117   powerpc-*-aix*)       bfd_name=rs6000 ;;
118   powerpc-*-elf*)       bfd_name=ppc-elf ;;
119   powerpc-*-sysv4*)     bfd_name=ppc-elf ;;
120   powerpc-*-netware*)   bfd_name=ppc-nlm ;;
121   rs6000-*-*)           bfd_name=rs6000 ;;
122   sparc-*-lynxos*)      bfd_name=sparc-lynx ;;
123   sparc-*-netbsd*)      bfd_name=sparc-nbsd strip_underscore=yes;;
124   sparc-*-solaris2*)    bfd_name=sparc-elf ;;
125   sparc-*-sysv4*)       bfd_name=sparc-elf ;;
126   sparc64-*-aout*)      bfd_name=sparc-aout strip_underscore=yes ;;
127   sparc64-*-elf*)       bfd_name=sparc64-elf ;;
128   sparc-*-netware*)     bfd_name=sparc-nlm ;;
129   sparc*-*-coff*)       bfd_name=sparc-coff ;;
130   sparc*-*-*)           bfd_name=sparc-aout strip_underscore=yes ;;
131   tahoe-*-*)            bfd_name=tahoe strip_underscore=yes ;;
132   vax-*-vms*)           bfd_name=vax-vms ;;
133   vax-*-*)              bfd_name=vax strip_underscore=yes ;;
134   we32k-*-*)            bfd_name=we32k ;;
135   w65-*-*)              bfd_name=w65 ;;
136   z8k*-*-*)             bfd_name=z8k-coff strip_underscore=yes ;;
137
138   *-*-aout*)            bfd_name=${cpu}-aout strip_underscore=yes ;;
139   *-*-bsd*)             bfd_name=${cpu}-aout strip_underscore=yes ;;
140   *-*-netware*)         bfd_name=${cpu}-nlm ;;
141   *-*-sysv4*)           bfd_name=${cpu}-elf ;;
142   *-*-solaris2*)        bfd_name=${cpu}-elf ;;
143   *-*-vsta*)            bfd_name=${cpu}-aout strip_underscore=yes ;;
144   *-*-go32*)            bfd_name=${cpu}-coff ;;
145   *-*-sysv*)            bfd_name=${cpu}-coff ;;
146
147   *-*-aout64*)          bfd_name=${cpu}-aout64 strip_underscore=yes ;;
148   *-*-elf64*)           bfd_name=${cpu}-elf64 ;;
149
150   *-adobe-*)            bfd_name=adobe strip_underscore=yes ;;
151   *-sony-*)             bfd_name=news strip_underscore=yes ;;
152   *-intel-*)            bfd_name=${cpu}-coff ;;
153   *-stratus-*)          bfd_name=${cpu}-elf ;;
154   *-cbm-*)              bfd_name=${cpu}-elf ;;
155   *-ncr-*)              bfd_name=${cpu}-elf ;;
156   *-tandem-*)           bfd_name=st2000 ;;
157
158   # Allow targets that config.sub doesn't recognize, like "all".
159   *)                    bfd_name=$canon ;;
160 esac
161
162 if [ "x$2" = "x_" ]; then
163   echo $strip_underscore
164 else
165   echo $bfd_name
166 fi
This page took 0.031453 seconds and 4 git commands to generate.