X-Git-Url: http://git.sourceforge.jp/view?p=pf3gnuchains%2Fgcc-fork.git;a=blobdiff_plain;f=gcc%2Fconfig.host;h=a8ec32455aaf83e7654a6ef2949d3bab9231cb84;hp=dbbf5b129e046230787ec11cda9e4c2fcc3bc71b;hb=3c035d934f733db1bede7974471343299113ac51;hpb=388807abce552526b604292dbf849b05f600255b diff --git a/gcc/config.host b/gcc/config.host index dbbf5b129e0..a8ec32455aa 100644 --- a/gcc/config.host +++ b/gcc/config.host @@ -1,12 +1,12 @@ # GCC host-specific configuration file. -# Copyright 1997, 1998, 1999, 2000, 2001, 2002, 2003 +# Copyright 1997, 1998, 1999, 2000, 2001, 2002, 2003, 2006, 2007, 2008, 2009 # 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 +#Software Foundation; either version 3, or (at your option) any later #version. #GCC is distributed in the hope that it will be useful, but WITHOUT @@ -15,9 +15,8 @@ #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. +#along with GCC; see the file COPYING3. If not see +#. # This is the GCC host-specific configuration file # where a configuration type is mapped to different system-specific @@ -86,62 +85,111 @@ case ${host} in esac # Common parts for widely ported systems. -case ${target} in +case ${host} in *-darwin*) # Generic darwin host support. out_host_hook_obj=host-darwin.o - host_xmake_file=x-darwin + host_xmake_file="${host_xmake_file} x-darwin" + ;; +esac + +case ${host} in + alpha*-*-linux*) + case ${target} in + alpha*-*-linux*) + host_extra_gcc_objs="driver-alpha.o" + host_xmake_file="${host_xmake_file} alpha/x-alpha" + ;; + esac + ;; + i[34567]86-*-* \ + | x86_64-*-* ) + case ${target} in + i[34567]86-*-* \ + | x86_64-*-* ) + host_extra_gcc_objs="driver-i386.o" + host_xmake_file="${host_xmake_file} i386/x-i386" + ;; + esac + ;; + mips*-*-linux*) + case ${target} in + mips*-*-linux*) + host_extra_gcc_objs="driver-native.o" + host_xmake_file="${host_xmake_file} mips/x-native" + ;; + esac + ;; + rs6000-*-* \ + | powerpc*-*-* ) + case ${target} in + rs6000-*-* \ + | powerpc*-*-* ) + host_extra_gcc_objs="driver-rs6000.o" + host_xmake_file="${host_xmake_file} rs6000/x-rs6000" + ;; + esac + case ${host} in + *-*-linux* ) + if test "${GCC}:${ac_cv_sizeof_long}" = yes:4; then + # On powerpc*-*-linux* use -Wl,--relax to link cc1, + # if ld is new enough, otherwise force -O1 in CFLAGS. + host_ppc_relax_xmake_file= + host_ld_ver=`${CC} -Wl,--version 2>/dev/null | sed 1q` + if echo "$host_ld_ver" | grep GNU > /dev/null; then + host_ld_date=`echo $host_ld_ver \ + | sed -n 's,^.*\([2-9][0-9][0-9][0-9]\)[-]*\([01][0-9]\)[-]*\([0-3][0-9]\).*$,\1\2\3,p'` + if test 0"$host_ld_date" -gt 20080806; then + host_ppc_relax_xmake_file=rs6000/x-linux-relax + fi + fi + if test -z "${host_ppc_relax_xmake_file}"; then + host_ppc_relax_xmake_file=x-cflags-O1 + fi + host_xmake_file="${host_xmake_file} ${host_ppc_relax_xmake_file}" + fi + ;; + esac ;; esac # Machine-specific settings. case ${host} in - alpha*-dec-*vms*) - host_xm_file=alpha/xm-vms.h - host_xmake_file=alpha/x-vms + alpha64-dec-*vms*) + host_xm_file="vms/xm-vms.h vms/xm-vms64.h" + host_xmake_file=vms/x-vms host_exeext=.exe host_can_use_collect2=no - # This removes the cpu type and manufacturer components and - # replaces "." with "_" in the operating system version. - target_noncanonical=`echo $host | sed 's/.*-.*-\(.*\)$/\1/' | sed 's/\./_/g'` prefix=/gnu - local_prefix=/gnu - ;; - hppa1.1-*-pro*) - host_xmake_file="pa/x-ada" - ;; - hppa1.1-*-osf*) - host_xmake_file="pa/x-ada" + local_prefix=/gnu/local ;; - hppa1.1-*-rtems*) - host_xmake_file="pa/x-ada" + alpha*-dec-*vms*) + host_xm_file="vms/xm-vms.h" + host_xmake_file=vms/x-vms + host_exeext=.exe + host_can_use_collect2=no + prefix=/gnu + local_prefix=/gnu/local ;; - hppa1.1-*-bsd*) - host_xmake_file="pa/x-ada" + hppa1.0-*-hpux10* | hppa1.1-*-hpux10* | hppa2*-*-hpux10*) + out_host_hook_obj=host-hpux.o + host_xmake_file="${host_xmake_file} x-hpux" ;; - hppa1.0-*-hpux10* | hppa1.1-*-hpux10* | hppa2*-*-hpux10* | \ hppa1.0-*-hpux11* | hppa1.1-*-hpux11* | hppa2*-*-hpux11* | \ hppa*64*-*-hpux11*) - out_host_hook_obj=pa-host.o - host_xmake_file=pa/x-hpux + out_host_hook_obj=host-hpux.o + host_xmake_file="${host_xmake_file} x-hpux" ;; hppa*-*-linux*) - out_host_hook_obj=pa-host.o - host_xmake_file=pa/x-linux + out_host_hook_obj=host-hpux.o + host_xmake_file="${host_xmake_file} x-hpux" ;; i370-*-opened* | i370-*-mvs* ) # IBM 360/370/390 Architecture host_xm_defines='FATAL_EXIT_CODE=12' ;; - i[34567]86-sequent-ptx4*) - host_xm_defines="SMALL_ARG_MAX" - ;; i[34567]86-*-solaris2*) - host_xm_defines="SMALL_ARG_MAX" out_host_hook_obj=host-solaris.o - host_xmake_file=x-solaris - ;; - i[34567]86-*-sysv4*) # Intel 80386's running System V Release 4 - host_xm_defines="SMALL_ARG_MAX" + host_xmake_file="${host_xmake_file} x-solaris" ;; i[34567]86-pc-msdosdjgpp*) host_xm_file=i386/xm-djgpp.h @@ -156,12 +204,12 @@ case ${host} in i[34567]86-*-pe | i[34567]86-*-cygwin*) host_xm_file=i386/xm-cygwin.h out_host_hook_obj=host-cygwin.o - host_xmake_file=i386/x-cygwin + host_xmake_file="${host_xmake_file} i386/x-cygwin" host_exeext=.exe ;; - i[34567]86-*-mingw32*) + i[34567]86-*-mingw32* | x86_64-*-mingw*) host_xm_file=i386/xm-mingw32.h - host_xmake_file=i386/x-mingw32 + host_xmake_file="${host_xmake_file} i386/x-mingw32" host_exeext=.exe out_host_hook_obj=host-mingw32.o ;; @@ -170,15 +218,17 @@ case ${host} in echo "*** linking with posix.dll is not allowed by the GNU GPL." exit 1 ;; - i[34567]86-*-interix3*) - host_xmake_file="x-interix" - ;; - i[34567]86-*-darwin*) + i[34567]86-*-darwin* | x86_64-*-darwin*) out_host_hook_obj="${out_host_hook_obj} host-i386-darwin.o" host_xmake_file="${host_xmake_file} i386/x-darwin" ;; - i860-*-sysv4*) - host_xmake_file=i860/x-sysv4 + ia64-hp-*vms*) + host_xm_file="vms/xm-vms.h vms/xm-vms64.h" + host_xmake_file=vms/x-vms + host_exeext=.exe + host_can_use_collect2=no + prefix=/gnu + local_prefix=/gnu/local ;; powerpc-*-beos*) host_can_use_collect2=no @@ -187,15 +237,24 @@ case ${host} in out_host_hook_obj="${out_host_hook_obj} host-ppc-darwin.o" host_xmake_file="${host_xmake_file} rs6000/x-darwin" ;; + powerpc64-*-darwin*) + out_host_hook_obj="${out_host_hook_obj} host-ppc64-darwin.o" + host_xmake_file="${host_xmake_file} rs6000/x-darwin64" + ;; + rs6000-ibm-aix* | powerpc-ibm-aix*) + host_xmake_file="${host_xmake_file} rs6000/x-aix" + ;; *-*-solaris2*) out_host_hook_obj=host-solaris.o - host_xmake_file=x-solaris + host_xmake_file="${host_xmake_file} x-solaris" ;; *-*-linux*) out_host_hook_obj=host-linux.o - host_xmake_file=x-linux + host_xmake_file="${host_xmake_file} x-linux" ;; ia64-*-hpux*) use_long_long_for_widest_fast_int=yes + out_host_hook_obj=host-hpux.o + host_xmake_file="${host_xmake_file} x-hpux" ;; esac