diff options
author | Yann E. MORIN" <yann.morin.1998@anciens.enib.fr> | 2008-10-24 11:14:31 +0000 |
---|---|---|
committer | Yann E. MORIN" <yann.morin.1998@anciens.enib.fr> | 2008-10-24 11:14:31 +0000 |
commit | 5b581f678baefc3e5dc7fd5b53d8402cef6e8046 (patch) | |
tree | a57d6b0fa660f9c91709e5ec3ec22f8313da78dd /patches/glibc | |
parent | 0732c2ceeffb6b6fd007981b0e5942a188373a1d (diff) | |
download | crosstool-ng-5b581f678baefc3e5dc7fd5b53d8402cef6e8046.tar.gz crosstool-ng-5b581f678baefc3e5dc7fd5b53d8402cef6e8046.tar.bz2 crosstool-ng-5b581f678baefc3e5dc7fd5b53d8402cef6e8046.zip |
The glibc-2.7 profs fix for SuperH was missing very important parts...
/trunk/patches/glibc/2.7/270-sh-fix-procfs.patch | 38 32 6 0 ++++++++++++++++++++++++++++++++------
1 file changed, 32 insertions(+), 6 deletions(-)
Diffstat (limited to 'patches/glibc')
-rw-r--r-- | patches/glibc/2.7/270-sh-fix-procfs.patch | 38 |
1 files changed, 32 insertions, 6 deletions
diff --git a/patches/glibc/2.7/270-sh-fix-procfs.patch b/patches/glibc/2.7/270-sh-fix-procfs.patch index f45ab5eb..f5f8bb1e 100644 --- a/patches/glibc/2.7/270-sh-fix-procfs.patch +++ b/patches/glibc/2.7/270-sh-fix-procfs.patch @@ -1,11 +1,37 @@ ---- a/sysdeps/unix/sysv/linux/sh/sys/procfs.h -+++ b/sysdeps/unix/sysv/linux/sh/sys/procfs.h -@@ -29,7 +29,6 @@ +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 +--- glibc-2.7.orig/sysdeps/unix/sysv/linux/sh/sys/procfs.h 2004-11-20 18:56:16.000000000 +0100 ++++ glibc-2.7/sysdeps/unix/sysv/linux/sh/sys/procfs.h 2008-10-24 11:21:15.000000000 +0200 +@@ -29,10 +29,32 @@ #include <sys/types.h> #include <sys/ucontext.h> #include <sys/user.h> -#include <asm/elf.h> - + __BEGIN_DECLS - - + ++/* BEGIN - UGLY HACK - YEM ++ * These definitions are copied from the Alpha file, ++ * and the register numbers are set accordingly to ++ * what I could find in the Linux kernel sources ++ * Highly dubious !!!! ++ * BIG FAT WARNING !!! ++ */ ++ ++/* Linux kernel says 16 (standards?) registers */ ++#define ELF_NGREG 16 ++/* Linux kernel says 16 floating point registers */ ++#define ELF_NFPREG 16 ++ ++/* Copied from Alpha as is */ ++typedef unsigned long elf_greg_t; ++typedef elf_greg_t elf_gregset_t[ELF_NGREG]; ++ ++/* Ditto */ ++typedef double elf_fpreg_t; ++typedef elf_fpreg_t elf_fpregset_t[ELF_NFPREG]; ++ ++/* END - UGLY HACK - YEM */ ++ + struct elf_siginfo + { + int si_signo; /* Signal number. */ |