Robert P. J. DAY says:
Add support for the selection of strace-4.5.16, including an updated
set of patches from strace-4.5.15.
1.1 --- a/config/debug/strace.in Fri Feb 15 21:07:30 2008 +0000
1.2 +++ b/config/debug/strace.in Fri Feb 15 21:18:10 2008 +0000
1.3 @@ -25,6 +25,10 @@
1.4 bool
1.5 prompt "4.5.15"
1.6
1.7 +config STRACE_V_4_5_16
1.8 + bool
1.9 + prompt "4.5.16"
1.10 +
1.11 # CT_INSERT_VERSION_ABOVE
1.12 # Don't remove above line!
1.13 endchoice
1.14 @@ -34,6 +38,7 @@
1.15 default "4.5" if STRACE_V_4_5
1.16 default "4.5.14" if STRACE_V_4_5_14
1.17 default "4.5.15" if STRACE_V_4_5_15
1.18 + default "4.5.16" if STRACE_V_4_5_16
1.19 # CT_INSERT_VERSION_STRING_ABOVE
1.20 # # Don't remove above line!
1.21
2.1 --- a/docs/CREDITS Fri Feb 15 21:07:30 2008 +0000
2.2 +++ b/docs/CREDITS Fri Feb 15 21:18:10 2008 +0000
2.3 @@ -9,7 +9,7 @@
2.4 And in order of appearance on the crossgcc ML:
2.5
2.6 Allan CLARK for his investigations on building toolchains on MacOS-X.
2.7 - Allan made extensive tests of the first alpha of crosstool-NG-ng on his
2.8 + Allan made extensive tests of the first alpha of crosstool-NG on his
2.9 MacOS-X, and unveiled some bash-2.05 weirdness.
2.10
2.11 Enrico WEIGELT
2.12 @@ -23,6 +23,7 @@
2.13 - 'sanitised' patches for binutils-2.17
2.14 - patches for glibc-2.5
2.15 - misc patches, typos and eye candy
2.16 + - too many to list any more!
2.17
2.18 Al Stone:
2.19 - initial ia64 support
3.1 --- /dev/null Thu Jan 01 00:00:00 1970 +0000
3.2 +++ b/patches/strace/4.5.16/100-strace-autoreconf.patch Fri Feb 15 21:18:10 2008 +0000
3.3 @@ -0,0 +1,77 @@
3.4 +diff -dur strace-4.5.16.orig/configure strace-4.5.16/configure
3.5 +--- strace-4.5.16.orig/configure 2007-01-11 23:23:33.000000000 +0100
3.6 ++++ strace-4.5.16/configure 2007-07-14 19:18:43.000000000 +0200
3.7 +@@ -5808,6 +5777,73 @@
3.8 +
3.9 + fi
3.10 +
3.11 ++echo "$as_me:$LINENO: checking for statfs64 in sys/(statfs|vfs).h" >&5
3.12 ++echo $ECHO_N "checking for statfs64 in sys/(statfs|vfs).h... $ECHO_C" >&6
3.13 ++if test "${ac_cv_type_statfs64+set}" = set; then
3.14 ++ echo $ECHO_N "(cached) $ECHO_C" >&6
3.15 ++else
3.16 ++ cat >conftest.$ac_ext <<_ACEOF
3.17 ++/* confdefs.h. */
3.18 ++_ACEOF
3.19 ++cat confdefs.h >>conftest.$ac_ext
3.20 ++cat >>conftest.$ac_ext <<_ACEOF
3.21 ++/* end confdefs.h. */
3.22 ++#ifdef LINUX
3.23 ++#include <linux/types.h>
3.24 ++#include <sys/statfs.h>
3.25 ++#else
3.26 ++#include <sys/vfs.h>
3.27 ++#endif
3.28 ++int
3.29 ++main ()
3.30 ++{
3.31 ++struct statfs64 st;
3.32 ++ ;
3.33 ++ return 0;
3.34 ++}
3.35 ++_ACEOF
3.36 ++rm -f conftest.$ac_objext
3.37 ++if { (eval echo "$as_me:$LINENO: \"$ac_compile\"") >&5
3.38 ++ (eval $ac_compile) 2>conftest.er1
3.39 ++ ac_status=$?
3.40 ++ grep -v '^ *+' conftest.er1 >conftest.err
3.41 ++ rm -f conftest.er1
3.42 ++ cat conftest.err >&5
3.43 ++ echo "$as_me:$LINENO: \$? = $ac_status" >&5
3.44 ++ (exit $ac_status); } &&
3.45 ++ { ac_try='test -z "$ac_c_werror_flag" || test ! -s conftest.err'
3.46 ++ { (eval echo "$as_me:$LINENO: \"$ac_try\"") >&5
3.47 ++ (eval $ac_try) 2>&5
3.48 ++ ac_status=$?
3.49 ++ echo "$as_me:$LINENO: \$? = $ac_status" >&5
3.50 ++ (exit $ac_status); }; } &&
3.51 ++ { ac_try='test -s conftest.$ac_objext'
3.52 ++ { (eval echo "$as_me:$LINENO: \"$ac_try\"") >&5
3.53 ++ (eval $ac_try) 2>&5
3.54 ++ ac_status=$?
3.55 ++ echo "$as_me:$LINENO: \$? = $ac_status" >&5
3.56 ++ (exit $ac_status); }; }; then
3.57 ++ ac_cv_type_statfs64=yes
3.58 ++else
3.59 ++ echo "$as_me: failed program was:" >&5
3.60 ++sed 's/^/| /' conftest.$ac_ext >&5
3.61 ++
3.62 ++ac_cv_type_statfs64=no
3.63 ++fi
3.64 ++rm -f conftest.err conftest.$ac_objext conftest.$ac_ext
3.65 ++fi
3.66 ++
3.67 ++echo "$as_me:$LINENO: result: $ac_cv_type_statfs64" >&5
3.68 ++echo "${ECHO_T}$ac_cv_type_statfs64" >&6
3.69 ++if test "$ac_cv_type_statfs64" = yes
3.70 ++then
3.71 ++
3.72 ++cat >>confdefs.h <<\_ACEOF
3.73 ++#define HAVE_STATFS64 1
3.74 ++_ACEOF
3.75 ++
3.76 ++fi
3.77 ++
3.78 +
3.79 + { echo "$as_me:$LINENO: checking return type of signal handlers" >&5
3.80 + echo $ECHO_N "checking return type of signal handlers... $ECHO_C" >&6; }
4.1 --- /dev/null Thu Jan 01 00:00:00 1970 +0000
4.2 +++ b/patches/strace/4.5.16/150-strace-dont-use-REG_SYSCALL-for-sh.patch Fri Feb 15 21:18:10 2008 +0000
4.3 @@ -0,0 +1,11 @@
4.4 +diff -dur strace-4.5.16.orig/process.c strace-4.5.16/process.c
4.5 +--- strace-4.5.16.orig/process.c 2007-01-11 23:08:38.000000000 +0100
4.6 ++++ strace-4.5.16/process.c 2007-07-14 19:19:58.000000000 +0200
4.7 +@@ -2685,7 +2685,6 @@
4.8 + { 4*REG_GBR, "4*REG_GBR" },
4.9 + { 4*REG_MACH, "4*REG_MACH" },
4.10 + { 4*REG_MACL, "4*REG_MACL" },
4.11 +- { 4*REG_SYSCALL, "4*REG_SYSCALL" },
4.12 + { 4*REG_FPUL, "4*REG_FPUL" },
4.13 + { 4*REG_FPREG0, "4*REG_FPREG0" },
4.14 + { 4*(REG_FPREG0+1), "4*REG_FPREG1" },
5.1 --- /dev/null Thu Jan 01 00:00:00 1970 +0000
5.2 +++ b/patches/strace/4.5.16/200-strace-fix-arm-bad-syscall.patch Fri Feb 15 21:18:10 2008 +0000
5.3 @@ -0,0 +1,19 @@
5.4 +diff -dur strace-4.5.16.orig/syscall.c strace-4.5.16/syscall.c
5.5 +--- strace-4.5.16.orig/syscall.c 2006-12-21 23:13:33.000000000 +0100
5.6 ++++ strace-4.5.16/syscall.c 2007-07-14 19:21:44.000000000 +0200
5.7 +@@ -1045,6 +1045,15 @@
5.8 + /*
5.9 + * Note: we only deal with only 32-bit CPUs here.
5.10 + */
5.11 ++
5.12 ++ if (!(tcp->flags & TCB_INSYSCALL) &&
5.13 ++ (tcp->flags & TCB_WAITEXECVE)) {
5.14 ++ /* caught a fake syscall from the execve's exit */
5.15 ++ tcp->flags &= ~TCB_WAITEXECVE;
5.16 ++ return 0;
5.17 ++ }
5.18 ++
5.19 ++
5.20 + if (regs.ARM_cpsr & 0x20) {
5.21 + /*
5.22 + * Get the Thumb-mode system call number
6.1 --- /dev/null Thu Jan 01 00:00:00 1970 +0000
6.2 +++ b/patches/strace/4.5.16/250-strace-fix-disabled-largefile-syscalls.patch Fri Feb 15 21:18:10 2008 +0000
6.3 @@ -0,0 +1,22 @@
6.4 +diff -dur strace-4.5.16.orig/syscall.c strace-4.5.16/syscall.c
6.5 +--- strace-4.5.16.orig/syscall.c 2007-07-14 19:21:44.000000000 +0200
6.6 ++++ strace-4.5.16/syscall.c 2007-07-14 19:22:49.000000000 +0200
6.7 +@@ -125,6 +125,18 @@
6.8 + #define TP TRACE_PROCESS
6.9 + #define TS TRACE_SIGNAL
6.10 +
6.11 ++#ifndef HAVE_STATFS64
6.12 ++/*
6.13 ++ * Ugly hacks for systems that do not have LFS
6.14 ++ */
6.15 ++
6.16 ++#define sys_truncate64 sys_truncate
6.17 ++#define sys_ftruncate64 sys_ftruncate
6.18 ++#define sys_getdents64 sys_getdents
6.19 ++#define sys_statfs64 sys_statfs
6.20 ++#define sys_fstatfs64 sys_fstatfs
6.21 ++#endif
6.22 ++
6.23 + static const struct sysent sysent0[] = {
6.24 + #include "syscallent.h"
6.25 + };
7.1 --- /dev/null Thu Jan 01 00:00:00 1970 +0000
7.2 +++ b/patches/strace/4.5.16/350-strace-statfs64-check.patch Fri Feb 15 21:18:10 2008 +0000
7.3 @@ -0,0 +1,53 @@
7.4 +diff -dur strace-4.5.16.orig/acinclude.m4 strace-4.5.16/acinclude.m4
7.5 +--- strace-4.5.16.orig/acinclude.m4 2004-04-14 04:21:01.000000000 +0200
7.6 ++++ strace-4.5.16/acinclude.m4 2007-07-14 19:25:25.000000000 +0200
7.7 +@@ -210,6 +210,26 @@
7.8 + fi
7.9 + ])
7.10 +
7.11 ++dnl ### A macro to determine whether statfs64 is defined.
7.12 ++AC_DEFUN([AC_STATFS64],
7.13 ++[AC_MSG_CHECKING(for statfs64 in sys/(statfs|vfs).h)
7.14 ++AC_CACHE_VAL(ac_cv_type_statfs64,
7.15 ++[AC_COMPILE_IFELSE([AC_LANG_PROGRAM([[#ifdef LINUX
7.16 ++#include <linux/types.h>
7.17 ++#include <sys/statfs.h>
7.18 ++#else
7.19 ++#include <sys/vfs.h>
7.20 ++#endif]], [[struct statfs64 st;]])],[ac_cv_type_statfs64=yes],[ac_cv_type_statfs64=no])])
7.21 ++AC_MSG_RESULT($ac_cv_type_statfs64)
7.22 ++if test "$ac_cv_type_statfs64" = yes
7.23 ++then
7.24 ++ AC_DEFINE([HAVE_STATFS64], 1,
7.25 ++[Define if statfs64 is available in sys/statfs.h or sys/vfs.h.])
7.26 ++fi
7.27 ++])
7.28 ++
7.29 ++
7.30 ++
7.31 + dnl ### A macro to determine if off_t is a long long
7.32 + AC_DEFUN([AC_OFF_T_IS_LONG_LONG],
7.33 + [AC_MSG_CHECKING(for long long off_t)
7.34 +diff -dur strace-4.5.16.orig/configure.ac strace-4.5.16/configure.ac
7.35 +--- strace-4.5.16.orig/configure.ac 2007-01-11 12:37:55.000000000 +0100
7.36 ++++ strace-4.5.16/configure.ac 2007-07-14 19:25:25.000000000 +0200
7.37 +@@ -169,6 +169,7 @@
7.38 + struct stat.st_level,
7.39 + struct stat.st_rdev])
7.40 + AC_STAT64
7.41 ++AC_STATFS64
7.42 +
7.43 + AC_TYPE_SIGNAL
7.44 + AC_TYPE_UID_T
7.45 +diff -dur strace-4.5.16.orig/file.c strace-4.5.16/file.c
7.46 +--- strace-4.5.16.orig/file.c 2007-01-15 21:25:52.000000000 +0100
7.47 ++++ strace-4.5.16/file.c 2007-07-14 19:25:25.000000000 +0200
7.48 +@@ -1636,7 +1636,7 @@
7.49 + return 0;
7.50 + }
7.51 +
7.52 +-#ifdef LINUX
7.53 ++#ifdef HAVE_STATFS64
7.54 + static void
7.55 + printstatfs64(tcp, addr)
7.56 + struct tcb *tcp;
8.1 --- /dev/null Thu Jan 01 00:00:00 1970 +0000
8.2 +++ b/patches/strace/4.5.16/400-strace-superh-update.ac.patch Fri Feb 15 21:18:10 2008 +0000
8.3 @@ -0,0 +1,22 @@
8.4 +diff -dur strace-4.5.16.orig/configure.ac strace-4.5.16/configure.ac
8.5 +--- strace-4.5.16.orig/configure.ac 2007-07-14 19:25:25.000000000 +0200
8.6 ++++ strace-4.5.16/configure.ac 2007-07-14 19:27:35.000000000 +0200
8.7 +@@ -91,14 +91,14 @@
8.8 + arch=hppa
8.9 + AC_DEFINE([HPPA], 1, [Define for the HPPA architecture.])
8.10 + ;;
8.11 +-sh)
8.12 +- arch=sh
8.13 +- AC_DEFINE([SH], 1, [Define for the SH architecture.])
8.14 +- ;;
8.15 + sh64)
8.16 + arch=sh64
8.17 + AC_DEFINE([SH64], 1, [Define for the SH64 architecture.])
8.18 + ;;
8.19 ++sh*)
8.20 ++ arch=sh
8.21 ++ AC_DEFINE([SH], 1, [Define for the SH architecture.])
8.22 ++ ;;
8.23 + x86?64*)
8.24 + arch=x86_64
8.25 + AC_DEFINE([X86_64], 1, [Define for the AMD x86-64 architecture.])
9.1 --- /dev/null Thu Jan 01 00:00:00 1970 +0000
9.2 +++ b/patches/strace/4.5.16/450-strace-undef-CTL_PROC.patch Fri Feb 15 21:18:10 2008 +0000
9.3 @@ -0,0 +1,13 @@
9.4 +diff -dur strace-4.5.16.orig/system.c strace-4.5.16/system.c
9.5 +--- strace-4.5.16.orig/system.c 2007-01-17 00:22:36.000000000 +0100
9.6 ++++ strace-4.5.16/system.c 2007-07-14 19:28:41.000000000 +0200
9.7 +@@ -1612,7 +1612,9 @@
9.8 + { CTL_KERN, "CTL_KERN" },
9.9 + { CTL_VM, "CTL_VM" },
9.10 + { CTL_NET, "CTL_NET" },
9.11 ++#ifdef CTL_PROC
9.12 + { CTL_PROC, "CTL_PROC" },
9.13 ++#endif
9.14 + { CTL_FS, "CTL_FS" },
9.15 + { CTL_DEBUG, "CTL_DEBUG" },
9.16 + { CTL_DEV, "CTL_DEV" },
10.1 --- /dev/null Thu Jan 01 00:00:00 1970 +0000
10.2 +++ b/patches/strace/4.5.16/500-strace-undef-PACKET_MEMBERSHIP.patch Fri Feb 15 21:18:10 2008 +0000
10.3 @@ -0,0 +1,16 @@
10.4 +diff -dur strace-4.5.16.orig/net.c strace-4.5.16/net.c
10.5 +--- strace-4.5.16.orig/net.c 2006-12-13 20:57:23.000000000 +0100
10.6 ++++ strace-4.5.16/net.c 2007-07-14 19:29:36.000000000 +0200
10.7 +@@ -800,8 +800,12 @@
10.8 +
10.9 + #ifdef SOL_PACKET
10.10 + static const struct xlat sockpacketoptions[] = {
10.11 ++#if defined(PACKET_ADD_MEMBERSHIP)
10.12 + { PACKET_ADD_MEMBERSHIP, "PACKET_ADD_MEMBERSHIP" },
10.13 ++#endif
10.14 ++#if defined(PACKET_DROP_MEMBERSHIP)
10.15 + { PACKET_DROP_MEMBERSHIP, "PACKET_DROP_MEMBERSHIP"},
10.16 ++#endif
10.17 + #if defined(PACKET_RECV_OUTPUT)
10.18 + { PACKET_RECV_OUTPUT, "PACKET_RECV_OUTPUT" },
10.19 + #endif
11.1 --- /dev/null Thu Jan 01 00:00:00 1970 +0000
11.2 +++ b/patches/strace/4.5.16/550-strace-undef-syscall.patch Fri Feb 15 21:18:10 2008 +0000
11.3 @@ -0,0 +1,64 @@
11.4 +diff -dur strace-4.5.16.orig/linux/syscallent.h strace-4.5.16/linux/syscallent.h
11.5 +--- strace-4.5.16.orig/linux/syscallent.h 2006-10-16 03:17:52.000000000 +0200
11.6 ++++ strace-4.5.16/linux/syscallent.h 2007-07-14 19:30:16.000000000 +0200
11.7 +@@ -130,7 +130,11 @@
11.8 + { 2, TF, sys_statfs, "statfs" }, /* 99 */
11.9 + { 2, TD, sys_fstatfs, "fstatfs" }, /* 100 */
11.10 + { 3, 0, sys_ioperm, "ioperm" }, /* 101 */
11.11 +- { 2, TD, sys_socketcall, "socketcall", SYS_socketcall }, /* 102 */
11.12 ++ { 2, TD, sys_socketcall, "socketcall"
11.13 ++#ifdef __NR_socketcall
11.14 ++ , SYS_socketcall
11.15 ++#endif
11.16 ++ }, /* 102 */
11.17 + { 3, 0, sys_syslog, "syslog" }, /* 103 */
11.18 + { 3, 0, sys_setitimer, "setitimer" }, /* 104 */
11.19 + { 2, 0, sys_getitimer, "getitimer" }, /* 105 */
11.20 +@@ -145,7 +149,11 @@
11.21 + { 4, TP, sys_wait4, "wait4", SYS_wait4 }, /* 114 */
11.22 + { 1, 0, sys_swapoff, "swapoff" }, /* 115 */
11.23 + { 1, 0, sys_sysinfo, "sysinfo" }, /* 116 */
11.24 +- { 6, 0, sys_ipc, "ipc", SYS_ipc }, /* 117 */
11.25 ++ { 6, 0, sys_ipc, "ipc"
11.26 ++#ifdef __NR_ipc
11.27 ++ , SYS_ipc
11.28 ++#endif
11.29 ++ }, /* 117 */
11.30 + { 1, TD, sys_fsync, "fsync" }, /* 118 */
11.31 + { 1, TS, sys_sigreturn, "sigreturn" }, /* 119 */
11.32 + { 5, TP, sys_clone, "clone", SYS_clone }, /* 120 */
11.33 +@@ -282,7 +290,11 @@
11.34 + { 3, 0, sys_io_cancel, "io_cancel" }, /* 249 */
11.35 + { 5, 0, sys_fadvise64, "fadvise64" }, /* 250 */
11.36 + { 5, 0, printargs, "SYS_251" }, /* 251 */
11.37 +- { 1, TP, sys_exit, "exit_group", __NR_exit_group }, /* 252 */
11.38 ++ { 1, TP, sys_exit, "exit_group"
11.39 ++#ifdef __NR_exit_group
11.40 ++ , __NR_exit_group
11.41 ++#endif
11.42 ++ }, /* 252 */
11.43 + { 4, 0, printargs, "lookup_dcookie"}, /* 253 */
11.44 + { 1, 0, sys_epoll_create, "epoll_create" }, /* 254 */
11.45 + { 4, TD, sys_epoll_ctl, "epoll_ctl" }, /* 255 */
11.46 +diff -dur strace-4.5.16.orig/syscall.c strace-4.5.16/syscall.c
11.47 +--- strace-4.5.16.orig/syscall.c 2007-07-14 19:22:49.000000000 +0200
11.48 ++++ strace-4.5.16/syscall.c 2007-07-14 19:30:16.000000000 +0200
11.49 +@@ -2383,14 +2383,18 @@
11.50 + switch (known_scno(tcp)) {
11.51 + #ifdef LINUX
11.52 + #if !defined (ALPHA) && !defined(SPARC) && !defined(SPARC64) && !defined(MIPS) && !defined(HPPA)
11.53 ++#ifdef __NR_socketcall
11.54 + case SYS_socketcall:
11.55 + decode_subcall(tcp, SYS_socket_subcall,
11.56 + SYS_socket_nsubcalls, deref_style);
11.57 + break;
11.58 ++#endif
11.59 ++#ifdef __NR_ipc
11.60 + case SYS_ipc:
11.61 + decode_subcall(tcp, SYS_ipc_subcall,
11.62 + SYS_ipc_nsubcalls, shift_style);
11.63 + break;
11.64 ++#endif
11.65 + #endif /* !ALPHA && !MIPS && !SPARC && !SPARC64 && !HPPA */
11.66 + #if defined (SPARC) || defined (SPARC64)
11.67 + case SYS_socketcall: