yann@552: Original patch from gentoo: gentoo/src/patchsets/gcc/4.3.0/gentoo/14_all_gcc-sparc64-bsd.patch yann@552: diff -durN gcc-4.3.0.orig/gcc/config/sparc/freebsd.h gcc-4.3.0/gcc/config/sparc/freebsd.h yann@552: --- gcc-4.3.0.orig/gcc/config/sparc/freebsd.h 2007-08-02 12:49:31.000000000 +0200 yann@552: +++ gcc-4.3.0/gcc/config/sparc/freebsd.h 2008-06-10 14:44:26.000000000 +0200 yann@552: @@ -25,9 +25,22 @@ yann@552: /* FreeBSD needs the platform name (sparc64) defined. yann@552: Emacs needs to know if the arch is 64 or 32-bits. */ yann@552: yann@552: -#undef CPP_CPU64_DEFAULT_SPEC yann@552: -#define CPP_CPU64_DEFAULT_SPEC \ yann@552: - "-D__sparc64__ -D__sparc_v9__ -D__sparcv9 -D__arch64__" yann@552: +#undef FBSD_TARGET_CPU_CPP_BUILTINS yann@552: +#define FBSD_TARGET_CPU_CPP_BUILTINS() \ yann@552: + do \ yann@552: + { \ yann@552: + if (TARGET_ARCH64) \ yann@552: + { \ yann@552: + builtin_define ("__sparc64__"); \ yann@552: + builtin_define ("__sparc_v9__"); \ yann@552: + builtin_define ("__sparcv9"); \ yann@552: + } \ yann@552: + else \ yann@552: + builtin_define ("__sparc"); \ yann@552: + builtin_define ("__sparc__"); \ yann@552: + } \ yann@552: + while (0) yann@552: + yann@552: yann@552: #define LINK_SPEC "%(link_arch) \ yann@552: %{!mno-relax:%{!r:-relax}} \