diff --git a/Android.patch b/Android.patch
index d30d616..e4848eb 100644
--- a/Android.patch
+++ b/Android.patch
@@ -1,6 +1,6 @@
-diff -r -u -d /Users/jeffbrown/Downloads/strace-4.6/bjm.c ./bjm.c
---- /Users/jeffbrown/Downloads/strace-4.6/bjm.c	2009-11-06 09:27:46.000000000 -0800
-+++ ./bjm.c	2012-03-02 15:17:11.000000000 -0800
+diff -r -u -d /tmp/strace-4.6/bjm.c ./bjm.c
+--- /tmp/strace-4.6/bjm.c	2009-11-06 09:27:46.000000000 -0800
++++ ./bjm.c	2013-01-04 12:26:34.977221825 -0800
 @@ -39,7 +39,9 @@
  #include <sys/wait.h>
  #include <sys/resource.h>
@@ -11,10 +11,24 @@
  #include <sys/syscall.h>
  #include <signal.h>
  
-diff -r -u -d /Users/jeffbrown/Downloads/strace-4.6/file.c ./file.c
---- /Users/jeffbrown/Downloads/strace-4.6/file.c	2011-03-03 18:08:02.000000000 -0800
-+++ ./file.c	2012-03-02 15:11:14.000000000 -0800
-@@ -45,6 +45,41 @@
+diff -r -u -d /tmp/strace-4.6/defs.h ./defs.h
+--- /tmp/strace-4.6/defs.h	2011-03-15 10:19:09.000000000 -0700
++++ ./defs.h	2013-01-04 12:26:34.977221825 -0800
+@@ -33,10 +33,6 @@
+ #include "config.h"
+ #endif
+ 
+-#ifdef MIPS
+-#include <sgidefs.h>
+-#endif
+-
+ #ifdef linux
+ #include <features.h>
+ #endif
+diff -r -u -d /tmp/strace-4.6/file.c ./file.c
+--- /tmp/strace-4.6/file.c	2011-03-03 18:08:02.000000000 -0800
++++ ./file.c	2013-01-04 12:26:34.977221825 -0800
+@@ -45,6 +45,60 @@
  # define kernel_dirent dirent
  #endif
  
@@ -33,6 +47,7 @@
 +
 +// ANDROID: From kernel_headers/asm/statfs.h
 +
