patches/strace/4.5.19/120-fix-disabled-largefile-syscalls.patch
author Joachim Nilsson <jocke@vmlinux.org>
Fri Jan 01 12:17:39 2010 +0100 (2010-01-01)
changeset 1671 08a5129e6eb0
permissions -rw-r--r--
debug/strace: fix strace 4.5.19 to properly build with latest Linux kernels

Here's a couple of patches to get strace 4.5.19 to configure and build
properly with the latest kernel headers. Not pretty, but hopefully
enough while we wait for 4.5.20 to be released.

With the current strace-4.5.19 patches I failed to get the configure
script running even on my host environment. Also, when cross building
the configure script needs to look for the proper system headers to be
able to properly set HAVE_LINUX_NETLINK_H. Otherwise you get:

[EXTRA] Building strace
[ERROR] /home/jocke/x-tools/targets/src/strace-4.5.19/net.c:976:
error: field 'nl' has incomplete type
[ERROR] make[2]: *** [net.o] Error 1
[ERROR] make[1]: *** [all] Error 2

The fix was simple, backport a change set from the git[1] tree and run
autoreconf to update the configure script.

[1] - http://strace.git.sourceforge.net/git/gitweb.cgi?p=strace/strace;a=commit;h=f0df31e71a58c6e79ba77c1a9d84b2f38d44bec7
     1 diff -durN strace-4.5.19.orig/syscall.c strace-4.5.19/syscall.c
     2 --- strace-4.5.19.orig/syscall.c	2009-10-28 18:47:18.000000000 +0100
     3 +++ strace-4.5.19/syscall.c	2009-10-28 18:47:18.000000000 +0100
     4 @@ -110,6 +110,18 @@
     5  #define TP TRACE_PROCESS
     6  #define TS TRACE_SIGNAL
     7  
     8 +#ifndef HAVE_STATFS64
     9 +/*
    10 + * Ugly hacks for systems that do not have LFS
    11 + */
    12 +
    13 +#define sys_truncate64  sys_truncate
    14 +#define sys_ftruncate64 sys_ftruncate
    15 +#define sys_getdents64  sys_getdents
    16 +#define sys_statfs64    sys_statfs
    17 +#define sys_fstatfs64   sys_fstatfs
    18 +#endif
    19 +
    20  static const struct sysent sysent0[] = {
    21  #include "syscallent.h"
    22  };