patches/glibc/2.7/270-sh-fix-procfs.patch
author "Yann E. MORIN" <yann.morin.1998@anciens.enib.fr>
Mon Mar 28 01:05:18 2011 +0200 (2011-03-28)
changeset 2362 0888065f8c4d
parent 962 2ba4393e0441
permissions -rw-r--r--
cc/gcc: cleanup the _or_later logic

So far, we've had a version always select appropriate _or_later option,
which in turn would select all previous _or_later options.

Because the dependencies on companion libs were cumulative, that was
working OK. But the upcoming 4.6 will no longer depend on libelf, so
we can't keep the cumulative scheme we've been using so far.

Have each release family select the corresponding dependencies, instead
of relying on selecting previous _or_later.

Signed-off-by: "Yann E. MORIN" <yann.morin.1998@anciens.enib.fr>
yann@969
     1
diff -durN glibc-2.7.orig/sysdeps/unix/sysv/linux/sh/sys/procfs.h glibc-2.7/sysdeps/unix/sysv/linux/sh/sys/procfs.h
yann@969
     2
--- glibc-2.7.orig/sysdeps/unix/sysv/linux/sh/sys/procfs.h	2004-11-20 18:56:16.000000000 +0100
yann@969
     3
+++ glibc-2.7/sysdeps/unix/sysv/linux/sh/sys/procfs.h	2008-10-24 11:21:15.000000000 +0200
yann@969
     4
@@ -29,10 +29,32 @@
yann@962
     5
 #include <sys/types.h>
yann@962
     6
 #include <sys/ucontext.h>
yann@962
     7
 #include <sys/user.h>
yann@962
     8
-#include <asm/elf.h>
yann@969
     9
 
yann@962
    10
 __BEGIN_DECLS
yann@969
    11
 
yann@969
    12
+/* BEGIN - UGLY HACK - YEM
yann@969
    13
+ * These definitions are copied from the Alpha file,
yann@969
    14
+ * and the register numbers are set accordingly to
yann@969
    15
+ * what I could find in the Linux kernel sources
yann@969
    16
+ * Highly dubious !!!!
yann@969
    17
+ * BIG FAT WARNING !!!
yann@969
    18
+ */
yann@969
    19
+
yann@969
    20
+/* Linux kernel says 16 (standards?) registers */
yann@969
    21
+#define ELF_NGREG  16
yann@969
    22
+/* Linux kernel says 16 floating point registers */
yann@969
    23
+#define ELF_NFPREG 16
yann@969
    24
+
yann@969
    25
+/* Copied from Alpha as is */
yann@969
    26
+typedef unsigned long elf_greg_t;
yann@969
    27
+typedef elf_greg_t elf_gregset_t[ELF_NGREG];
yann@969
    28
+
yann@969
    29
+/* Ditto */
yann@969
    30
+typedef double elf_fpreg_t;
yann@969
    31
+typedef elf_fpreg_t elf_fpregset_t[ELF_NFPREG];
yann@969
    32
+
yann@969
    33
+/* END - UGLY HACK - YEM */
yann@969
    34
+
yann@969
    35
 struct elf_siginfo
yann@969
    36
   {
yann@969
    37
     int si_signo;			/* Signal number.  */