patches/gcc/2.95.3/170-pr3106.patch
author "Yann E. MORIN" <yann.morin.1998@anciens.enib.fr>
Tue Sep 23 14:48:10 2008 +0000 (2008-09-23)
changeset 872 fd4bf138f08f
parent 402 197e1b49586e
permissions -rw-r--r--
Bart De VOS pointed out that removing absolute paths from the libc linker scripts is plainly wrong.
It dates from dawn ages of the original crosstool code, and is not well explained. At that time, binutils might not understand the sysroot stuff, and it was necessary to remove absolute paths in that case.

/trunk/scripts/build/libc/glibc.sh | 14 2 12 0 ++------------
1 file changed, 2 insertions(+), 12 deletions(-)
     1 See http://gcc.gnu.org/PR3106
     2 Backported from gcc-3.0.x
     3 
     4 Fixes error
     5   .../binutils-2.11.2/libiberty/strerror.c:468: error: conflicting types for `sys_nerr'
     6   /usr/include/stdio.h:258: error: previous declaration of `sys_nerr'
     7   make[1]: *** [strerror.o] Error 1
     8   make: *** [all-libiberty] Error 2
     9 on Mac OS X.
    10 
    11 --- gcc-2.95.3/libiberty/strerror.c.old	2004-03-24 16:23:19.000000000 -0800
    12 +++ gcc-2.95.3/libiberty/strerror.c	2004-03-24 16:23:48.000000000 -0800
    13 @@ -13,6 +13,7 @@
    14     incompatible with our later declaration, perhaps by using const
    15     attributes.  So we hide the declaration in errno.h (if any) using a
    16     macro. */
    17 +#define sys_nerr sys_nerr__
    18  #define sys_errlist sys_errlist__
    19  #endif
    20  
    21 @@ -20,6 +21,7 @@
    22  #include <errno.h>
    23  
    24  #ifdef HAVE_SYS_ERRLIST
    25 +#undef sys_nerr
    26  #undef sys_errlist
    27  #endif
    28