--- strace-4.8.orig/defs.h	2013-05-14 16:10:42.000000000 +0200
+++ strace-4.8/defs.h	2014-02-26 17:36:34.000000000 +0100
@@ -155,18 +155,18 @@ extern char *stpcpy(char *dst, const cha
     || defined(METAG) \
     || defined(TILE) \
     || defined(XTENSA) \
-    ) && defined(__GLIBC__)
+    ) && defined(__linux__)
 # include <sys/ptrace.h>
 #else
 /* Work around awkward prototype in ptrace.h. */
 # define ptrace xptrace
 # include <sys/ptrace.h>
 # undef ptrace
-# ifdef POWERPC
+#if defined(POWERPC) && defined(__GLIBC__)
 #  define __KERNEL__
 #  include <asm/ptrace.h>
 #  undef __KERNEL__
-# endif
+#endif
 extern long ptrace(int, int, char *, long);
 #endif
 
@@ -222,7 +222,7 @@ extern long ptrace(int, int, char *, lon
 # define PTRACE_EVENT_EXIT	6
 #endif
 
-#if !defined(__GLIBC__)
+#if !defined(__GLIBC__) && !defined(PTRACE_PEEKUSER)
 # define PTRACE_PEEKUSER PTRACE_PEEKUSR
 # define PTRACE_POKEUSER PTRACE_POKEUSR
 #endif
