patches/strace/4.5.19/160-fix-check-for-linux-netlink.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
jocke@1671
     1
Dmitry V. Levin [Tue, 3 Nov 2009 16:49:49 +0000]
jocke@1671
     2
jocke@1671
     3
Fix check for linux/netlink.h on Linux 2.6.32-rc5+
jocke@1671
     4
jocke@1671
     5
* configure.ac (AC_CHECK_HEADERS): In check for linux/netlink.h, include 
jocke@1671
     6
  sys/socket.h instead of linux/socket.h beforehand.
jocke@1671
     7
jocke@1671
     8
diff --git a/configure.ac b/configure.ac
jocke@1671
     9
--- a/configure.ac
jocke@1671
    10
+++ b/configure.ac
jocke@1671
    11
@@ -258,7 +258,7 @@ AC_CHECK_HEADERS([ \
jocke@1671
    12
 ], [], [])
jocke@1671
    13
 AC_CHECK_HEADERS([linux/icmp.h linux/in6.h linux/netlink.h linux/if_packet.h],
jocke@1671
    14
                  [], [], [#include <stddef.h>
jocke@1671
    15
-#include <linux/socket.h>])
jocke@1671
    16
+#include <sys/socket.h>])
jocke@1671
    17
 AC_CHECK_HEADERS([asm/sigcontext.h], [], [], [#include <signal.h>])
jocke@1671
    18
 AC_CHECK_TYPES([struct sigcontext_struct,
jocke@1671
    19
 		struct sigcontext],,, [#include <signal.h>])