X-Git-Url: http://drtracing.org/?a=blobdiff_plain;f=gas%2Fconfigure.tgt;h=e2df65957ba9ad4393f4e8006d1cc88cde270b85;hb=a24bb4f0cce83eea8b2ad1542316651143af6f90;hp=edcfc34db8c1e22b9e21f421f2448ac65c4e506d;hpb=4be041b2dbd0436dd8d96217ce9e6723ce12f1d2;p=deliverable%2Fbinutils-gdb.git diff --git a/gas/configure.tgt b/gas/configure.tgt index edcfc34db8..e2df65957b 100644 --- a/gas/configure.tgt +++ b/gas/configure.tgt @@ -1,4 +1,21 @@ # gas target specific configuration file. This is a -*- sh -*- file. +# +# Copyright (C) 2012-2016 Free Software Foundation, Inc. +# +# This file is free software; you can redistribute it and/or modify +# it under the terms of the GNU General Public License as published by +# the Free Software Foundation; either version 3 of the License, or +# (at your option) any later version. +# +# This program is distributed in the hope that it will be useful, +# but WITHOUT ANY WARRANTY; without even the implied warranty of +# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the +# GNU General Public License for more details. +# +# You should have received a copy of the GNU General Public License +# along with this program; see the file COPYING3. If not see +# . +# # This is invoked by configure. Putting it in a separate shell file # lets us skip running autoconf when modifying target specific @@ -13,7 +30,7 @@ # em emulation; identifies the config/te-* files # Optional output shell variables; these are not always set: -# arch the default architecture; sets DEFAULT_ARCH on some systems +# arch the default architecture; sets DEFAULT_ARCH on some systems # endian "big" or "little"; used on bi-endian systems cpu_type= @@ -29,20 +46,27 @@ eval `echo $targ | sed 's/^\([^-]*\)-\([^-]*\)-\(.*\)$/cpu=\1 vendor=\2 os=\3/'` # endian and arch. # Note: This table is alpha-sorted, please try to keep it that way. case ${cpu} in + aarch64) cpu_type=aarch64 endian=little ;; + aarch64_be) cpu_type=aarch64 endian=big ;; alpha*) cpu_type=alpha ;; am33_2.0) cpu_type=mn10300 endian=little ;; + arc*eb) cpu_type=arc endian=big ;; arm*be|arm*b) cpu_type=arm endian=big ;; arm*) cpu_type=arm endian=little ;; bfin*) cpu_type=bfin endian=little ;; c4x*) cpu_type=tic4x ;; + cr16*) cpu_type=cr16 endian=little ;; crisv32) cpu_type=cris arch=crisv32 ;; crx*) cpu_type=crx endian=little ;; + epiphany*) cpu_type=epiphany endian=little ;; + fido) cpu_type=m68k ;; hppa*) cpu_type=hppa ;; i[3-7]86) cpu_type=i386 arch=i386;; ia64) cpu_type=ia64 ;; - ip2k) cpu_type=ip2k endian=big ;; - iq2000) cpu_type=iq2000 endian=big ;; - m32c) cpu_type=m32c endian=big ;; + ip2k) cpu_type=ip2k endian=big ;; + iq2000) cpu_type=iq2000 endian=big ;; + lm32) cpu_type=lm32 ;; + m32c) cpu_type=m32c endian=little ;; m32r) cpu_type=m32r endian=big ;; m32rle) cpu_type=m32r endian=little ;; m5200) cpu_type=m68k ;; @@ -50,22 +74,30 @@ case ${cpu} in m680[012346]0) cpu_type=m68k ;; m6811|m6812|m68hc12) cpu_type=m68hc11 ;; m683??) cpu_type=m68k ;; - maxq) cpu_type=maxq ;; + mep) cpu_type=mep endian=little ;; + microblazeel*) cpu_type=microblaze endian=little;; + microblaze*) cpu_type=microblaze endian=big;; mips*el) cpu_type=mips endian=little ;; mips*) cpu_type=mips endian=big ;; - mt) cpu_type=mt endian=big ;; - or32*) cpu_type=or32 endian=big ;; + mt) cpu_type=mt endian=big ;; + nds32be) cpu_type=nds32 endian=big ;; + nds32le) cpu_type=nds32 endian=little ;; + or1k* | or1knd*) cpu_type=or1k endian=big ;; pjl*) cpu_type=pj endian=little ;; pj*) cpu_type=pj endian=big ;; powerpc*le*) cpu_type=ppc endian=little ;; powerpc*) cpu_type=ppc endian=big ;; rs6000*) cpu_type=ppc ;; + rl78*) cpu_type=rl78 ;; + rx) cpu_type=rx ;; s390x*) cpu_type=s390 arch=s390x ;; s390*) cpu_type=s390 arch=s390 ;; + score*l) cpu_type=score endian=little ;; + score*) cpu_type=score endian=big ;; sh5le*) cpu_type=sh64 endian=little ;; sh5*) cpu_type=sh64 endian=big ;; sh64le*) cpu_type=sh64 endian=little ;; - sh64*) cpu_type=sh64 endian=big ;; + sh64*) cpu_type=sh64 endian=big ;; sh*le) cpu_type=sh endian=little ;; sh*) cpu_type=sh endian=big ;; sparc64*) cpu_type=sparc arch=v9-64 ;; @@ -73,13 +105,12 @@ case ${cpu} in sparclet*) cpu_type=sparc arch=sparclet ;; sparclite*) cpu_type=sparc arch=sparclite ;; sparc*) cpu_type=sparc arch=sparclite ;; # ??? See tc-sparc.c. - strongarm*be) cpu_type=arm endian=big ;; - strongarm*b) cpu_type=arm endian=big ;; - strongarm*) cpu_type=arm endian=little ;; + tilegx*be) cpu_type=tilegx endian=big ;; + tilegx*) cpu_type=tilegx endian=little ;; v850*) cpu_type=v850 ;; - x86_64) cpu_type=i386 arch=x86_64;; - xscale*be|xscale*b) cpu_type=arm endian=big ;; - xscale*) cpu_type=arm endian=little ;; + visium) cpu_type=visium endian=big ;; + x86_64*) cpu_type=i386 arch=x86_64;; + xgate) cpu_type=xgate ;; xtensa*) cpu_type=xtensa arch=xtensa ;; *) cpu_type=${cpu} ;; esac @@ -89,53 +120,73 @@ esac generic_target=${cpu_type}-$vendor-$os # Note: This table is alpha-sorted, please try to keep it that way. case ${generic_target} in + aarch64*-*-elf | aarch64*-*-rtems*) fmt=elf;; + aarch64*-*-linux*) fmt=elf em=linux ;; + alpha-*-*vms*) fmt=evax ;; alpha-*-osf*) fmt=ecoff ;; - alpha-*-linuxecoff*) fmt=ecoff ;; + alpha-*-linux*ecoff*) fmt=ecoff ;; alpha-*-linux-*) fmt=elf em=linux ;; - alpha-*-netbsd*) fmt=elf em=nbsd ;; - alpha-*-openbsd*) fmt=elf em=obsd ;; + alpha-*-netbsd* | alpha-*-openbsd*) fmt=elf em=nbsd ;; arc-*-elf*) fmt=elf ;; + arc*-*-linux*) fmt=elf bfd_gas=yes ;; arm-*-aout) fmt=aout ;; - arm-*-coff | thumb-*-coff) fmt=coff ;; - arm-*-rtems* | thumb-*-rtems*) fmt=elf ;; - arm-*-elf | thumb-*-elf) fmt=elf ;; + arm-*-coff) fmt=coff ;; + arm-*-phoenix*) fmt=elf ;; + arm-*-rtems*) fmt=elf ;; + arm-*-elf) fmt=elf ;; arm-*-eabi*) fmt=elf em=armeabi ;; arm-*-symbianelf*) fmt=elf em=symbian ;; arm-*-kaos*) fmt=elf ;; arm-*-conix*) fmt=elf ;; + arm-*-freebsd[89].* | armeb-*-freebsd[89].*) + fmt=elf em=freebsd ;; + arm-*-freebsd* | armeb-*-freebsd*) fmt=elf em=armfbsdeabi ;; + arm*-*-freebsd*) fmt=elf em=armfbsdvfp ;; arm-*-linux*aout*) fmt=aout em=linux ;; arm-*-linux-*eabi*) fmt=elf em=armlinuxeabi ;; arm-*-linux-*) fmt=elf em=linux ;; + arm-*-uclinux*eabi*) fmt=elf em=armlinuxeabi ;; arm-*-uclinux*) fmt=elf em=linux ;; - arm-*-netbsdelf*) fmt=elf em=nbsd ;; + arm-*-nacl*) fmt=elf em=nacl ;; + arm-*-netbsdelf*) fmt=elf em=nbsd ;; arm-*-*n*bsd*) fmt=aout em=nbsd ;; arm-*-nto*) fmt=elf ;; - arm-epoc-pe | thumb-epoc-pe) fmt=coff em=epoc-pe ;; - arm-wince-pe | arm-*-wince) fmt=coff em=wince-pe ;; - arm-*-pe | thumb-*-pe) fmt=coff em=pe ;; + arm-epoc-pe) fmt=coff em=epoc-pe ;; + arm-wince-pe | arm-*-wince | arm*-*-mingw32ce* | arm*-*-cegcc*) + fmt=coff em=wince-pe ;; + arm-*-pe) fmt=coff em=pe ;; arm-*-riscix*) fmt=aout em=riscix ;; avr-*-*) fmt=elf bfd_gas=yes ;; - bfin-*-*) fmt=elf bfd_gas=yes ;; + + bfin-*-linux-uclibc) fmt=fdpicelf em=linux ;; + bfin-*-uclinux*) fmt=elf em=linux ;; + bfin-*-rtems*) fmt=elf ;; bfin-*elf) fmt=elf ;; + cr16-*-elf*) fmt=elf ;; + cris-*-linux-* | crisv32-*-linux-*) fmt=multi em=linux ;; cris-*-* | crisv32-*-*) fmt=multi ;; - crx-*-elf*) fmt=elf ;; + crx-*-elf*) fmt=elf ;; d10v-*-*) fmt=elf ;; d30v-*-*) fmt=elf ;; dlx-*-*) fmt=elf ;; + epiphany-*-*) fmt=elf ;; + fr30-*-*) fmt=elf ;; frv-*-*linux*) fmt=elf em=linux;; frv-*-*) fmt=elf ;; + ft32-*-*) fmt=elf ;; + hppa-*-linux*) case ${cpu} in hppa*64*) fmt=elf em=hppalinux64 ;; @@ -157,6 +208,7 @@ case ${generic_target} in hppa-*-hiux*) fmt=som em=hppa ;; h8300-*-elf | h8300-*-rtems*) fmt=elf ;; + h8300-*-linux*) fmt=elf em=linux ;; i370-*-elf* | i370-*-linux*) fmt=elf ;; @@ -165,9 +217,14 @@ case ${generic_target} in i386-*-beospe*) fmt=coff em=pe ;; i386-*-beos*) fmt=elf ;; i386-*-coff) fmt=coff ;; - i386-*-elf) fmt=elf ;; + i386-*-elfiamcu) fmt=elf arch=iamcu ;; + i386-*-elf*) fmt=elf ;; i386-*-kaos*) fmt=elf ;; i386-*-bsd*) fmt=aout em=386bsd ;; + i386-*-nacl*) fmt=elf em=nacl + case ${cpu} in + x86_64*) arch=x86_64:32 ;; + esac ;; i386-*-netbsd0.8) fmt=aout em=386bsd ;; i386-*-netbsdpe*) fmt=coff em=pe ;; i386-*-netbsd*-gnu* | \ @@ -184,15 +241,18 @@ case ${generic_target} in i386-*-linux*aout*) fmt=aout em=linux ;; i386-*-linux*oldld) fmt=aout em=linux ;; i386-*-linux*coff*) fmt=coff em=linux ;; - i386-*-linux-*) fmt=elf em=linux ;; + i386-*-linux-*) fmt=elf em=linux + case ${cpu}-${os} in + x86_64*-linux-gnux32) arch=x86_64:32 ;; + esac ;; i386-*-lynxos*) fmt=elf em=lynx ;; i386-*-sysv[45]*) fmt=elf ;; - i386-*-solaris*) fmt=elf ;; + i386-*-solaris*) fmt=elf em=solaris ;; i386-*-freebsdaout*) fmt=aout em=386bsd ;; i386-*-freebsd[12].*) fmt=aout em=386bsd ;; i386-*-freebsd[12]) fmt=aout em=386bsd ;; - i386-*-freebsd* | i386-*-kfreebsd*-gnu) - fmt=elf em=freebsd ;; + i386-*-freebsd* \ + | i386-*-kfreebsd*-gnu) fmt=elf em=freebsd ;; i386-*-sysv*) fmt=coff ;; i386-*-sco3.2v5*coff) fmt=coff ;; i386-*-isc*) fmt=coff ;; @@ -207,19 +267,29 @@ case ${generic_target} in i386-*-msdos*) fmt=aout ;; i386-*-moss*) fmt=elf ;; i386-*-pe) fmt=coff em=pe ;; - i386-*-cygwin*) fmt=coff em=pe ;; + i386-*-cygwin*) + case ${cpu} in + x86_64*) fmt=coff em=pep ;; + i*) fmt=coff em=pe ;; + esac ;; i386-*-interix*) fmt=coff em=interix ;; - i386-*-mingw32*) fmt=coff em=pe ;; + i386-*-mingw*) + case ${cpu} in + x86_64*) fmt=coff em=pep ;; + i*) fmt=coff em=pe ;; + esac ;; i386-*-nto-qnx*) fmt=elf ;; i386-*-*nt*) fmt=coff em=pe ;; i386-*-chaos) fmt=elf ;; i386-*-rdos*) fmt=elf ;; + i386-*-darwin*) fmt=macho ;; i860-*-*) fmt=elf endian=little ;; i960-*-elf*) fmt=elf ;; ia64-*-elf*) fmt=elf ;; + ia64-*-*vms*) fmt=elf em=vms ;; ia64-*-aix*) fmt=elf em=ia64aix ;; ia64-*-linux-*) fmt=elf em=linux ;; ia64-*-hpux*) fmt=elf em=hpux ;; @@ -227,47 +297,48 @@ case ${generic_target} in ip2k-*-*) fmt=elf ;; - iq2000-*-elf) fmt=elf ;; + iq2000-*-elf) fmt=elf ;; + + lm32-*-*) fmt=elf ;; - m32c-*-elf) fmt=elf ;; + m32c-*-elf | m32c-*-rtems*) fmt=elf ;; - m32r-*-elf*) fmt=elf ;; + m32r-*-elf* | m32r-*-rtems*) fmt=elf ;; m32r-*-linux*) fmt=elf em=linux;; m68hc11-*-* | m6811-*-*) fmt=elf ;; m68hc12-*-* | m6812-*-*) fmt=elf ;; + m68k-*-aout) fmt=aout bfd_gas=yes ;; m68k-*-elf*) fmt=elf ;; m68k-*-sysv4*) fmt=elf em=svr4 ;; m68k-*-rtems*) fmt=elf ;; m68k-*-linux-*) fmt=elf em=linux ;; - m68k-*-uclinux*) fmt=elf ;; + m68k-*-uclinux*) fmt=elf em=uclinux ;; m68k-*-gnu*) fmt=elf ;; m68k-*-netbsdelf*) fmt=elf em=nbsd ;; m68k-*-netbsd*) fmt=aout em=nbsd bfd_gas=yes ;; m68k-*-openbsd*) fmt=aout em=nbsd bfd_gas=yes ;; m68k-*-psos*) fmt=elf em=psos;; - maxq-*-coff) fmt=coff bfd_gas=yes ;; + mep-*-elf) fmt=elf ;; + + metag-*-elf) fmt=elf ;; + metag-*-linux*) fmt=elf em=linux ;; mcore-*-elf) fmt=elf ;; mcore-*-pe) fmt=coff em=pe bfd_gas=yes ;; - # don't change em like *-*-bsd does - mips-sony-bsd*) fmt=ecoff ;; - mips-*-ultrix*) fmt=ecoff endian=little ;; - mips-*-osf*) fmt=ecoff endian=little ;; - mips-*-ecoff*) fmt=ecoff ;; - mips-*-pe*) fmt=coff endian=little em=pe ;; + microblaze-*-*) fmt=elf ;; + mips-*-irix6*) fmt=elf em=irix ;; mips-*-irix5*) fmt=elf em=irix ;; - mips-*-irix*) fmt=ecoff em=irix ;; - mips-*-lnews*) fmt=ecoff em=lnews ;; - mips-*-riscos*) fmt=ecoff ;; mips*-*-linux*) fmt=elf em=tmips ;; + mips*-*-freebsd* | mips*-*-kfreebsd*-gnu) + fmt=elf em=freebsd ;; mips-*-sysv4*MP* | mips-*-gnu*) fmt=elf em=tmips ;; - mips*-sde-elf*) fmt=elf em=tmips ;; - mips-*-sysv*) fmt=ecoff ;; + mips*-sde-elf* | mips*-mti-elf* | mips*-img-elf*) + fmt=elf em=tmips ;; mips-*-elf* | mips-*-rtems*) fmt=elf ;; mips-*-netbsd*) fmt=elf em=tmips ;; mips-*-openbsd*) fmt=elf em=tmips ;; @@ -280,32 +351,40 @@ case ${generic_target} in mn10300-*-linux*) fmt=elf em=linux ;; mn10300-*-*) fmt=elf ;; + moxie-*-uclinux) fmt=elf em=linux ;; + moxie-*-moxiebox*) fmt=elf endian=little ;; + moxie-*-*) fmt=elf ;; + mt-*-elf) fmt=elf bfd_gas=yes ;; msp430-*-*) fmt=elf ;; + nds32-*-elf*) fmt=elf ;; + nds32-*-linux*) fmt=elf em=linux ;; + + nios2-*-rtems*) fmt=elf ;; + nios2*-linux*) fmt=elf em=linux ;; + ns32k-pc532-mach*) fmt=aout em=pc532mach ;; ns32k-pc532-ux*) fmt=aout em=pc532mach ;; ns32k-pc532-lites*) fmt=aout em=nbsd532 ;; ns32k-*-*n*bsd*) fmt=aout em=nbsd532 ;; - openrisc-*-*) fmt=elf ;; - - or32-*-rtems*) fmt=elf ;; - or32-*-elf) fmt=elf ;; + or1k*-*-elf | or1k*-*-rtems*) fmt=elf endian=big ;; + or1k*-*-linux*) fmt=elf em=linux endian=big ;; pj*) fmt=elf ;; ppc-*-pe | ppc-*-cygwin*) fmt=coff em=pe ;; ppc-*-winnt*) fmt=coff em=pe ;; ppc-*-aix5.[01]) fmt=coff em=aix5 ;; - ppc-*-aix5.*) fmt=coff em=aix5 ;; - ppc-*-aix*) fmt=coff ;; + ppc-*-aix[5-9].*) fmt=coff em=aix5 ;; + ppc-*-aix*) fmt=coff em=aix ;; ppc-*-beos*) fmt=coff ;; ppc-*-*n*bsd* | ppc-*-elf*) fmt=elf ;; ppc-*-eabi* | ppc-*-sysv4*) fmt=elf ;; ppc-*-linux-*) fmt=elf em=linux ;; - ppc-*-solaris*) fmt=elf ;; + ppc-*-solaris*) fmt=elf em=solaris ;; ppc-*-rtems*) fmt=elf ;; ppc-*-macos*) fmt=coff em=macos ;; ppc-*-nto*) fmt=elf ;; @@ -315,6 +394,8 @@ case ${generic_target} in s390-*-linux-*) fmt=elf em=linux ;; s390-*-tpf*) fmt=elf ;; + score-*-elf) fmt=elf ;; + sh*-*-linux*) fmt=elf em=linux case ${cpu} in sh*eb) endian=big ;; @@ -322,9 +403,14 @@ case ${generic_target} in esac ;; sh5*-*-netbsd*) fmt=elf em=nbsd ;; sh64*-*-netbsd*) fmt=elf em=nbsd ;; - sh*-*-netbsdelf*) fmt=elf em=nbsd ;; + sh*-*-netbsdelf*) fmt=elf em=nbsd + case ${cpu} in + sh*l*) endian=little ;; + *) endian=big ;; + esac ;; sh*-*-symbianelf*) fmt=elf endian=little ;; sh-*-elf*) fmt=elf ;; + sh-*-uclinux* | sh[12]-*-uclinux*) fmt=elf em=uclinux ;; sh-*-coff*) fmt=coff ;; sh-*-nto*) fmt=elf ;; sh-*-pe*) fmt=coff em=pe bfd_gas=yes endian=little ;; @@ -334,6 +420,7 @@ case ${generic_target} in shle*-*-kaos*) fmt=elf ;; sh64-*-elf*) fmt=elf ;; + sparc64-*-rtems*) fmt=elf ;; sparc-*-rtems*) fmt=elf ;; sparc-*-sunos4*) fmt=aout em=sun3 ;; sparc-*-aout) fmt=aout em=sparcaout ;; @@ -343,7 +430,7 @@ case ${generic_target} in sparc-fujitsu-none) fmt=aout ;; sparc-*-elf) fmt=elf ;; sparc-*-sysv4*) fmt=elf ;; - sparc-*-solaris*) fmt=elf ;; + sparc-*-solaris*) fmt=elf em=solaris ;; sparc-*-netbsdelf*) fmt=elf em=nbsd ;; sparc-*-netbsd*) case ${cpu} in @@ -358,48 +445,55 @@ case ${generic_target} in esac ;; sparc-*-openbsd*) fmt=elf em=nbsd ;; + spu-*-elf) fmt=elf ;; + tic30-*-*aout*) fmt=aout bfd_gas=yes ;; tic30-*-*coff*) fmt=coff bfd_gas=yes ;; tic4x-*-* | c4x-*-*) fmt=coff bfd_gas=yes ;; tic54x-*-* | c54x*-*-*) fmt=coff bfd_gas=yes need_libm=yes;; + tic6x-*-*) fmt=elf ;; + + tilepro-*-* | tilegx*-*-*) fmt=elf ;; - v850-*-*) fmt=elf ;; - v850e-*-*) fmt=elf ;; - v850ea-*-*) fmt=elf ;; + v850*-*-*) fmt=elf ;; vax-*-netbsdelf*) fmt=elf em=nbsd ;; vax-*-linux-*) fmt=elf em=linux ;; - xscale-*-coff) fmt=coff ;; - xscale-*-elf) fmt=elf ;; + visium-*-elf) fmt=elf ;; xstormy16-*-*) fmt=elf ;; + + xgate-*-*) fmt=elf ;; - xtensa-*-*) fmt=elf ;; + xtensa*-*-*) fmt=elf ;; z80-*-coff) fmt=coff ;; z8k-*-coff | z8k-*-sim) fmt=coff ;; *-*-aout | *-*-scout) fmt=aout ;; + *-*-cloudabi*) fmt=elf ;; + *-*-dragonfly*) fmt=elf em=dragonfly ;; *-*-freebsd* | *-*-kfreebsd*-gnu) fmt=elf em=freebsd ;; *-*-bsd*) fmt=aout em=sun3 ;; *-*-generic) fmt=generic ;; *-*-xray | *-*-hms) fmt=coff ;; *-*-sim) fmt=coff ;; - *-*-elf | *-*-sysv4* | *-*-solaris*) fmt=elf ;; + *-*-elf | *-*-sysv4*) fmt=elf ;; + *-*-solaris*) fmt=elf em=solaris ;; *-*-aros*) fmt=elf em=linux ;; *-*-vxworks* | *-*-windiss) fmt=elf em=vxworks ;; *-*-netware) fmt=elf em=netware ;; esac case ${cpu_type} in - alpha | arm | i386 | ia64 | mips | ns32k | pdp11 | ppc | sparc | z80 | z8k) + aarch64 | alpha | arm | i386 | ia64 | microblaze | mips | ns32k | or1k | or1knd | pdp11 | ppc | sparc | z80 | z8k) bfd_gas=yes ;; esac case ${fmt} in - elf | ecoff | multi | som) + elf | ecoff | fdpicelf | multi | som) bfd_gas=yes ;; esac @@ -408,3 +502,12 @@ if test $bfd_gas != yes; then echo This target is no longer supported in gas exit 1 fi + +case ${cpu_type}-${fmt}-${os} in +i386-elf-linux*) + # Default to compress DWARF debug sections for Linux/x86. + if test ${ac_default_compressed_debug_sections} = unset; then + ac_default_compressed_debug_sections=yes + fi + ;; +esac