patches/gcc/4.3.1/150-sparc64-bsd.patch
author "Yann E. MORIN" <yann.morin.1998@anciens.enib.fr>
Thu Aug 07 14:05:47 2008 +0000 (2008-08-07)
changeset 766 717efd8b78b4
parent 746 b150d6f590fc
permissions -rw-r--r--
Update all samples to the latest set of options.
Update some samples to use newer features.
Add patches for the uClibc-20080801 snapshot to be able to build with gcc-4.3.
Add a patch against glibc-2.7 to allow building PPC with latest kernel headers.
Add a patch to gcc to use an alternate unwinding when built against uClibc (after a private explanation/request by Daniel Egger <daniel@eggers-club.de>)

/trunk/patches/glibc/2.7/230-powerpc-private_futex.patch | 15 15 0 0 +
/trunk/patches/uClibc/20080801/300-fix-asm.patch | 175 175 0 0 +++++++++
/trunk/patches/uClibc/20080801/100-ifaddrs.patch | 190 190 0 0 +++++++++
/trunk/patches/uClibc/20080801/200-mips-typeof.patch | 112 112 0 0 ++++++
/trunk/patches/gcc/4.3.1/330-unwind-for-uClibc.patch | 25 25 0 0 +
/trunk/samples/x86_64-unknown-linux-gnu/crosstool.config | 17 10 7 0 +
/trunk/samples/armeb-unknown-linux-uclibc/crosstool.config | 7 5 2 0 +
/trunk/samples/arm-unknown-linux-gnueabi/crosstool.config | 7 5 2 0 +
/trunk/samples/ia64-unknown-linux-gnu/crosstool.config | 14 11 3 0 +
/trunk/samples/x86_64-unknown-linux-uclibc/uClibc-20080801.config | 232 232 0 0 ++++++++++++
/trunk/samples/x86_64-unknown-linux-uclibc/crosstool.config | 34 21 13 0 +-
/trunk/samples/i686-nptl-linux-gnu/crosstool.config | 10 7 3 0 +
/trunk/samples/powerpc-unknown-linux-gnu/crosstool.config | 12 9 3 0 +
/trunk/samples/mips-unknown-linux-uclibc/uClibc-20080801.config | 249 249 0 0 ++++++++++++
/trunk/samples/mips-unknown-linux-uclibc/crosstool.config | 38 23 15 0 +-
/trunk/samples/arm-unknown-linux-uclibcgnueabi/crosstool.config | 14 10 4 0 +
/trunk/samples/armeb-unknown-linux-gnu/crosstool.config | 7 5 2 0 +
/trunk/samples/powerpc-unknown_nofpu-linux-gnu/crosstool.config | 12 9 3 0 +
/trunk/samples/arm-unknown-linux-uclibc/crosstool.config | 7 5 2 0 +
/trunk/samples/i586-geode-linux-uclibc/uClibc-20080801.config | 261 261 0 0 +++++++++++++
/trunk/samples/i586-geode-linux-uclibc/crosstool.config | 32 20 12 0 ++
/trunk/samples/powerpc-unknown-linux-uclibc/crosstool.config | 12 9 3 0 +
/trunk/samples/mipsel-unknown-linux-gnu/crosstool.config | 7 5 2 0 +
/trunk/samples/armeb-unknown-linux-uclibcgnueabi/crosstool.config | 7 5 2 0 +
/trunk/samples/alphaev56-unknown-linux-gnu/crosstool.config | 16 10 6 0 +
25 files changed, 1428 insertions(+), 84 deletions(-)
yann@552
     1
Original patch from gentoo: gentoo/src/patchsets/gcc/4.3.1/gentoo/14_all_gcc-sparc64-bsd.patch
yann@552
     2
diff -durN gcc-4.3.1.orig/gcc/config/sparc/freebsd.h gcc-4.3.1/gcc/config/sparc/freebsd.h
yann@552
     3
--- gcc-4.3.1.orig/gcc/config/sparc/freebsd.h	2007-08-02 12:49:31.000000000 +0200
yann@552
     4
+++ gcc-4.3.1/gcc/config/sparc/freebsd.h	2008-06-10 14:57:54.000000000 +0200
yann@552
     5
@@ -25,9 +25,22 @@
yann@552
     6
 /* FreeBSD needs the platform name (sparc64) defined.
yann@552
     7
    Emacs needs to know if the arch is 64 or 32-bits.  */
yann@552
     8
 
yann@552
     9
-#undef  CPP_CPU64_DEFAULT_SPEC
yann@552
    10
-#define CPP_CPU64_DEFAULT_SPEC \
yann@552
    11
-  "-D__sparc64__ -D__sparc_v9__ -D__sparcv9 -D__arch64__"
yann@552
    12
+#undef  FBSD_TARGET_CPU_CPP_BUILTINS
yann@552
    13
+#define FBSD_TARGET_CPU_CPP_BUILTINS()                  \
yann@552
    14
+  do                                                    \
yann@552
    15
+    {                                                   \
yann@552
    16
+      if (TARGET_ARCH64)                                \
yann@552
    17
+        {                                               \
yann@552
    18
+          builtin_define ("__sparc64__");               \
yann@552
    19
+          builtin_define ("__sparc_v9__");              \
yann@552
    20
+          builtin_define ("__sparcv9");                 \
yann@552
    21
+        }                                               \
yann@552
    22
+      else                                              \
yann@552
    23
+        builtin_define ("__sparc");                     \
yann@552
    24
+      builtin_define ("__sparc__");                     \
yann@552
    25
+    }                                                   \
yann@552
    26
+  while (0)
yann@552
    27
+
yann@552
    28
 
yann@552
    29
 #define LINK_SPEC "%(link_arch)						\
yann@552
    30
   %{!mno-relax:%{!r:-relax}}						\