libc/uClibc: fix building on system with recent glibc 1.5
authorZoltan Devai <zdevai@gmail.com>
Wed Oct 28 12:03:38 2009 +0100 (2009-10-28)
branch1.5
changeset 164501d01185eb18
parent 1644 c938fd487dea
child 1646 9614ef1593c8
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.
(transplanted from 1ba79f2126df8bd89120899a58f2d0bcc2e9c771)
patches/uClibc/0.9.30.1/180-getline-conflict.patch
     1.1 --- /dev/null	Thu Jan 01 00:00:00 1970 +0000
     1.2 +++ b/patches/uClibc/0.9.30.1/180-getline-conflict.patch	Wed Oct 28 12:03:38 2009 +0100
     1.3 @@ -0,0 +1,30 @@
     1.4 +--- a/extra/scripts/unifdef.c
     1.5 ++++ b/extra/scripts/unifdef.c
     1.6 +@@ -206,7 +206,7 @@
     1.7 + static void             error(const char *);
     1.8 + static int              findsym(const char *);
     1.9 + static void             flushline(bool);
    1.10 +-static Linetype         getline(void);
    1.11 ++static Linetype         get_line(void);
    1.12 + static Linetype         ifeval(const char **);
    1.13 + static void             ignoreoff(void);
    1.14 + static void             ignoreon(void);
    1.15 +@@ -512,7 +512,7 @@
    1.16 +
    1.17 + 	for (;;) {
    1.18 + 		linenum++;
    1.19 +-		lineval = getline();
    1.20 ++		lineval = get_line();
    1.21 + 		trans_table[ifstate[depth]][lineval]();
    1.22 + 		debug("process %s -> %s depth %d",
    1.23 + 		    linetype_name[lineval],
    1.24 +@@ -526,7 +526,7 @@
    1.25 +  * help from skipcomment().
    1.26 +  */
    1.27 + static Linetype
    1.28 +-getline(void)
    1.29 ++get_line(void)
    1.30 + {
    1.31 + 	const char *cp;
    1.32 + 	int cursym;
    1.33 +