# GCC host-specific configuration file. # Copyright 1997, 1998, 1999, 2000, 2001, 2002, 2003 # Free Software Foundation, Inc. #This file is part of GCC. #GCC 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 2, or (at your option) any later #version. #GCC 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 GCC; see the file COPYING. If not, write to the Free #Software Foundation, 59 Temple Place - Suite 330, Boston, MA #02111-1307, USA. # This is the GCC host-specific configuration file # where a configuration type is mapped to different system-specific # definitions and files. This is invoked by the autoconf-generated # configure script. Putting it in a separate shell file lets us skip # running autoconf when modifying host-specific information. # This file switches on the shell variable ${host}. As much of this as # is reasonable should be replaced with autoconf tests in the future. # This file sets the following shell variables for use by the # autoconf-generated configure script: # # host_xm_file List of files to include when compiling for the # host machine. # # host_xm_defines List of macros to define when compiling for the # host machine. # # host_xmake_file List of host-specific makefile-fragments. # # host_exeext Set to the suffix, if the host machine requires # executables to have a file name suffix. # # host_extra_objs List of extra host-dependent objects that should # be linked into the compiler proper. # # host_extra_gcc_objs List of extra host-dependent objects that should # be linked into the gcc driver. # # out_host_hook_obj An object file that provides the host hooks. # When setting any of these variables, check to see if a corresponding # variable is present in config.build; if so, you will likely want to # set it in both places. # Default settings. host_xm_file= host_xm_defines= host_xmake_file= host_exeext= host_extra_objs= host_extra_gcc_objs= out_host_hook_obj=host-default.o # Obsolete configurations. case ${host} in dummy) if test "x$enable_obsolete" != xyes; then echo "*** Configuration for host ${host} is obsolete." >&2 echo "*** Specify --enable-obsolete to build it anyway." >&2 echo "*** Support will be REMOVED in the next major release of GCC," >&2 echo "*** unless a maintainer comes forward." >&2 exit 1 fi ;; esac # Unsupported hosts list. Do not put an entry in this list unless # it would otherwise be caught by a more permissive pattern. The list # should be in alphabetical order. case ${host} in alpha*-*-linux*libc1* \ | i[34567]86-sequent-sysv \ | i[34567]86-sequent-sysv[123]* \ | i[34567]86-go32-* \ | i[34567]86-*-go32* \ | m68k-*-linux*aout* \ | m68k-*-linux*libc1* \ | mips64orion*-*-rtems* \ | powerpc-*-linux*libc1* \ | sparc-*-linux*aout* \ | sparc-*-linux*libc1* \ | sparc-hal-solaris2* \ | thumb-*-* \ | *-*-linux*coff* \ | *-*-linux*oldld* \ | *-*-rtemsaout* \ | *-*-rtemscoff* \ ) echo "*** Configuration for host ${host} not supported" 1>&2 exit 1 ;; esac # Machine-specific settings. case ${host} in alpha*-*-unicosmk*) ;; alpha*-*-linux*) ;; alpha*-*-gnu*) ;; alpha*-*-freebsd*) ;; alpha*-*-netbsd*) ;; alpha*-*-openbsd*) ;; alpha*-dec-osf[45]*) ;; alpha*-dec-*vms*) host_xm_file=alpha/xm-vms.h host_xmake_file=alpha/x-vms host_exeext=.exe # This removes the cpu type and manufacturer components and # replaces "." with "_" in the operating system version. target_alias=`echo $host | sed 's/.*-.*-\(.*\)$/\1/' | sed 's/\./_/g'` prefix=/gnu local_prefix=/gnu ;; arc-*-elf*) ;; arm-*-coff* | armel-*-coff*) ;; arm-semi-aof | armel-semi-aof) ;; arm*-*-freebsd*|strongarm*-*-freebsd*) ;; arm*-*-netbsdelf*) ;; arm*-*-netbsd*) ;; arm*-*-linux*) # ARM GNU/Linux with ELF ;; arm*-*-uclinux*) # ARM ucLinux ;; arm*-*-ecos-elf) ;; arm*-*-rtems*) ;; arm*-*-elf | ep9312-*-elf) ;; arm*-wince-pe*) ;; arm-*-pe*) ;; arm*-*-kaos*) ;; avr-*-*) ;; c4x-*-rtems* | tic4x-*-rtems*) ;; c4x-* | tic4x-*) ;; cris-*-aout) ;; cris-*-elf | cris-*-none) ;; cris-*-linux*) ;; d30v-*) ;; dsp16xx-*) ;; fr30-*-elf) ;; frv-*-elf) ;; h8300-*-rtems*) ;; h8300-*-elf*) ;; h8300-*-*) ;; hppa*64*-*-linux* | parisc*64*-*-linux*) ;; hppa*-*-linux* | parisc*-*-linux*) ;; # port not yet contributed. # hppa*-*-openbsd*) # ;; hppa1.1-*-pro*) host_xmake_file="pa/x-ada" ;; hppa1.1-*-osf*) host_xmake_file="pa/x-ada" ;; hppa1.1-*-rtems*) host_xmake_file="pa/x-ada" ;; hppa1.1-*-bsd*) host_xmake_file="pa/x-ada" ;; hppa1.1-*-hpux10* | hppa2*-*-hpux10*) host_xmake_file="pa/x-ada" ;; hppa1.0-*-hpux10*) host_xmake_file="pa/x-ada" ;; hppa*64*-*-hpux11*) host_xmake_file="pa/x-ada" ;; hppa1.1-*-hpux11* | hppa2*-*-hpux11*) host_xmake_file="pa/x-ada" ;; hppa1.0-*-hpux11*) host_xmake_file="pa/x-ada" ;; i370-*-opened*) # IBM 360/370/390 Architecture host_xm_defines='FATAL_EXIT_CODE=12' ;; i370-*-mvs*) host_xm_defines='FATAL_EXIT_CODE=12' ;; i370-*-linux*) ;; i[34567]86-*-darwin*) ;; i[34567]86-*-elf*) ;; i[34567]86-ncr-sysv4*) # NCR 3000 - ix86 running system V.4 host_xm_defines="SMALL_ARG_MAX" ;; i[34567]86-*-netware) # Intel 80386's running netware ;; i[34567]86-sequent-ptx4* | i[34567]86-sequent-sysv4*) host_xm_defines="SMALL_ARG_MAX" ;; i[34567]86-*-aout*) ;; i[34567]86-*-beoself* | i[34567]86-*-beos*) ;; i[34567]86-*-freebsd2 | i[34567]86-*-freebsd2.* | i[34567]86-*-freebsd*aout*) ;; i[34567]86-*-freebsd*) ;; x86_64-*-freebsd*) ;; i[34567]86-*-netbsdelf*) ;; i[34567]86-*-netbsd*) ;; x86_64-*-netbsd*) ;; i[34567]86-*-openbsd*) ;; i[34567]86-*-coff*) ;; i[34567]86-*-linux*aout*) # Intel 80386's running GNU/Linux with a.out format ;; i[34567]86-*-linux*libc1) # Intel 80386's running GNU/Linux # with ELF format using the # GNU/Linux C library 5 ;; i[34567]86-*-linux*) # Intel 80386's running GNU/Linux # with ELF format using glibc 2 # aka GNU/Linux C library 6 ;; x86_64-*-linux*) ;; i[34567]86-*-gnu*) ;; i[34567]86-pc-msdosdjgpp*) host_xm_file=i386/xm-djgpp.h host_exeext=.exe # Shorten $target_alias for 8.3 filename conventions. case ${target} in *pc-msdosdjgpp*) target_alias=djgpp ;; esac ;; i[34567]86-moss-msdos* | i[34567]86-*-moss*) ;; i[34567]86-*-lynxos*) ;; i[34567]86-*-mach*) ;; i[34567]86-*-nto-qnx*) ;; i[34567]86-*-rtems*) ;; i[34567]86-*-sco3.2v5*) # 80386 running SCO Open Server 5 ;; i[34567]86-*-solaris2*) host_xm_defines="SMALL_ARG_MAX" ;; i[34567]86-*-sysv5*) # Intel x86 on System V Release 5 ;; i[34567]86-*-sysv4*) # Intel 80386's running System V Release 4 host_xm_defines="SMALL_ARG_MAX" ;; i[34567]86-*-udk*) # Intel x86 on SCO UW/OSR5 Dev Kit ;; i[34567]86-*-sysv*) # Intel 80386's running System V ;; i386-*-vsta) # Intel 80386's running VSTa kernel host_xm_file="i386/xm-vsta.h" ;; i[34567]86-*-pe | i[34567]86-*-cygwin*) host_xm_file=i386/xm-cygwin.h host_exeext=.exe ;; i[34567]86-*-mingw32*) host_xm_file=i386/xm-mingw32.h host_xmake_file=i386/x-mingw32 host_exeext=.exe ;; i[34567]86-*-uwin*) host_exeext=.exe ;; i[34567]86-*-interix3*) host_xmake_file="x-interix" ;; i[34567]86-*-interix*) ;; i[34567]86-*-kaos*) ;; i860-*-sysv4*) host_xmake_file=i860/x-sysv4 ;; i960-*-coff*) ;; i960-*-rtems) ;; i960-*-*) # Default i960 environment. ;; ia64*-*-elf*) ;; ia64*-*-freebsd*) ;; ia64*-*-linux*) ;; ia64*-*-hpux*) ;; ip2k-*-elf) ;; iq2000*-*-elf*) ;; m32r-*-elf*) ;; # m68hc11 and m68hc12 share the same machine description. m68hc11-*-*|m6811-*-*) ;; m68hc12-*-*|m6812-*-*) ;; m68000-hp-hpux*) # HP 9000 series 300 ;; m68k-hp-hpux7*) # HP 9000 series 300 running HPUX version 7. ;; m68k-hp-hpux*) # HP 9000 series 300 ;; m68k-*-aout*) ;; m68k-*-coff*) ;; m68020-*-elf* | m68k-*-elf*) ;; m68010-*-netbsdelf* | m68k*-*-netbsdelf*) ;; m68k*-*-netbsd*) ;; m68k*-*-openbsd*) ;; m68k-*-sysv4*) # Motorola m68k's running system V r4 ;; m68k-*-linux*) # Motorola m68k's running GNU/Linux # with ELF format using glibc 2 # aka the GNU/Linux C library 6. ;; m68k-*-rtems*) ;; mcore-*-elf) ;; mcore-*-pe*) ;; mips-sgi-irix6*o32) # SGI System V.4., IRIX 6, O32 ABI host_xm_file=mips/xm-iris5.h ;; mips-sgi-irix6*) # SGI System V.4., IRIX 6 ;; mips-sgi-irix5cross64) # Irix5 host, Irix 6 target, cross64 host_xm_file=mips/xm-iris5.h ;; mips-sgi-irix5*) # SGI System V.4., IRIX 5 host_xm_file=mips/xm-iris5.h ;; mips*-*-netbsd*) # NetBSD/mips, either endian. ;; mips64*-*-linux*) ;; mips*-*-linux*) # Linux MIPS, either endian. ;; mips*-*-openbsd*) ;; mipsisa32-*-elf* | mipsisa32el-*-elf*) ;; mipsisa32r2-*-elf* | mipsisa32r2el-*-elf*) ;; mipsisa64-*-elf* | mipsisa64el-*-elf*) ;; mipsisa64sr71k-*-elf*) ;; mipsisa64sb1-*-elf* | mipsisa64sb1el-*-elf*) ;; mips-*-elf* | mipsel-*-elf*) ;; mips64-*-elf* | mips64el-*-elf*) ;; mips64vr-*-elf* | mips64vrel-*-elf*) ;; mips64orion-*-elf* | mips64orionel-*-elf*) ;; mips*-*-rtems*) ;; mipstx39-*-elf* | mipstx39el-*-elf*) ;; mmix-knuth-mmixware) ;; mn10300-*-*) ;; ns32k-*-netbsdelf*) echo "GCC does not yet support the ${host} host"; exit 1 ;; ns32k-*-netbsd*) ;; pdp11-*-bsd) ;; pdp11-*-*) ;; avr-*-*) ;; # port not yet contributed # powerpc-*-openbsd*) # ;; powerpc64-*-linux*) ;; powerpc64-*-gnu*) ;; powerpc-*-beos*) ;; powerpc-*-darwin*) # powerpc-darwin host support. out_host_hook_obj=host-darwin.o host_xmake_file=rs6000/x-darwin ;; powerpc*-*-freebsd*) ;; powerpc-*-netbsd*) ;; powerpc-*-chorusos*) ;; powerpc-*-eabispe*) ;; powerpc-*-eabisimaltivec*) ;; powerpc-*-eabisim*) ;; powerpc-*-elf*) ;; powerpc-*-eabialtivec*) ;; powerpc-*-eabi*) ;; powerpc-*-rtems*) ;; powerpc-*-linux*altivec*) ;; powerpc-*-linux*spe*) ;; powerpc-*-linux*) ;; powerpc-*-gnu-gnualtivec*) ;; powerpc-*-gnu*) ;; powerpc-wrs-vxworks*) ;; powerpc-wrs-windiss*) ;; powerpcle-*-sysv*) ;; powerpcle-*-elf*) ;; powerpcle-*-eabisim*) ;; powerpcle-*-eabi*) ;; powerpc-*-kaos*) ;; powerpcle-*-kaos*) ;; rs6000-ibm-aix4.[12]* | powerpc-ibm-aix4.[12]*) ;; rs6000-ibm-aix4.[3456789]* | powerpc-ibm-aix4.[3456789]*) ;; rs6000-ibm-aix5.1.* | powerpc-ibm-aix5.1.*) ;; rs6000-ibm-aix[56789].* | powerpc-ibm-aix[56789].*) ;; rs6000-*-lynxos*) ;; s390-*-linux*) ;; s390x-*-linux*) ;; sh-*-elf* | sh[2346l]*-*-elf* | sh*-*-kaos*) ;; sh-*-rtemself*) ;; sh-*-rtems*) ;; sh-*-linux* | sh[2346lbe]*-*-linux*) ;; sh-*-netbsdelf* | shl*-*-netbsdelf* | sh5-*-netbsd* | sh5l*-*-netbsd* | \ sh64-*-netbsd* | sh64l*-*-netbsd*) ;; sh-*-*) ;; sparc-tti-*) ;; sparc-*-netbsdelf*) ;; sparc-*-openbsd*) ;; sparc64-*-openbsd*) ;; sparc-*-elf*) ;; sparc-*-linux*) # SPARC's running GNU/Linux, libc6 ;; sparc-*-rtems*) ;; sparc64-*-solaris2* | sparcv9-*-solaris2*) ;; sparc-*-solaris2*) ;; sparc-*-sysv4*) ;; sparclite-*-coff*) ;; sparclite-*-elf*) ;; sparc86x-*-elf*) ;; sparc64-*-aout*) ;; sparc64-*-elf*) ;; sparc64-*-freebsd*|ultrasparc-*-freebsd*) ;; sparc64-*-linux*) # 64-bit SPARC's running GNU/Linux ;; sparc64-*-netbsd*) ;; strongarm-*-elf*) ;; strongarm-*-pe) ;; strongarm-*-kaos*) ;; v850e-*-*) ;; v850-*-*) ;; vax-*-bsd*) # VAXen running BSD ;; vax-*-sysv*) # VAXen running System V ;; vax-*-netbsdelf*) ;; vax-*-netbsd*) ;; vax-*-openbsd*) ;; vax-*-ultrix*) # VAXen running ultrix ;; vax-*-vms*) # VAXen running VMS echo "Host ${host} no longer supported" 1>&2 exit 1 ;; vax-*-*) # VAX default entry ;; xscale-*-elf) ;; xscale-*-coff) ;; xstormy16-*-elf) ;; xtensa-*-elf*) ;; xtensa-*-linux*) ;; am33_2.0-*-linux*) ;; *) echo "*** Configuration ${host} not supported" 1>&2 exit 1 ;; esac