patches/gcc/4.3.2/150-sparc64-bsd.patch
author "Yann E. MORIN" <yann.morin.1998@anciens.enib.fr>
Sun Jul 24 19:35:24 2011 +0200 (2011-07-24)
changeset 2900 369e2fbe9010
parent 747 d3e603e7c17c
permissions -rw-r--r--
cc-gcc: the frontends are responsible for mkdir/chdir

The build dir are created depending on the host (host for that specific
backend, not host for the toolchain). Only the frontends know what host
this is, so only the frontends can create non-ambiguous dirs.

Signed-off-by: "Yann E. MORIN" <yann.morin.1998@anciens.enib.fr>
     1 Original patch from gentoo: gentoo/src/patchsets/gcc/4.3.1/gentoo/14_all_gcc-sparc64-bsd.patch
     2 diff -durN gcc-4.3.1.orig/gcc/config/sparc/freebsd.h gcc-4.3.1/gcc/config/sparc/freebsd.h
     3 --- gcc-4.3.1.orig/gcc/config/sparc/freebsd.h	2007-08-02 12:49:31.000000000 +0200
     4 +++ gcc-4.3.1/gcc/config/sparc/freebsd.h	2008-06-10 14:57:54.000000000 +0200
     5 @@ -25,9 +25,22 @@
     6  /* FreeBSD needs the platform name (sparc64) defined.
     7     Emacs needs to know if the arch is 64 or 32-bits.  */
     8  
     9 -#undef  CPP_CPU64_DEFAULT_SPEC
    10 -#define CPP_CPU64_DEFAULT_SPEC \
    11 -  "-D__sparc64__ -D__sparc_v9__ -D__sparcv9 -D__arch64__"
    12 +#undef  FBSD_TARGET_CPU_CPP_BUILTINS
    13 +#define FBSD_TARGET_CPU_CPP_BUILTINS()                  \
    14 +  do                                                    \
    15 +    {                                                   \
    16 +      if (TARGET_ARCH64)                                \
    17 +        {                                               \
    18 +          builtin_define ("__sparc64__");               \
    19 +          builtin_define ("__sparc_v9__");              \
    20 +          builtin_define ("__sparcv9");                 \
    21 +        }                                               \
    22 +      else                                              \
    23 +        builtin_define ("__sparc");                     \
    24 +      builtin_define ("__sparc__");                     \
    25 +    }                                                   \
    26 +  while (0)
    27 +
    28  
    29  #define LINK_SPEC "%(link_arch)						\
    30    %{!mno-relax:%{!r:-relax}}						\