summaryrefslogtreecommitdiff
path: root/patches/ltrace/0.5.3/160-fix-missing-ptrace-defines.patch
blob: b57a1665ed2ced37f0b455b89e17c5d7b112ad58 (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
73
74
75
76
77
78
79
80
81
This patch tries to fix the issue when PTRACE_EVENT_FORK is not found in the standard
system headers.  The begininngs of this was already in place in trace.c, this patch
only takes that idea and puts it in a shared include file for trace.c *and* events.c.
The latter of which otherwise fails to build on Arm.

	Joachim Nilsson <jocke@vmlinux.org>

diff -ruN ltrace-0.5.3.orig/sysdeps/linux-gnu/events.c ltrace-0.5.3/sysdeps/linux-gnu/events.c
--- ltrace-0.5.3.orig/sysdeps/linux-gnu/events.c	2009-07-25 17:13:02.000000000 +0200
+++ ltrace-0.5.3/sysdeps/linux-gnu/events.c	2010-01-03 14:33:46.000000000 +0100
@@ -7,9 +7,8 @@
 #include <errno.h>
 #include <signal.h>
 #include <string.h>
-#include <sys/ptrace.h>
 
-#include "common.h"
+#include "trace.h"
 
 static Event event;
 
diff -ruN ltrace-0.5.3.orig/sysdeps/linux-gnu/trace.c ltrace-0.5.3/sysdeps/linux-gnu/trace.c
--- ltrace-0.5.3.orig/sysdeps/linux-gnu/trace.c	2009-07-25 17:13:02.000000000 +0200
+++ ltrace-0.5.3/sysdeps/linux-gnu/trace.c	2010-01-03 14:33:38.000000000 +0100
@@ -5,10 +5,9 @@
 #include <unistd.h>
 #include <sys/types.h>
 #include <sys/wait.h>
-#include "ptrace.h"
 #include <asm/unistd.h>
 
-#include "common.h"
+#include "trace.h"
 
 /* If the system headers did not provide the constants, hard-code the normal
    values.  */
diff -ruN ltrace-0.5.3.orig/sysdeps/linux-gnu/trace.h ltrace-0.5.3/sysdeps/linux-gnu/trace.h
--- ltrace-0.5.3.orig/sysdeps/linux-gnu/trace.h	1970-01-01 01:00:00.000000000 +0100
+++ ltrace-0.5.3/sysdeps/linux-gnu/trace.h	2010-01-03 14:33:26.000000000 +0100
@@ -0,0 +1,32 @@
+/* If the system headers did not provide the constants, hard-code the normal values. */
+#ifndef __SYSDEPS_TRACE_H__
+#define __SYSDEPS_TRACE_H__
+
+#include "ptrace.h"
+#include "common.h"
+
+#ifndef PTRACE_EVENT_FORK
+#warning  PTRACE_EVENT_FORK not found... redefining.
+#define PTRACE_OLDSETOPTIONS    21
+#define PTRACE_SETOPTIONS       0x4200
+#define PTRACE_GETEVENTMSG      0x4201
+
+/* options set using PTRACE_SETOPTIONS */
+#define PTRACE_O_TRACESYSGOOD   0x00000001
+#define PTRACE_O_TRACEFORK      0x00000002
+#define PTRACE_O_TRACEVFORK     0x00000004
+#define PTRACE_O_TRACECLONE     0x00000008
+#define PTRACE_O_TRACEEXEC      0x00000010
+#define PTRACE_O_TRACEVFORKDONE 0x00000020
+#define PTRACE_O_TRACEEXIT      0x00000040
+
+/* Wait extended result codes for the above trace options.  */
+#define PTRACE_EVENT_FORK       1
+#define PTRACE_EVENT_VFORK      2
+#define PTRACE_EVENT_CLONE      3
+#define PTRACE_EVENT_EXEC       4
+#define PTRACE_EVENT_VFORK_DONE 5
+#define PTRACE_EVENT_EXIT       6
+
+#endif /* PTRACE_EVENT_FORK */
+#endif /* __SYSDEPS_TRACE_H__ */
--- ltrace-0.5.3.orig/sysdeps/linux-gnu/ppc/plt.c	2009-07-25 09:13:02.000000000 -0600
+++ ltrace-0.5.3/sysdeps/linux-gnu/ppc/plt.c	2010-09-28 18:30:07.091618190 -0600
@@ -1,5 +1,6 @@
 #include <gelf.h>
 #include "common.h"
+#include "ptrace.h"
 
 GElf_Addr
 arch_plt_sym_val(struct ltelf *lte, size_t ndx, GElf_Rela * rela) {