++#if !defined(MIPS)
 +/*
 + * With EABI there is 4 bytes of padding added to this structure.
 + * Let's pack it so the padding goes away to simplify dual ABI support.
@@ -51,14 +66,72 @@
 +        __u32 f_frsize;
 +        __u32 f_spare[5];
 +} __attribute__ ((packed,aligned(4)));
++#else
++struct statfs64 {
++	__u32 f_type;
++	__u32 f_bsize;
++	__u32 f_frsize;
++	__u32 __pad;
++	__u64 f_blocks;
++	__u64 f_bfree;
++	__u64 f_files;
++	__u64 f_ffree;
++	__u64 f_bavail;
++	__kernel_fsid_t f_fsid;
++	__u32 f_namelen;
++	__u32 f_spare[6];
++};
++#endif
++
++
 +#endif /* HAVE_ANDROID_OS */
 +
  #ifdef LINUX
  #  ifdef LINUXSPARC
  struct stat {
-diff -r -u -d /Users/jeffbrown/Downloads/strace-4.6/ioctl.c ./ioctl.c
---- /Users/jeffbrown/Downloads/strace-4.6/ioctl.c	2011-01-15 12:15:31.000000000 -0800
-+++ ./ioctl.c	2012-03-02 15:53:36.000000000 -0800
+@@ -1732,11 +1786,19 @@
+ 		(unsigned long)statbuf.f_bsize,
+ 		(unsigned long)statbuf.f_blocks,
+ 		(unsigned long)statbuf.f_bfree);
++#ifdef MIPS
++	tprintf("f_bavail=%lu, f_files=%lu, f_ffree=%lu, f_fsid={%ld, %ld}",
++		(unsigned long)statbuf.f_bavail,
++		(unsigned long)statbuf.f_files,
++		(unsigned long)statbuf.f_ffree,
++		statbuf.f_fsid.val[0], statbuf.f_fsid.val[1]);
++#else
+ 	tprintf("f_bavail=%lu, f_files=%lu, f_ffree=%lu, f_fsid={%d, %d}",
+ 		(unsigned long)statbuf.f_bavail,
+ 		(unsigned long)statbuf.f_files,
+ 		(unsigned long)statbuf.f_ffree,
+ 		statbuf.f_fsid.__val[0], statbuf.f_fsid.__val[1]);
++#endif
+ #ifdef LINUX
+ 	tprintf(", f_namelen=%lu", (unsigned long)statbuf.f_namelen);
+ #endif /* LINUX */
+@@ -1790,11 +1852,19 @@
+ 		(unsigned long long)statbuf.f_bsize,
+ 		(unsigned long long)statbuf.f_blocks,
+ 		(unsigned long long)statbuf.f_bfree);
++#ifdef MIPS
++	tprintf("f_bavail=%llu, f_files=%llu, f_ffree=%llu, f_fsid={%ld, %ld}",
++		(unsigned long long)statbuf.f_bavail,
++		(unsigned long long)statbuf.f_files,
++		(unsigned long long)statbuf.f_ffree,
++		statbuf.f_fsid.val[0], statbuf.f_fsid.val[1]);
++#else
+ 	tprintf("f_bavail=%llu, f_files=%llu, f_ffree=%llu, f_fsid={%d, %d}",
+ 		(unsigned long long)statbuf.f_bavail,
+ 		(unsigned long long)statbuf.f_files,
+ 		(unsigned long long)statbuf.f_ffree,
+ 		statbuf.f_fsid.__val[0], statbuf.f_fsid.__val[1]);
++#endif
+ 	tprintf(", f_namelen=%lu", (unsigned long)statbuf.f_namelen);
+ #ifdef _STATFS_F_FRSIZE
+ 	tprintf(", f_frsize=%llu", (unsigned long long)statbuf.f_frsize);
+diff -r -u -d /tmp/strace-4.6/ioctl.c ./ioctl.c
+--- /tmp/strace-4.6/ioctl.c	2011-01-15 12:15:31.000000000 -0800
++++ ./ioctl.c	2013-01-04 12:26:34.977221825 -0800
 @@ -155,9 +155,11 @@
  	case 0x03:
  	case 0x12:
@@ -71,9 +144,9 @@
  	default:
  		break;
  	}
-diff -r -u -d /Users/jeffbrown/Downloads/strace-4.6/ipc.c ./ipc.c
---- /Users/jeffbrown/Downloads/strace-4.6/ipc.c	2010-03-31 15:22:01.000000000 -0700
-+++ ./ipc.c	2012-03-02 16:12:52.000000000 -0800
+diff -r -u -d /tmp/strace-4.6/ipc.c ./ipc.c
+--- /tmp/strace-4.6/ipc.c	2010-03-31 15:22:01.000000000 -0700
++++ ./ipc.c	2013-01-04 12:26:34.977221825 -0800
 @@ -40,9 +40,15 @@
  
  #include <fcntl.h>
@@ -90,9 +163,9 @@
  
  #ifndef MSG_STAT
  #define MSG_STAT 11
-diff -r -u -d /Users/jeffbrown/Downloads/strace-4.6/process.c ./process.c
---- /Users/jeffbrown/Downloads/strace-4.6/process.c	2011-03-14 14:58:59.000000000 -0700
-+++ ./process.c	2012-03-02 15:16:28.000000000 -0800
+diff -r -u -d /tmp/strace-4.6/process.c ./process.c
+--- /tmp/strace-4.6/process.c	2011-03-14 14:58:59.000000000 -0700
++++ ./process.c	2013-01-04 12:26:34.987221830 -0800
 @@ -45,7 +45,11 @@
  #include <sys/wait.h>
  #include <sys/resource.h>
@@ -116,9 +189,9 @@
  #if defined(LINUX) && defined(IA64)
  # include <asm/ptrace_offsets.h>
  # include <asm/rse.h>
-diff -r -u -d /Users/jeffbrown/Downloads/strace-4.6/signal.c ./signal.c
---- /Users/jeffbrown/Downloads/strace-4.6/signal.c	2011-03-10 15:14:47.000000000 -0800
-+++ ./signal.c	2012-03-02 15:22:07.000000000 -0800
+diff -r -u -d /tmp/strace-4.6/signal.c ./signal.c
+--- /tmp/strace-4.6/signal.c	2011-03-10 15:14:47.000000000 -0800
++++ ./signal.c	2013-01-04 12:26:34.987221830 -0800
 @@ -37,9 +37,17 @@
  
  #include <stdint.h>
