patches/glibc/2.2.5/glibc-2.2.5-allow-gcc-4.0-powerpc-procfs.patch
author "Yann E. MORIN" <yann.morin.1998@anciens.enib.fr>
Sat Feb 24 11:00:05 2007 +0000 (2007-02-24)
changeset 1 eeea35fbf182
permissions -rw-r--r--
Add the full crosstool-NG sources to the new repository of its own.
You might just say: 'Yeah! crosstool-NG's got its own repo!".
Unfortunately, that's because the previous repo got damaged beyond repair and I had no backup.
That means I'm putting backups in place in the afternoon.
That also means we've lost history... :-(
yann@1
     1
(See similar patch for glibc-2.3.3)
yann@1
     2
yann@1
     3
This fix discussed here:
yann@1
     4
http://gcc.gnu.org/ml/gcc/2005-01/msg00509.html
yann@1
     5
yann@1
     6
Fixes
yann@1
     7
yann@1
     8
In file included from ../linuxthreads_db/proc_service.h:20,
yann@1
     9
                 from ../linuxthreads_db/thread_dbP.h:6,
yann@1
    10
                 from internals.h:36,
yann@1
    11
                 from attr.c:23:
yann@1
    12
../sysdeps/unix/sysv/linux/powerpc/sys/procfs.h:53: error: syntax error before 'elf_vrreg_t'
yann@1
    13
../sysdeps/unix/sysv/linux/powerpc/sys/procfs.h:53: warning: type defaults to 'int' in declaration of 'elf_vrreg_t'
yann@1
    14
../sysdeps/unix/sysv/linux/powerpc/sys/procfs.h:53: warning: data definition has no type or storage class
yann@1
    15
../sysdeps/unix/sysv/linux/powerpc/sys/procfs.h:54: error: syntax error before 'elf_vrregset_t'
yann@1
    16
../sysdeps/unix/sysv/linux/powerpc/sys/procfs.h:54: warning: type defaults to 'int' in declaration of 'elf_vrregset_t'
yann@1
    17
../sysdeps/unix/sysv/linux/powerpc/sys/procfs.h:54: warning: data definition has no type or storage class
yann@1
    18
make[2]: Leaving directory `/home/dank/queue/jobdir.fast2/crosstool-0.30/build/powerpc-405-linux-gnu/gcc-4.0-20050305-glibc-2.2.5/glibc-2.2.5/linuxthreads'
yann@1
    19
make[2]: *** [/home/dank/queue/jobdir.fast2/crosstool-0.30/build/powerpc-405-linux-gnu/gcc-4.0-20050305-glibc-2.2.5/build-glibc/linuxthreads/attr.o] Error 1
yann@1
    20
yann@1
    21
From: Martin Egholm Nielsen martin at egholm-nielsen dot dk
yann@1
    22
To: crossgcc at sources dot redhat dot com
yann@1
    23
Date: Thu, 24 Mar 2005 18:40:27 +0100
yann@1
    24
Subject: [Patch] CT 0.29 - glibc-2.2.5-allow-gcc-4.0-powerpc-procfs
yann@1
    25
yann@1
    26
Hi Dan,
yann@1
    27
yann@1
    28
I had to add the following patch in order to make CT 0.29 and glibc 
yann@1
    29
2.2.5 compile with gcc 4.0 (20050305) and Kernel 2.4.20...
yann@1
    30
yann@1
    31
// Martin
yann@1
    32
yann@1
    33
--- glibc-2.2.5/sysdeps/unix/sysv/linux/powerpc/sys/procfs.h.old	2005-03-24 13:11:39.746062400 +0100
yann@1
    34
+++ glibc-2.2.5/sysdeps/unix/sysv/linux/powerpc/sys/procfs.h	2005-03-24 13:15:11.810996800 +0100
yann@1
    35
@@ -42,15 +42,10 @@
yann@1
    36
 typedef double elf_fpreg_t;
yann@1
    37
 typedef elf_fpreg_t elf_fpregset_t[ELF_NFPREG];
yann@1
    38
 
yann@1
    39
-/* gcc 3.1 and newer support __uint128_t.  */
yann@1
    40
-#if !__GNUC_PREREQ(3,1)
yann@1
    41
-typedef struct {
yann@1
    42
-  unsigned long u[4];
yann@1
    43
-} __attribute((aligned(16))) __uint128_t;
yann@1
    44
-#endif
yann@1
    45
-
yann@1
    46
 /* Altivec registers */
yann@1
    47
-typedef __uint128_t elf_vrreg_t;
yann@1
    48
+typedef struct {
yann@1
    49
+  unsigned int u[4];
yann@1
    50
+} __attribute__ ((aligned (16))) elf_vrreg_t;
yann@1
    51
 typedef elf_vrreg_t elf_vrregset_t[ELF_NVRREG];
yann@1
    52
 
yann@1
    53
 struct elf_siginfo
yann@1
    54