patches/glibc/2.14.1/910-asm-i686.patch
author "Yann E. MORIN" <yann.morin.1998@free.fr>
Wed Dec 05 20:31:43 2012 +0100 (2012-12-05)
changeset 3134 863723936e24
permissions -rw-r--r--
scripts/xldd: use user's sed and grep

xldd uses sed and grep as detected by ./configure. This works well if is
used on the machine that build the toolchain.

But if the user moves the toolchain to another machine where sed and grep
are not in the same directory (eg. /bin/sed vs. /usr/bin/sed), then xldd
will stop functionning.

Fix that by using ${SED} and ${GREP} if they are set in the environment.

Reported-by: Samuel Martin <s.martin49@gmail.com>
Signed-off-by: "Yann E. MORIN" <yann.morin.1998@free.fr>
     1 Submitted By:            Matt Burgess <matthew_at_linuxfromscratch_dot_org>
     2 Date:                    2010-04-18
     3 Initial Package Version: 2.11.1
     4 Upstream Status:         Not Submitted
     5 Origin:                  http://www.eglibc.org/archives/patches/msg00073.html
     6 Description:             Fixes the following build problem with GCC-4.5.0:
     7 
     8 /mnt/lfs/sources/libc-build/math/s_frexp.os.dt -MT /mnt/lfs/sources/libc-build/math/s_frexp.os
     9 ./sysdeps/i386/fpu/s_frexp.S: Assembler messages:
    10 ./sysdeps/i386/fpu/s_frexp.S:66: Error: invalid identifier for ".ifdef"
    11 ./sysdeps/i386/fpu/s_frexp.S:66: Error: junk at end of line, first unrecognized character is `1'
    12 ./sysdeps/i386/fpu/s_frexp.S:66: Error: junk at end of line, first unrecognized character is `1'
    13 ./sysdeps/i386/fpu/s_frexp.S:66: Error: junk at end of line, first unrecognized character is `1'
    14 ./sysdeps/i386/fpu/s_frexp.S:66: Error: junk at end of line, first unrecognized character is `.'
    15 ./sysdeps/i386/fpu/s_frexp.S:66: Error: junk at end of line, first unrecognized character is `1'
    16 ./sysdeps/i386/fpu/s_frexp.S:66: Error: expected comma after name `' in .size directive
    17 ./sysdeps/i386/fpu/s_frexp.S:66: Error: ".endif" without ".if"
    18 ./sysdeps/i386/fpu/s_frexp.S:66: Error: junk `.get_pc_thunk.dx' after expression
    19 make[2]: *** [/mnt/lfs/sources/libc-build/math/s_frexp.os] Error 1
    20 
    21 diff -Naur glibc-2.11.1.orig/nptl/sysdeps/pthread/pt-initfini.c glibc-2.11.1/nptl/sysdeps/pthread/pt-initfini.c
    22 --- glibc-2.11.1.orig/nptl/sysdeps/pthread/pt-initfini.c	2009-12-08 20:10:20.000000000 +0000
    23 +++ glibc-2.11.1/nptl/sysdeps/pthread/pt-initfini.c	2010-04-17 11:34:06.882681001 +0000
    24 @@ -45,6 +45,11 @@
    25  /* Embed an #include to pull in the alignment and .end directives. */
    26  asm ("\n#include \"defs.h\"");
    27  
    28 +asm ("\n#if defined __i686 && defined __ASSEMBLER__");
    29 +asm ("\n#undef __i686");
    30 +asm ("\n#define __i686 __i686");
    31 +asm ("\n#endif");
    32 +
    33  /* The initial common code ends here. */
    34  asm ("\n/*@HEADER_ENDS*/");
    35  
    36 diff -Naur glibc-2.11.1.orig/sysdeps/unix/sysv/linux/i386/sysdep.h glibc-2.11.1/sysdeps/unix/sysv/linux/i386/sysdep.h
    37 --- glibc-2.11.1.orig/sysdeps/unix/sysv/linux/i386/sysdep.h	2009-12-08 20:10:20.000000000 +0000
    38 +++ glibc-2.11.1/sysdeps/unix/sysv/linux/i386/sysdep.h	2010-04-17 11:34:06.882681001 +0000
    39 @@ -29,6 +29,10 @@
    40  #include <dl-sysdep.h>
    41  #include <tls.h>
    42  
    43 +#if defined __i686 && defined __ASSEMBLER__
    44 +#undef __i686
    45 +#define __i686 __i686
    46 +#endif
    47  
    48  /* For Linux we can use the system call table in the header file
    49  	/usr/include/asm/unistd.h
    50