X-Git-Url: http://git.sourceforge.jp/view?a=blobdiff_plain;f=gcc%2Fconfig.host;h=df8ba8fa8011d8ff73aff29faed3f03ca11c5de3;hb=64169cc93a378981c2b03ac2805b621b2e05fc60;hp=4547864d9c113cd541c0ddd7ee6cd5ef52d827a5;hpb=852c5acb3054ca2f68a0fe929e51b1b916276546;p=pf3gnuchains%2Fgcc-fork.git diff --git a/gcc/config.host b/gcc/config.host index 4547864d9c1..df8ba8fa801 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, 2006 -# Free Software Foundation, Inc. +# Copyright 1997, 1998, 1999, 2000, 2001, 2002, 2003, 2006, 2007, 2008, 2009, +# 2010, 2011 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, 51 Franklin Street, Fifth Floor, Boston, MA -#02110-1301, 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 @@ -52,10 +51,15 @@ # # host_can_use_collect2 Set to yes normally; to no if the host cannot # link or otherwise use collect2 +# # use_long_long_for_widest_fast_int Set this to 'yes' if 'long long' # (or '__int64') is wider than 'long' but still # efficeiently supported by the host hardware. # Only affects compile speed. Default is 'no'. +# +# host_lto_plugin_soname Set this to the name to which the LTO linker +# plugin gets compiled on this host, if it is +# different from the default "liblto_plugin.so". # 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 @@ -71,6 +75,7 @@ host_extra_gcc_objs= out_host_hook_obj=host-default.o host_can_use_collect2=yes use_long_long_for_widest_fast_int=no +host_lto_plugin_soname=liblto_plugin.so # Unsupported hosts list. Generally, only include hosts known to fail here, # since we allow hosts not listed to be supported generically. @@ -95,46 +100,111 @@ case ${host} in esac case ${host} in + alpha*-*-linux* | alpha*-dec-osf*) + case ${target} in + alpha*-*-linux* | alpha*-dec-osf*) + host_extra_gcc_objs="driver-alpha.o" + host_xmake_file="${host_xmake_file} alpha/x-alpha" + ;; + esac + ;; i[34567]86-*-* \ | x86_64-*-* ) - host_extra_gcc_objs="driver-i386.o" - host_xmake_file="${host_xmake_file} i386/x-i386" + 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* | mips-sgi-irix*) + case ${target} in + mips*-*-linux* | mips-sgi-irix*) + 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* | *-*-freebsd*) + 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 + ;; + sparc*-*-solaris2*) + case ${target} in + sparc*-*-solaris2*) + host_extra_gcc_objs="driver-sparc.o" + host_xmake_file="${host_xmake_file} sparc/x-sparc" + ;; + esac + ;; + sparc*-*-linux*) + case ${target} in + sparc*-*-linux*) + host_extra_gcc_objs="driver-sparc.o" + host_xmake_file="${host_xmake_file} sparc/x-sparc" + ;; + esac ;; esac # Machine-specific settings. case ${host} in - alpha*-dec-*vms*) - host_xm_file=alpha/xm-vms.h - host_xmake_file="${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 + local_prefix=/gnu/local ;; - hppa1.1-*-pro*) - host_xmake_file="${host_xmake_file} pa/x-ada" + alpha*-dec-osf*) + out_host_hook_obj=host-osf.o + host_xmake_file="${host_xmake_file} alpha/x-osf" ;; - hppa1.1-*-osf*) - host_xmake_file="${host_xmake_file} pa/x-ada" - ;; - hppa1.1-*-rtems*) - host_xmake_file="${host_xmake_file} pa/x-ada" - ;; - hppa1.1-*-bsd*) - host_xmake_file="${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.0-*-hpux10* | hppa1.1-*-hpux10* | hppa2*-*-hpux10*) out_host_hook_obj=host-hpux.o - host_xmake_file="${host_xmake_file} pa/x-ada-hpux10 x-hpux" + host_xmake_file="${host_xmake_file} x-hpux" ;; hppa1.0-*-hpux11* | hppa1.1-*-hpux11* | hppa2*-*-hpux11* | \ hppa*64*-*-hpux11*) out_host_hook_obj=host-hpux.o - host_xmake_file="${host_xmake_file} pa/x-ada x-hpux" + host_xmake_file="${host_xmake_file} x-hpux" ;; hppa*-*-linux*) out_host_hook_obj=host-hpux.o @@ -143,7 +213,7 @@ case ${host} in i370-*-opened* | i370-*-mvs* ) # IBM 360/370/390 Architecture host_xm_defines='FATAL_EXIT_CODE=12' ;; - i[34567]86-*-solaris2*) + i[34567]86-*-solaris2* | x86_64-*-solaris2.1[0-9]*) out_host_hook_obj=host-solaris.o host_xmake_file="${host_xmake_file} x-solaris" ;; @@ -157,30 +227,45 @@ case ${host} in ;; esac ;; - i[34567]86-*-pe | i[34567]86-*-cygwin*) + i[34567]86-*-cygwin*) host_xm_file=i386/xm-cygwin.h out_host_hook_obj=host-cygwin.o host_xmake_file="${host_xmake_file} i386/x-cygwin" host_exeext=.exe + host_lto_plugin_soname=cyglto_plugin-0.dll ;; i[34567]86-*-mingw32*) host_xm_file=i386/xm-mingw32.h host_xmake_file="${host_xmake_file} i386/x-mingw32" host_exeext=.exe out_host_hook_obj=host-mingw32.o + host_lto_plugin_soname=liblto_plugin-0.dll + ;; + x86_64-*-mingw*) + use_long_long_for_widest_fast_int=yes + host_xm_file=i386/xm-mingw32.h + host_xmake_file="${host_xmake_file} i386/x-mingw32" + host_exeext=.exe + out_host_hook_obj=host-mingw32.o + host_lto_plugin_soname=liblto_plugin-0.dll ;; i[34567]86-*-uwin*) echo "*** UWIN may not be used as a host platform because" echo "*** linking with posix.dll is not allowed by the GNU GPL." exit 1 ;; - i[34567]86-*-interix3*) - host_xmake_file="${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" ;; + 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 ;; @@ -188,6 +273,13 @@ 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="${host_xmake_file} x-solaris"