summaryrefslogtreecommitdiff
path: root/gcc/config.host
diff options
context:
space:
mode:
authorneroden <neroden@138bc75d-0d04-0410-961f-82ee72b054a4>2003-09-01 17:30:41 +0000
committerneroden <neroden@138bc75d-0d04-0410-961f-82ee72b054a4>2003-09-01 17:30:41 +0000
commit973f8bf342894194856dde6135b10688cd37267c (patch)
tree0712f7e203543da35736b3249fc43a0457611226 /gcc/config.host
parent734c48bb1a0a3e309ad570e890f15cf2b6e05325 (diff)
downloadgcc-973f8bf342894194856dde6135b10688cd37267c.tar.gz
* config.host: New file.
* config.gcc: Remove some host-specific stuff and some logic needed only for repeated invocation. * configure.in: Use config.host. * configure: Regenerate. git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@70975 138bc75d-0d04-0410-961f-82ee72b054a4
Diffstat (limited to 'gcc/config.host')
-rw-r--r--gcc/config.host611
1 files changed, 611 insertions, 0 deletions
diff --git a/gcc/config.host b/gcc/config.host
new file mode 100644
index 00000000000..6928dafc310
--- /dev/null
+++ b/gcc/config.host
@@ -0,0 +1,611 @@
+# 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