patches/glibc/2.3.6/120-allow-gcc-4.0-wordexp.patch
author "Yann E. MORIN" <yann.morin.1998@anciens.enib.fr>
Thu Jul 31 09:08:33 2008 +0000 (2008-07-31)
changeset 752 b037a5643e04
parent 402 197e1b49586e
permissions -rw-r--r--
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 ../sysdeps/generic/wordexp.c: In function 'exec_comm':
     2 ../sysdeps/generic/wordexp.c:815: sorry, unimplemented: inlining failed in call to 'exec_comm_child': function body not available
     3 ../sysdeps/generic/wordexp.c:900: sorry, unimplemented: called from here
     4 make[2]: *** [/home/dank/queue/jobdir.fast2/crosstool-dev/build/i686-unknown-linux-gnu/gcc-4.0-20050305-glibc-2.3-20050307/build-glibc/posix/wordexp.o] Error
     5 
     6 I had to add the keyword 'inline' to get it to compile:
     7 
     8 --- glibc-2.3-20050307/sysdeps/generic/wordexp.c.old	2005-03-12 08:54:15.709253928 -0800
     9 +++ glibc-2.3-20050307/sysdeps/generic/wordexp.c	2005-03-12 08:54:51.242852000 -0800
    10 @@ -809,7 +809,7 @@
    11  }
    12 
    13  /* Function called by child process in exec_comm() */
    14 -static void
    15 +static inline void
    16  internal_function __attribute__ ((always_inline))
    17  exec_comm_child (char *comm, int *fildes, int showerr, int noexec)
    18  {
    19 
    20 
    21 Signed-off-by: Robert P. J. Day <rpjday@mindspring.com>