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 binutils-2.17.old/ld/emultempl/elf32.em binutils-2.17/ld/emultempl/elf32.em
2 --- binutils-2.17.old/ld/emultempl/elf32.em 2006-06-12 15:05:04.000000000 +0200
3 +++ binutils-2.17/ld/emultempl/elf32.em 2007-05-01 18:26:13.000000000 +0200
5 && command_line.rpath == NULL)
7 lib_path = (const char *) getenv ("LD_RUN_PATH");
8 + if ((lib_path) && (strlen (lib_path) == 0))
10 if (gld${EMULATION_NAME}_search_needed (lib_path, &n,
14 rpath = command_line.rpath;
16 rpath = (const char *) getenv ("LD_RUN_PATH");
17 + if ((rpath) && (strlen (rpath) == 0))
19 if (! (bfd_elf_size_dynamic_sections
20 (output_bfd, command_line.soname, rpath,
21 command_line.filter_shlib,