Have the glibc build use the cross-objdump, rather than the host one.
On some distros (eg. Fedora), the native objdump can not interpret objects not for the native system, and thus fail.
This commit adds a new patch against glibc-2.7 that introduces OBJDUMP_FOR_HOST, wich, if set, overides the detected objdump.
Note: bizarely enough, glibc already has code to detect the cross-objdump, but that does not work for an unknown reason... :-(
/trunk/patches/glibc/2.7/220-objdump_for_host.patch | 13 13 0 0 +++++++++
/trunk/scripts/build/libc_glibc.sh | 37 21 16 0 +++++++++++++++------------
2 files changed, 34 insertions(+), 16 deletions(-)
1 diff -dur strace-4.5.16.orig/syscall.c strace-4.5.16/syscall.c
2 --- strace-4.5.16.orig/syscall.c 2007-07-14 19:21:44.000000000 +0200
3 +++ strace-4.5.16/syscall.c 2007-07-14 19:22:49.000000000 +0200
5 #define TP TRACE_PROCESS
6 #define TS TRACE_SIGNAL
10 + * Ugly hacks for systems that do not have LFS
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
20 static const struct sysent sysent0[] = {
21 #include "syscallent.h"