@@ -146,10 +219,18 @@
  /* Type for data associated with a signal.  */
  typedef union sigval
  {
-diff -r -u -d /Users/jeffbrown/Downloads/strace-4.6/syscall.c ./syscall.c
---- /Users/jeffbrown/Downloads/strace-4.6/syscall.c	2011-02-18 16:02:27.000000000 -0800
-+++ ./syscall.c	2012-03-02 15:00:35.000000000 -0800
-@@ -38,10 +38,16 @@
+@@ -1492,6 +1500,7 @@
+ 		tcp->u_arg[0] = 0;
+ 		sp = regs.regs[29];
+ 		if (umove(tcp, sp, &si) < 0)
++			return 0;
+ 		tcp->u_arg[0] = 1;
+ 		tcp->u_arg[1] = si.si_mask;
+ 	} else {
+diff -r -u -d /tmp/strace-4.6/syscall.c ./syscall.c
+--- /tmp/strace-4.6/syscall.c	2011-02-18 16:02:27.000000000 -0800
++++ ./syscall.c	2013-03-21 17:57:17.999238040 -0700
+@@ -38,7 +38,9 @@
  #include <signal.h>
  #include <time.h>
  #include <errno.h>
@@ -159,14 +240,7 @@
  #include <sys/syscall.h>
  #include <sys/param.h>
  
-+#ifdef HAVE_ANDROID_OS
-+#include "syscall-android.h"
-+#endif
-+
- #ifdef HAVE_SYS_REG_H
- #include <sys/reg.h>
- #ifndef PTRACE_PEEKUSR
-@@ -2600,6 +2606,7 @@
+@@ -2600,6 +2602,7 @@
  	}
  
  	switch (known_scno(tcp)) {
@@ -174,7 +248,7 @@
  #ifdef SYS_socket_subcall
  	case SYS_socketcall:
  		decode_subcall(tcp, SYS_socket_subcall,
-@@ -2612,6 +2619,7 @@
+@@ -2612,6 +2615,7 @@
  			SYS_ipc_nsubcalls, shift_style);
  		break;
  #endif
@@ -182,9 +256,9 @@
  #ifdef SVR4
  #ifdef SYS_pgrpsys_subcall
  	case SYS_pgrpsys:
-diff -r -u -d /Users/jeffbrown/Downloads/strace-4.6/system.c ./system.c
---- /Users/jeffbrown/Downloads/strace-4.6/system.c	2011-02-22 02:22:13.000000000 -0800
-+++ ./system.c	2012-03-02 15:50:24.000000000 -0800
+diff -r -u -d /tmp/strace-4.6/system.c ./system.c
+--- /tmp/strace-4.6/system.c	2011-02-22 02:22:13.000000000 -0800
++++ ./system.c	2013-03-21 17:27:34.050083824 -0700
 @@ -32,6 +32,11 @@
  
  #include "defs.h"
@@ -197,9 +271,18 @@
  #ifdef LINUX
  #define _LINUX_SOCKET_H
  #define _LINUX_FS_H
-diff -r -u -d /Users/jeffbrown/Downloads/strace-4.6/time.c ./time.c
---- /Users/jeffbrown/Downloads/strace-4.6/time.c	2011-03-03 18:08:02.000000000 -0800
-+++ ./time.c	2012-03-02 15:23:05.000000000 -0800
+@@ -83,7 +88,7 @@
+ #include <linux/utsname.h>
+ #endif
+ 
+-#ifdef HAVE_ASM_SYSMIPS_H
++#ifdef MIPS
+ #include <asm/sysmips.h>
+ #endif
+ 
+diff -r -u -d /tmp/strace-4.6/time.c ./time.c
+--- /tmp/strace-4.6/time.c	2011-03-03 18:08:02.000000000 -0800
++++ ./time.c	2013-01-04 12:26:34.987221830 -0800
 @@ -33,7 +33,11 @@
  
  #ifdef LINUX
@@ -212,9 +295,9 @@
  #include <linux/ioctl.h>
  #include <linux/rtc.h>
  
-diff -r -u -d /Users/jeffbrown/Downloads/strace-4.6/util.c ./util.c
---- /Users/jeffbrown/Downloads/strace-4.6/util.c	2011-03-03 18:08:02.000000000 -0800
-+++ ./util.c	2012-03-02 15:01:45.000000000 -0800
+diff -r -u -d /tmp/strace-4.6/util.c ./util.c
+--- /tmp/strace-4.6/util.c	2011-03-03 18:08:02.000000000 -0800
++++ ./util.c	2013-03-21 17:57:25.519150107 -0700
 @@ -37,7 +37,9 @@
  
  #include <signal.h>
@@ -225,14 +308,3 @@
  #include <sys/param.h>
  #include <fcntl.h>
  #if HAVE_SYS_UIO_H
-@@ -49,6 +51,10 @@
- #include <link.h>
- #endif /* SUNOS4 */
- 
-+#ifdef HAVE_ANDROID_OS
-+#include "syscall-android.h"
-+#endif
-+
- #if defined(linux) && (__GLIBC__ < 2 || (__GLIBC__ == 2 && __GLIBC_MINOR__ < 1))
- #include <linux/ptrace.h>
- #endif
diff --git a/README-Android b/README-Android
index 0f45fe6..3d594d6 100644
--- a/README-Android
+++ b/README-Android
@@ -11,4 +11,4 @@
 
 This file can be regenerated using:
 
-diff -r -u -d path-to-original-unmodified-strace . | grep -v "Only in" > android.patch
+diff -r -u -d path-to-original-unmodified-strace . | grep -v "Only in" > Android.patch
diff --git a/syscall-android.h b/syscall-android.h
deleted file mode 100644
index ec2671d..0000000
--- a/syscall-android.h
+++ /dev/null
@@ -1,295 +0,0 @@
-/* Generated at libc build time from kernel syscall list.  */
-
-#ifndef _SYSCALL_H
-//# error "Never use <bits/syscall.h> directly; include <sys/syscall.h> instead."
-#endif
-
-#define SYS__llseek __NR__llseek
-#define SYS__newselect __NR__newselect
-#define SYS__sysctl __NR__sysctl
-#define SYS_access __NR_access
-#define SYS_acct __NR_acct
-#define SYS_add_key __NR_add_key
-#define SYS_adjtimex __NR_adjtimex
-#define SYS_afs_syscall __NR_afs_syscall
-#define SYS_alarm __NR_alarm
-#define SYS_bdflush __NR_bdflush
-#define SYS_break __NR_break
-#define SYS_brk __NR_brk
-#define SYS_capget __NR_capget
-#define SYS_capset __NR_capset
-#define SYS_chdir __NR_chdir
-#define SYS_chmod __NR_chmod
-#define SYS_chown __NR_chown
-#define SYS_chown32 __NR_chown32
-#define SYS_chroot __NR_chroot
-#define SYS_clock_getres __NR_clock_getres
-#define SYS_clock_gettime __NR_clock_gettime
-#define SYS_clock_nanosleep __NR_clock_nanosleep
-#define SYS_clock_settime __NR_clock_settime
-#define SYS_clone __NR_clone
-#define SYS_close __NR_close
-#define SYS_creat __NR_creat
-#define SYS_create_module __NR_create_module
-#define SYS_delete_module __NR_delete_module
-#define SYS_dup __NR_dup
-#define SYS_dup2 __NR_dup2
-#define SYS_epoll_create __NR_epoll_create
-#define SYS_epoll_ctl __NR_epoll_ctl
-#define SYS_epoll_wait __NR_epoll_wait
-#define SYS_execve __NR_execve
-#define SYS_exit __NR_exit
-#define SYS_exit_group __NR_exit_group
-#define SYS_fadvise64 __NR_fadvise64
-#define SYS_fadvise64_64 __NR_fadvise64_64
-#define SYS_fchdir __NR_fchdir
-#define SYS_fchmod __NR_fchmod
-#define SYS_fchown __NR_fchown
-#define SYS_fchown32 __NR_fchown32
-#define SYS_fcntl __NR_fcntl
-#define SYS_fcntl64 __NR_fcntl64
-#define SYS_fdatasync __NR_fdatasync
-#define SYS_fgetxattr __NR_fgetxattr
-#define SYS_flistxattr __NR_flistxattr
-#define SYS_flock __NR_flock
-#define SYS_fork __NR_fork
-#define SYS_fremovexattr __NR_fremovexattr
-#define SYS_fsetxattr __NR_fsetxattr
-#define SYS_fstat __NR_fstat
-#define SYS_fstat64 __NR_fstat64
-#define SYS_fstatfs __NR_fstatfs
-#define SYS_fstatfs64 __NR_fstatfs64
-#define SYS_fsync __NR_fsync
-#define SYS_ftime __NR_ftime
-#define SYS_ftruncate __NR_ftruncate
-#define SYS_ftruncate64 __NR_ftruncate64
-#define SYS_futex __NR_futex
-#define SYS_get_kernel_syms __NR_get_kernel_syms
-#define SYS_get_mempolicy __NR_get_mempolicy
-#define SYS_get_thread_area __NR_get_thread_area
-#define SYS_getcwd __NR_getcwd
-#define SYS_getdents __NR_getdents
-#define SYS_getdents64 __NR_getdents64
-#define SYS_getegid __NR_getegid
-#define SYS_getegid32 __NR_getegid32
-#define SYS_geteuid __NR_geteuid
-#define SYS_geteuid32 __NR_geteuid32
-#define SYS_getgid __NR_getgid
-#define SYS_getgid32 __NR_getgid32
-#define SYS_getgroups __NR_getgroups
-#define SYS_getgroups32 __NR_getgroups32
-#define SYS_getitimer __NR_getitimer
-#define SYS_getpgid __NR_getpgid
-#define SYS_getpgrp __NR_getpgrp
-#define SYS_getpid __NR_getpid
-//#define SYS_getpmsg __NR_getpmsg
-#define SYS_getppid __NR_getppid
-#define SYS_getpriority __NR_getpriority
-#define SYS_getresgid __NR_getresgid
-#define SYS_getresgid32 __NR_getresgid32
-#define SYS_getresuid __NR_getresuid
-#define SYS_getresuid32 __NR_getresuid32
-#define SYS_getrlimit __NR_getrlimit
-#define SYS_getrusage __NR_getrusage
-#define SYS_getsid __NR_getsid
-#define SYS_gettid __NR_gettid
-#define SYS_gettimeofday __NR_gettimeofday
-#define SYS_getuid __NR_getuid
-#define SYS_getuid32 __NR_getuid32
-#define SYS_getxattr __NR_getxattr
-#define SYS_gtty __NR_gtty
-#define SYS_idle __NR_idle
-#define SYS_init_module __NR_init_module
-#define SYS_io_cancel __NR_io_cancel
-#define SYS_io_destroy __NR_io_destroy
-#define SYS_io_getevents __NR_io_getevents
-#define SYS_io_setup __NR_io_setup
-#define SYS_io_submit __NR_io_submit
-#define SYS_ioctl __NR_ioctl
-#define SYS_ioperm __NR_ioperm
-#define SYS_iopl __NR_iopl
-#define SYS_ipc __NR_ipc
-#define SYS_keyctl __NR_keyctl
-#define SYS_kill __NR_kill
-#define SYS_lchown __NR_lchown
-#define SYS_lchown32 __NR_lchown32
-#define SYS_lgetxattr __NR_lgetxattr
-#define SYS_link __NR_link
-#define SYS_listxattr __NR_listxattr
-#define SYS_llistxattr __NR_llistxattr
-#define SYS_lock __NR_lock
-#define SYS_lookup_dcookie __NR_lookup_dcookie
-#define SYS_lremovexattr __NR_lremovexattr
-#define SYS_lseek __NR_lseek
-#define SYS_lsetxattr __NR_lsetxattr
-#define SYS_lstat __NR_lstat
-#define SYS_lstat64 __NR_lstat64
-#define SYS_madvise __NR_madvise
-#define SYS_madvise1 __NR_madvise1
-#define SYS_mbind __NR_mbind
-#define SYS_mincore __NR_mincore
-#define SYS_mkdir __NR_mkdir
-#define SYS_mknod __NR_mknod
-#define SYS_mlock __NR_mlock
-#define SYS_mlockall __NR_mlockall
-#define SYS_mmap __NR_mmap
-#define SYS_mmap2 __NR_mmap2
-#define SYS_modify_ldt __NR_modify_ldt
-#define SYS_mount __NR_mount
-#define SYS_mprotect __NR_mprotect
-#define SYS_mpx __NR_mpx
-#define SYS_mq_getsetattr __NR_mq_getsetattr
-#define SYS_mq_notify __NR_mq_notify
-#define SYS_mq_open __NR_mq_open
-#define SYS_mq_timedreceive __NR_mq_timedreceive
-#define SYS_mq_timedsend __NR_mq_timedsend
-#define SYS_mq_unlink __NR_mq_unlink
-#define SYS_mremap __NR_mremap
-#define SYS_msync __NR_msync
-#define SYS_munlock __NR_munlock
-#define SYS_munlockall __NR_munlockall
-#define SYS_munmap __NR_munmap
-#define SYS_nanosleep __NR_nanosleep
-#define SYS_nfsservctl __NR_nfsservctl
-#define SYS_nice __NR_nice
-#define SYS_oldfstat __NR_oldfstat
-#define SYS_oldlstat __NR_oldlstat
-#define SYS_oldolduname __NR_oldolduname
-#define SYS_oldstat __NR_oldstat
-#define SYS_olduname __NR_olduname
-#define SYS_open __NR_open
-#define SYS_pause __NR_pause
-#define SYS_personality __NR_personality
-#define SYS_pipe __NR_pipe
-#define SYS_pivot_root __NR_pivot_root
-#define SYS_poll __NR_poll
-#define SYS_prctl __NR_prctl
-#define SYS_pread64 __NR_pread64
-#define SYS_prof __NR_prof
-#define SYS_profil __NR_profil
-#define SYS_ptrace __NR_ptrace
-//#define SYS_putpmsg __NR_putpmsg
-#define SYS_pwrite64 __NR_pwrite64
-#define SYS_query_module __NR_query_module
-#define SYS_quotactl __NR_quotactl
-#define SYS_read __NR_read
-#define SYS_readahead __NR_readahead
-#define SYS_readdir __NR_readdir
-#define SYS_readlink __NR_readlink
-#define SYS_readv __NR_readv
-#define SYS_reboot __NR_reboot
-#define SYS_remap_file_pages __NR_remap_file_pages
-#define SYS_removexattr __NR_removexattr
-#define SYS_rename __NR_rename
-#define SYS_request_key __NR_request_key
-#define SYS_restart_syscall __NR_restart_syscall
-#define SYS_rmdir __NR_rmdir
-#define SYS_rt_sigaction __NR_rt_sigaction
-#define SYS_rt_sigpending __NR_rt_sigpending
-#define SYS_rt_sigprocmask __NR_rt_sigprocmask
-#define SYS_rt_sigqueueinfo __NR_rt_sigqueueinfo
-#define SYS_rt_sigreturn __NR_rt_sigreturn
-#define SYS_rt_sigsuspend __NR_rt_sigsuspend
-#define SYS_rt_sigtimedwait __NR_rt_sigtimedwait
-#define SYS_sched_get_priority_max __NR_sched_get_priority_max
-#define SYS_sched_get_priority_min __NR_sched_get_priority_min
-#define SYS_sched_getaffinity __NR_sched_getaffinity
-#define SYS_sched_getparam __NR_sched_getparam
-#define SYS_sched_getscheduler __NR_sched_getscheduler
-#define SYS_sched_rr_get_interval __NR_sched_rr_get_interval
-#define SYS_sched_setaffinity __NR_sched_setaffinity
-#define SYS_sched_setparam __NR_sched_setparam
-#define SYS_sched_setscheduler __NR_sched_setscheduler
-#define SYS_sched_yield __NR_sched_yield
-#define SYS_select __NR_select
-#define SYS_sendfile __NR_sendfile
-#define SYS_sendfile64 __NR_sendfile64
-#define SYS_set_mempolicy __NR_set_mempolicy
-#define SYS_set_thread_area __NR_set_thread_area
-#define SYS_set_tid_address __NR_set_tid_address
-#define SYS_setdomainname __NR_setdomainname
-#define SYS_setfsgid __NR_setfsgid
-#define SYS_setfsgid32 __NR_setfsgid32
-#define SYS_setfsuid __NR_setfsuid
-#define SYS_setfsuid32 __NR_setfsuid32
-#define SYS_setgid __NR_setgid
-#define SYS_setgid32 __NR_setgid32
-#define SYS_setgroups __NR_setgroups
-#define SYS_setgroups32 __NR_setgroups32
-#define SYS_sethostname __NR_sethostname
-#define SYS_setitimer __NR_setitimer
-#define SYS_setpgid __NR_setpgid
-#define SYS_setpriority __NR_setpriority
-#define SYS_setregid __NR_setregid
-#define SYS_setregid32 __NR_setregid32
-#define SYS_setresgid __NR_setresgid
-#define SYS_setresgid32 __NR_setresgid32
-#define SYS_setresuid __NR_setresuid
-#define SYS_setresuid32 __NR_setresuid32
-#define SYS_setreuid __NR_setreuid
-#define SYS_setreuid32 __NR_setreuid32
-#define SYS_setrlimit __NR_setrlimit
-#define SYS_setsid __NR_setsid
-#define SYS_settimeofday __NR_settimeofday
-#define SYS_setuid __NR_setuid
-#define SYS_setuid32 __NR_setuid32
-#define SYS_setxattr __NR_setxattr
-#define SYS_sgetmask __NR_sgetmask
-#define SYS_sigaction __NR_sigaction
-#define SYS_sigaltstack __NR_sigaltstack
-#define SYS_signal __NR_signal
-#define SYS_sigpending __NR_sigpending
-#define SYS_sigprocmask __NR_sigprocmask
-#define SYS_sigreturn __NR_sigreturn
-#define SYS_sigsuspend __NR_sigsuspend
-#define SYS_socketcall __NR_socketcall
-#define SYS_ssetmask __NR_ssetmask
-#define SYS_stat __NR_stat
-#define SYS_stat64 __NR_stat64
-#define SYS_statfs __NR_statfs
-#define SYS_statfs64 __NR_statfs64
-#define SYS_stime __NR_stime
-#define SYS_stty __NR_stty
-#define SYS_swapoff __NR_swapoff
-#define SYS_swapon __NR_swapon
-#define SYS_symlink __NR_symlink
-#define SYS_sync __NR_sync
-#define SYS_sys_kexec_load __NR_sys_kexec_load
-#define SYS_sysfs __NR_sysfs
-#define SYS_sysinfo __NR_sysinfo
-#define SYS_syslog __NR_syslog
-#define SYS_tgkill __NR_tgkill
-#define SYS_time __NR_time
-#define SYS_timer_create __NR_timer_create
-#define SYS_timer_delete __NR_timer_delete
-#define SYS_timer_getoverrun __NR_timer_getoverrun
-#define SYS_timer_gettime __NR_timer_gettime
-#define SYS_timer_settime __NR_timer_settime
-#define SYS_times __NR_times
-#define SYS_tkill __NR_tkill
-#define SYS_truncate __NR_truncate
-#define SYS_truncate64 __NR_truncate64
-#define SYS_ugetrlimit __NR_ugetrlimit
-#define SYS_ulimit __NR_ulimit
-#define SYS_umask __NR_umask
-#define SYS_umount __NR_umount
-#define SYS_umount2 __NR_umount2
-#define SYS_uname __NR_uname
-#define SYS_unlink __NR_unlink
-#define SYS_uselib __NR_uselib
-#define SYS_ustat __NR_ustat
-#define SYS_utime __NR_utime
-#define SYS_utimes __NR_utimes
-#ifdef __NR_vfork
-#define SYS_vfork __NR_vfork
-#endif
-#define SYS_vhangup __NR_vhangup
-#define SYS_vm86 __NR_vm86
-#define SYS_vm86old __NR_vm86old
-#define SYS_vserver __NR_vserver
-#define SYS_wait4 __NR_wait4
-#define SYS_waitid __NR_waitid
-//ANDROID
-//#define SYS_waitpid __NR_waitpid
-#define SYS_write __NR_write
-#define SYS_writev __NR_writev
diff --git a/syscall.c b/syscall.c
index 34af217..092561c 100644
--- a/syscall.c
+++ b/syscall.c
@@ -44,10 +44,6 @@
 #include <sys/syscall.h>
 #include <sys/param.h>
 
-#ifdef HAVE_ANDROID_OS
-#include "syscall-android.h"
-#endif
-
 #ifdef HAVE_SYS_REG_H
 #include <sys/reg.h>
 #ifndef PTRACE_PEEKUSR
diff --git a/util.c b/util.c
index 81f6801..d964bf3 100644
--- a/util.c
+++ b/util.c
@@ -51,10 +51,6 @@
 #include <link.h>
 #endif /* SUNOS4 */
 
-#ifdef HAVE_ANDROID_OS
-#include "syscall-android.h"
-#endif
-
 #if defined(linux) && (__GLIBC__ < 2 || (__GLIBC__ == 2 && __GLIBC_MINOR__ < 1))
 #include <linux/ptrace.h>
 #endif
