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 Check LD_RUN_PATH length, copied from buildroot.
3 binutils-2.18.50.0.6/ld/emultempl/elf32.em | 4 4 0 0 ++++
4 1 file changed, 4 insertions(+)
6 diff -durN binutils-2.18.50.0.6.orig/ld/emultempl/elf32.em binutils-2.18.50.0.6/ld/emultempl/elf32.em
7 --- binutils-2.18.50.0.6.orig/ld/emultempl/elf32.em 2008-04-03 18:54:25.000000000 +0200
8 +++ binutils-2.18.50.0.6/ld/emultempl/elf32.em 2008-05-02 23:30:08.000000000 +0200
10 && command_line.rpath == NULL)
12 lib_path = (const char *) getenv ("LD_RUN_PATH");
13 + if ((lib_path) && (strlen (lib_path) == 0))
15 if (gld${EMULATION_NAME}_search_needed (lib_path, &n,
19 rpath = command_line.rpath;
21 rpath = (const char *) getenv ("LD_RUN_PATH");
22 + if ((rpath) && (strlen (rpath) == 0))
24 if (! (bfd_elf_size_dynamic_sections
25 (link_info.output_bfd, command_line.soname, rpath,
26 command_line.filter_shlib,