patches/gcc/2.95.3/150-cygwin-020611.patch
author Zoltan Devai <zdevai@gmail.com>
Wed Oct 28 12:03:38 2009 +0100 (2009-10-28)
changeset 1602 1ba79f2126df
parent 402 197e1b49586e
permissions -rw-r--r--
libc/uClibc: fix building on system with recent glibc

While trying to build a toolchain with ct-ng 1.5.0,
arm-unknown-linux-uclibcgnueabi target,
I get the following error:

[INFO ] Installing C library headers
[EXTRA] Copying sources to build dir
[EXTRA] Applying configuration
[EXTRA] Building headers
[EXTRA] Installing headers
[ERROR] extra/scripts/unifdef.c:209: error: conflicting types for 'getline'
[ERROR] make[2]: *** [extra/scripts/unifdef] Error 1
[ERROR] Build failed in step 'Installing C library headers'

The following patch solves the problem.
(It's a backport of this uClibc commit:
http://git.uclibc.org/uClibc/commit/?id=49e81cada73616864b9b31df0aeb6961c30f5a6e
)

[--SNIP from another mail--]
AFAIK this is a problem since glibc 2.10.
     1 [ Building gcc-2.95.3 on cygwin yields a compiler that sticks a .exe
     2   on the end of every executable, even if they're linux executable.
     3   This is highly annoying, and causes glibc build failures that look like this:
     4     mv: `.../bin/makedb.new' and `.../bin/makedb' are the same file
     5     make[2]: *** [.../bin/makedb] Error 1
     6     make[2]: Leaving directory `.../gcc-2.95.3-glibc-2.1.3/glibc-2.1.3/db2'
     7 
     8   The mainline solves this with http://gcc.gnu.org/ml/gcc-cvs/2001-04/msg00440.html,
     9   but that doesn't apply cleanly to gcc-2.95.3.
    10 
    11   So, I'm using
    12   http://www.uclinux.org/pub/uClinux/uclinux-elf-tools/tools-20030314/gcc-2.95.3-cygwin-020611.patch
    13   This is the only patch in crosstool that *isn't* suitable for the mainline.
    14   I can live with this patch simply because crosstool does not build
    15   compilers that target cygwin or VAX/VMS. 
    16   If that ever changes, I might need to try applying the real patch.
    17 ]
    18 
    19 
    20 
    21 #
    22 # This patch can be found at http://www.uclinux.org/pub/uClinux/m68k-elf-tools/
    23 #
    24 --- gcc-2.95.3/gcc/config/i386/xm-cygwin.h	1999-04-22 16:40:56.000000000 +0200
    25 +++ gcc-2.95.3-cygwin/gcc/config/i386/xm-cygwin.h	2002-06-11 08:23:18.000000000 +0200
    26 @@ -19,7 +19,6 @@
    27  the Free Software Foundation, 59 Temple Place - Suite 330,
    28  Boston, MA 02111-1307, USA. */
    29  
    30 -#define EXECUTABLE_SUFFIX ".exe"
    31  #define NO_SYS_SIGLIST 1
    32  
    33  /* We support both "/" and "\" since everybody tests both but we