From: Holger Hans Peter Freyther <[email protected]>

gcc4.4 and glibc 2.10 complain that getline already has
a different signature. Rename the version in the unidef.c.

Hrw's note: patch is also needed on recent Debian system and is not related to
version of GCC (I have 4.3.x). As stable/2009 uses 0.9.30 by default I patched
that version too.

---
 .../uclibc/uclibc-0.9.30.1/gcc-4.4-fixlet.patch    |   31 ++++++++++++++++++++
 recipes/uclibc/uclibc-0.9.30/gcc-4.4-fixlet.patch  |   31 ++++++++++++++++++++
 recipes/uclibc/uclibc_0.9.30.1.bb                  |    1 +
 recipes/uclibc/uclibc_0.9.30.bb                    |    3 +-
 4 files changed, 65 insertions(+), 1 deletions(-)
 create mode 100644 recipes/uclibc/uclibc-0.9.30.1/gcc-4.4-fixlet.patch
 create mode 100644 recipes/uclibc/uclibc-0.9.30/gcc-4.4-fixlet.patch

diff --git a/recipes/uclibc/uclibc-0.9.30.1/gcc-4.4-fixlet.patch 
b/recipes/uclibc/uclibc-0.9.30.1/gcc-4.4-fixlet.patch
new file mode 100644
index 0000000..b9ff671
--- /dev/null
+++ b/recipes/uclibc/uclibc-0.9.30.1/gcc-4.4-fixlet.patch
@@ -0,0 +1,31 @@
+Index: uClibc-0.9.30.1/extra/scripts/unifdef.c
+===================================================================
+--- uClibc-0.9.30.1.orig/extra/scripts/unifdef.c       2009-08-09 
11:55:23.000000000 +0200
++++ uClibc-0.9.30.1/extra/scripts/unifdef.c    2009-08-09 11:55:46.000000000 
+0200
+@@ -206,7 +206,7 @@
+ static void             error(const char *);
+ static int              findsym(const char *);
+ static void             flushline(bool);
+-static Linetype         getline(void);
++static Linetype         _getline(void);
+ static Linetype         ifeval(const char **);
+ static void             ignoreoff(void);
+ static void             ignoreon(void);
+@@ -512,7 +512,7 @@
+ 
+       for (;;) {
+               linenum++;
+-              lineval = getline();
++              lineval = _getline();
+               trans_table[ifstate[depth]][lineval]();
+               debug("process %s -> %s depth %d",
+                   linetype_name[lineval],
+@@ -526,7 +526,7 @@
+  * help from skipcomment().
+  */
+ static Linetype
+-getline(void)
++_getline(void)
+ {
+       const char *cp;
+       int cursym;
diff --git a/recipes/uclibc/uclibc-0.9.30/gcc-4.4-fixlet.patch 
b/recipes/uclibc/uclibc-0.9.30/gcc-4.4-fixlet.patch
new file mode 100644
index 0000000..b9ff671
--- /dev/null
+++ b/recipes/uclibc/uclibc-0.9.30/gcc-4.4-fixlet.patch
@@ -0,0 +1,31 @@
+Index: uClibc-0.9.30.1/extra/scripts/unifdef.c
+===================================================================
+--- uClibc-0.9.30.1.orig/extra/scripts/unifdef.c       2009-08-09 
11:55:23.000000000 +0200
++++ uClibc-0.9.30.1/extra/scripts/unifdef.c    2009-08-09 11:55:46.000000000 
+0200
+@@ -206,7 +206,7 @@
+ static void             error(const char *);
+ static int              findsym(const char *);
+ static void             flushline(bool);
+-static Linetype         getline(void);
++static Linetype         _getline(void);
+ static Linetype         ifeval(const char **);
+ static void             ignoreoff(void);
+ static void             ignoreon(void);
+@@ -512,7 +512,7 @@
+ 
+       for (;;) {
+               linenum++;
+-              lineval = getline();
++              lineval = _getline();
+               trans_table[ifstate[depth]][lineval]();
+               debug("process %s -> %s depth %d",
+                   linetype_name[lineval],
+@@ -526,7 +526,7 @@
+  * help from skipcomment().
+  */
+ static Linetype
+-getline(void)
++_getline(void)
+ {
+       const char *cp;
+       int cursym;
diff --git a/recipes/uclibc/uclibc_0.9.30.1.bb 
b/recipes/uclibc/uclibc_0.9.30.1.bb
index d159ab3..21bfeff 100644
--- a/recipes/uclibc/uclibc_0.9.30.1.bb
+++ b/recipes/uclibc/uclibc_0.9.30.1.bb
@@ -20,6 +20,7 @@ SRC_URI += "file://uClibc.machine file://uClibc.distro \
            file://pthread_atfork.patch;patch=1 \
            file://uclibc_ldso_use_O0.patch;patch=1 \
            file://ldso_use_arm_dl_linux_resolve_in_thumb_mode.patch;patch=1 \
+           file://gcc-4.4-fixlet.patch;patch=1 \
           "
 #recent versions uclibc require real kernel headers
 PACKAGE_ARCH = "${MACHINE_ARCH}"
diff --git a/recipes/uclibc/uclibc_0.9.30.bb b/recipes/uclibc/uclibc_0.9.30.bb
index bbe809f..7f0f2a4 100644
--- a/recipes/uclibc/uclibc_0.9.30.bb
+++ b/recipes/uclibc/uclibc_0.9.30.bb
@@ -7,7 +7,7 @@
 # on whether the base patches apply to the selected (SRCDATE) svn release.
 #
 UCLIBC_BASE ?= "0.9.30"
-PR = "r6"
+PR = "r7"
 DEFAULT_PREFERENCE = "1"
 
 require uclibc.inc
@@ -20,6 +20,7 @@ SRC_URI += "file://uClibc.machine file://uClibc.distro \
            file://pthread_atfork.patch;patch=1 \
            file://uclibc_ldso_use_O0.patch;patch=1 \
            file://ldso_use_arm_dl_linux_resolve_in_thumb_mode.patch;patch=1 \
+           file://gcc-4.4-fixlet.patch;patch=1 \
           "
 #recent versions uclibc require real kernel headers
 PACKAGE_ARCH = "${MACHINE_ARCH}"
-- 
1.6.5




_______________________________________________
Openembedded-devel mailing list
[email protected]
http://lists.linuxtogo.org/cgi-bin/mailman/listinfo/openembedded-devel

Reply via email to