summaryrefslogtreecommitdiff
path: root/recipes/glibc/glibc-2.9/glibc-2.9-sh-fix.patch
blob: ed6da440b8e8854d516db12e11777f602e203970 (plain)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
diff -ru glibc-2.9.old/sysdeps/unix/sysv/linux/sh/sys/procfs.h glibc-2.9/sysdeps/unix/sysv/linux/sh/sys/procfs.h
--- glibc-2.9.old/sysdeps/unix/sysv/linux/sh/sys/procfs.h	2004-11-20 19:56:16.000000000 +0200
+++ glibc-2.9/sysdeps/unix/sysv/linux/sh/sys/procfs.h	2009-12-21 14:51:57.338186996 +0200
@@ -24,12 +24,9 @@
    used on Linux.  */

 #include <features.h>
-#include <signal.h>
 #include <sys/time.h>
 #include <sys/types.h>
-#include <sys/ucontext.h>
 #include <sys/user.h>
-#include <asm/elf.h>

 __BEGIN_DECLS

diff -ru glibc-2.9.old/sysdeps/unix/sysv/linux/sh/sys/user.h glibc-2.9/sysdeps/unix/sysv/linux/sh/sys/user.h
--- glibc-2.9.old/sysdeps/unix/sysv/linux/sh/sys/user.h	2003-02-08 04:32:42.000000000 +0200
+++ glibc-2.9/sysdeps/unix/sysv/linux/sh/sys/user.h	2009-12-21 14:53:00.708180633 +0200
@@ -19,10 +19,49 @@
 #ifndef _SYS_USER_H
 #define _SYS_USER_H	1

-#include <features.h>
+#include <asm/ptrace.h>

-#include <asm/user.h>
+/* asm/ptrace.h polutes the namespace.  */
+#undef PTRACE_GETREGS
+#undef PTRACE_SETREGS
+#undef PTRACE_GETFPREGS
+#undef PTRACE_SETFPREGS
+#undef PTRACE_GETFDPIC
+#undef PTRACE_GETFDPIC_EXEC
+#undef PTRACE_GETFDPIC_INTERP
+#undef	PTRACE_GETDSPREGS
+#undef	PTRACE_SETDSPREGS

-#undef start_thread
+typedef unsigned long elf_greg_t;
+
+#define ELF_NGREG (sizeof (struct pt_regs) / sizeof (elf_greg_t))
+typedef elf_greg_t elf_gregset_t[ELF_NGREG];
+
+struct user_fpu_struct
+  {
+    unsigned long fp_regs[16];
+    unsigned long xfp_regs[16];
+    unsigned long fpscr;
+    unsigned long fpul;
+  };
+typedef struct user_fpu_struct elf_fpregset_t;
+
+struct user
+  {
+    struct pt_regs regs;
+    struct user_fpu_struct fpu;
+    int u_fpvalid;
+    size_t u_tsize;
+    size_t u_dsize;
+    size_t u_ssize;
+    unsigned long start_code;
+    unsigned long start_data;
+    unsigned long start_stack;
+    long int signal;
+    unsigned long u_ar0;
+    struct user_fpu_struct *u_fpstate;
+    unsigned long magic;
+    char u_comm[32];
+  };

 #endif  /* sys/user.h */