]> granicus.if.org Git - strace/commitdiff
2004-03-01 Roland McGrath <roland@redhat.com>
authorRoland McGrath <roland@redhat.com>
Mon, 1 Mar 2004 21:29:22 +0000 (21:29 +0000)
committerRoland McGrath <roland@redhat.com>
Mon, 1 Mar 2004 21:29:22 +0000 (21:29 +0000)
* configure.ac: Check for `struct pt_all_user_regs'
and `struct ia64_fpreg' in <sys/ptrace.h>.
* util.c, process.c, syscall.c: Work around conflicts between
<sys/ptrace.h> and <linux/ptrace.h> for defining those types.

configure.ac
syscall.c
util.c

index a60b61f78c0cfa9f2b09935c7ad0aa72fc379064..b7cd49ba1d6b3bb053321934d2f583d29aebc14e 100644 (file)
@@ -207,6 +207,9 @@ AC_CHECK_MEMBERS([struct T_conn_res.QUEUE_ptr,
 
 AC_CHECK_TYPES([struct __old_kernel_stat],,, [#include <asm/stat.h>])
 
+AC_CHECK_TYPES([struct pt_all_user_regs, struct ia64_fpreg],,,
+              [#include <sys/ptrace.h>])
+
 AC_CHECK_DECLS([sys_errlist])
 AC_CHECK_DECLS([sys_siglist, _sys_siglist],,, [#include <signal.h>])
 
index 214e38bba9a5711b80da38ef673c9cabd52768c7..87f7a82920bef5da1fc8c09e0e0fb70b9bf76852 100644 (file)
--- a/syscall.c
+++ b/syscall.c
 #endif
 #elif defined(HAVE_LINUX_PTRACE_H)
 #undef PTRACE_SYSCALL
+# ifdef HAVE_STRUCT_IA64_FPREG
+#  define ia64_fpreg XXX_ia64_fpreg
+# endif
+# ifdef HAVE_STRUCT_PT_ALL_USER_REGS
+#  define pt_all_user_regs XXX_pt_all_user_regs
+# endif
 #include <linux/ptrace.h>
+# undef ia64_fpreg
+# undef pt_all_user_regs
 #endif
 
 #if defined(LINUX) && defined(IA64)
diff --git a/util.c b/util.c
index 5a85c0b73a5d6d0b25f08409c6c5c13e5c666483..2770ac455dfdfdb002263fda3ad718a56cc3fbce 100644 (file)
--- a/util.c
+++ b/util.c
 # define PTRACE_PEEKUSR PTRACE_PEEKUSER
 #elif defined(HAVE_LINUX_PTRACE_H)
 #undef PTRACE_SYSCALL
+# ifdef HAVE_STRUCT_IA64_FPREG
+#  define ia64_fpreg XXX_ia64_fpreg
+# endif
+# ifdef HAVE_STRUCT_PT_ALL_USER_REGS
+#  define pt_all_user_regs XXX_pt_all_user_regs
+# endif
 #include <linux/ptrace.h>
+# undef ia64_fpreg
+# undef pt_all_user_regs
 #endif
 
 #ifdef SUNOS4_KERNEL_ARCH_KLUDGE