Blob Blame History Raw
commit 03ef0b2665363adf6100bc4af479a14b5f17bc27
Author: Dmitry V. Levin <ldv@altlinux.org>
Date:   Wed Nov 13 18:09:04 2013 +0000

    Assume that <sys/ptrace.h> provides a valid ptrace prototype
    
    We used to explicitly list architectures where <sys/ptrace.h> from glibc
    is known to provide a valid prototype for ptrace, and use a homegrown
    replacement for all the rest.  Situation seems to be better nowadays,
    glibc is not the only libc available, so let's use ptrace prototype from
    <sys/ptrace.h> by default, leaving the replacement for rare broken cases
    if any.
    
    * defs.h: Use ptrace prototype workaround iff
    NEED_PTRACE_PROTOTYPE_WORKAROUND is defined.

--- strace-4.8/defs.h	
+++ strace-4.8/defs.h	
@@ -147,27 +147,17 @@ extern char *stpcpy(char *dst, const cha
 /* To force NOMMU build, set to 1 */
 #define NOMMU_SYSTEM 0
 
-#if (defined(SPARC) || defined(SPARC64) \
-    || defined(I386) || defined(X32) || defined(X86_64) \
-    || defined(ARM) || defined(AARCH64) \
-    || defined(AVR32) \
-    || defined(OR1K) \
-    || defined(METAG) \
-    || defined(TILE) \
-    || defined(XTENSA) \
-    ) && defined(__GLIBC__)
-# include <sys/ptrace.h>
-#else
-/* Work around awkward prototype in ptrace.h. */
+#ifdef NEED_PTRACE_PROTOTYPE_WORKAROUND
 # define ptrace xptrace
 # include <sys/ptrace.h>
 # undef ptrace
-# ifdef POWERPC
-#  define __KERNEL__
-#  include <asm/ptrace.h>
-#  undef __KERNEL__
-# endif
 extern long ptrace(int, int, char *, long);
+#else
+# include <sys/ptrace.h>
+#endif
+
+#if defined(POWERPC)
+# include <asm/ptrace.h>
 #endif
 
 #if defined(TILE)