Skip to contentSkip to conversation

uclibc updates

PATCH Applied Khem Raj 2 participants 12 messages Apr 30, 2012 – May 1, 2012

lore
Share & tools
lore

Khem Raj

author
#0 lore raw

cover uclibc updates

This patchset updates uclibc git and 0.9.33 recipes to latest git commits Some recipes needed fixing for new posix_spawn feature in uclibc_git fixed some recipes to let them build on SH4 architecture

The following changes since commit b8dc9182ed8959ce5a6aa285c3c7f78df2432ac3:

qt-4.8.1: Fix compile failures on qemux86 (2012-04-30 10:42:07 +0100)

are available in the git repository at:
git://git.openembedded.org/openembedded-core-contrib kraj/uclibc-update
http://cgit.openembedded.org/cgit.cgi/openembedded-core-contrib/log/?h=kraj/uclibc-update

Khem Raj (10):
uclibc-git: Update to latest git tip uclibc-0.9.33: Update to tip of 0.9.33 branch glib-2.0: Dont disable iconv for uclibc gettext,m4: Add -lrt to LDFLAGS for uclibc
musicbrainz: Specify libpthread on cmdline for uclibc
gdb: Dont need lttng-ust for SH4 gcc-cross.inc: Fix cross testing script
pcmanfm: Add sh3/sh4 to supported hosts
gdb: Add support for building gdb target for SH4
busybox: Pass HOST_CC_ARCH through CONFIG_EXTRA_CFLAGS

 meta/recipes-core/busybox/busybox.inc              |    2 +-
 meta/recipes-core/busybox/busybox_1.19.4.bb        |    2 +-
 meta/recipes-core/gettext/gettext_0.18.1.1.bb      |    6 +-
 meta/recipes-core/glib-2.0/glib-2.0/no-iconv.patch |  106 --
 meta/recipes-core/glib-2.0/glib-2.0_2.30.3.bb      |    5 +-
 meta/recipes-core/uclibc/uclibc_0.9.33.bb          |    4 +-
 meta/recipes-core/uclibc/uclibc_git.bb             |    4 +-
 meta/recipes-devtools/gcc/gcc-cross.inc            |    5 +-
 meta/recipes-devtools/gdb/gdb-common.inc           |    3 +-
 meta/recipes-devtools/gdb/gdb.inc                  |    1 +
 .../gdb/gdb/renesas-sh-native-support.patch        | 1389 ++++++++++++++++++++
 meta/recipes-devtools/m4/m4-1.4.16.inc             |    2 +-
 meta/recipes-devtools/m4/m4-1.4.9.inc              |    2 +-
 meta/recipes-devtools/m4/m4.inc                    |    2 +-
 .../musicbrainz/libmusicbrainz_3.0.3.bb            |    4 +-
 meta/recipes-sato/pcmanfm/pcmanfm_0.9.10.bb        |    2 +-
 16 files changed, 1412 insertions(+), 127 deletions(-)
 delete mode 100644 meta/recipes-core/glib-2.0/glib-2.0/no-iconv.patch
 create mode 100644 meta/recipes-devtools/gdb/gdb/renesas-sh-native-support.patch
Signature · 1 line
1.7.5.4
author
#1 lore raw

PATCH 1/10 uclibc-git: Update to latest git tip

---
 meta/recipes-core/uclibc/uclibc_git.bb |    4 ++--
 1 files changed, 2 insertions(+), 2 deletions(-)
meta/recipes-core/uclibc/uclibc_git.bb +2 -2
index 0088152..55e72ff 100644
@@ -1,11 +1,11 @@
-SRCREV="eb72efd81e0d5be6c836c5a084cc65b9734f544d"
+SRCREV="7bad8cf68b6e2434686bd80182f4a5bc22004416"
 
 require uclibc.inc
 
 # We prefer a release version so DP -1 for this
 DEFAULT_PREFERENCE = "-1"
 
-PV = "0.9.32+0.9.33-rc0"
+PV = "0.9.33+git${SRCPV}"
 PR = "${INC_PR}.1"
 PROVIDES += "virtual/${TARGET_PREFIX}libc-for-gcc"
 
Signature · 1 line
1.7.5.4
author
#2 lore raw

PATCH 2/10 uclibc-0.9.33: Update to tip of 0.9.33 branch

---
 meta/recipes-core/uclibc/uclibc_0.9.33.bb |    4 ++--
 1 files changed, 2 insertions(+), 2 deletions(-)
meta/recipes-core/uclibc/uclibc_0.9.33.bb +2 -2
index 461f5bd..43c8f74 100644
@@ -1,8 +1,8 @@
-SRCREV="5653245fa516c5823226582d9a02b1b18d5e8925"
+SRCREV="f7c18471f1ff8f3e54e462df0e96e19739869c78"
 
 require uclibc.inc
 
-PR = "${INC_PR}.0"
+PR = "${INC_PR}.1"
 PROVIDES += "virtual/${TARGET_PREFIX}libc-for-gcc"
 
 SRC_URI = "git://uclibc.org/uClibc.git;branch=${PV};protocol=git \
Signature · 1 line
1.7.5.4
author
#3 lore raw

PATCH 3/10 glib-2.0: Dont disable iconv for uclibc

In reply to Khem Raj

Currently we stub out iconv in glib when building
for uclibc which is not needed and infact results
in building systems with false hope of having
iconv and they misbehave during runtime

---
 meta/recipes-core/glib-2.0/glib-2.0/no-iconv.patch |  106 --------------------
 meta/recipes-core/glib-2.0/glib-2.0_2.30.3.bb      |    5 +-
 2 files changed, 1 insertions(+), 110 deletions(-)
 delete mode 100644 meta/recipes-core/glib-2.0/glib-2.0/no-iconv.patch
meta/recipes-core/glib-2.0/glib-2.0/no-iconv.patch deleted +0 -106
deleted file mode 100644
index 9c06fe6..0000000
@@ -1,106 +0,0 @@
-Upstream-Status: Inappropriate [embedded specific]
-
-We provide dummy implementation of iconv functionality if it does not find
-iconv which will be case with uclibc. We remove the check for iconv in configure
-
-This is needed when libintl and libiconv is not available. It wont have any
-impact on case when they are available.
-
-Signed-off-by: Khem Raj <[email protected]>
-
-
-Index: glib-2.26.1/glib/gconvert.c
-===================================================================
---- glib-2.26.1.orig/glib/gconvert.c
-+++ glib-2.26.1/glib/gconvert.c
-@@ -23,7 +23,7 @@
- #include "config.h"
- #include "glibconfig.h"
- 
--#ifndef G_OS_WIN32
-+#if !defined G_OS_WIN32 && defined HAVE_ICONV_H
- #include <iconv.h>
- #endif
- #include <errno.h>
-@@ -65,6 +65,28 @@
- #error GNU libiconv not in use but included iconv.h is from libiconv
- #endif
- 
-+#ifndef HAVE_ICONV_H
-+typedef void *iconv_t;
-+
-+iconv_t iconv_open(const char *tocode, const char *fromcode)
-+{
-+	return (iconv_t)(-1);
-+}
-+
-+int iconv_close(iconv_t cd)
-+{
-+	free(cd);
-+
-+	return 0;
-+}
-+size_t iconv (iconv_t __cd, char **__inbuf,
-+                     size_t *__inbytesleft,
-+                     char **__outbuf,
-+                     size_t *__outbytesleft)
-+{
-+	return 0;
-+}
-+#endif
- 
- /**
-  * SECTION:conversions
-Index: glib-2.26.1/configure.ac
-===================================================================
---- glib-2.26.1.orig/configure.ac
-+++ glib-2.26.1/configure.ac
-@@ -373,46 +373,8 @@ dnl *** Tests for iconv ***
- dnl ***********************
- dnl
- dnl We do this before the gettext checks, to avoid distortion
--
--dnl On Windows we use a native implementation
--
--if test x"$glib_native_win32" = xyes; then
--  with_libiconv=native
--else
--  AC_ARG_WITH(libiconv,
--	      [AC_HELP_STRING([--with-libiconv=@<:@no/gnu/native@:>@],
--			      [use the libiconv library])],,
--	      [with_libiconv=maybe])
--
--  found_iconv=no
--  case $with_libiconv in
--    maybe)
--      # Check in the C library first
--      AC_CHECK_FUNC(iconv_open, [with_libiconv=no; found_iconv=yes])
--      # Check if we have GNU libiconv
--      if test $found_iconv = "no"; then
--	AC_CHECK_LIB(iconv, libiconv_open, [with_libiconv=gnu; found_iconv=yes])
--      fi
--      # Check if we have a iconv in -liconv, possibly from vendor
--      if test $found_iconv = "no"; then
--	AC_CHECK_LIB(iconv, iconv_open, [with_libiconv=native; found_iconv=yes])
--      fi
--      ;;
--    no)
--      AC_CHECK_FUNC(iconv_open, [with_libiconv=no; found_iconv=yes])
--      ;;
--    gnu|yes)
--      AC_CHECK_LIB(iconv, libiconv_open, [with_libiconv=gnu; found_iconv=yes])
--      ;;
--    native)
--      AC_CHECK_LIB(iconv, iconv_open, [with_libiconv=native; found_iconv=yes])
--      ;;
--  esac
--
--  if test "x$found_iconv" = "xno" ; then
--     AC_MSG_ERROR([*** No iconv() implementation found in C library or libiconv])
--  fi
--fi
-+found_iconv=yes
-+with_libiconv=no
- 
- gl_GLIBC21
- AC_ARG_ENABLE(iconv-cache, 
meta/recipes-core/glib-2.0/glib-2.0_2.30.3.bb +1 -4
index f1f9217..405402e 100644
@@ -1,6 +1,6 @@
 require glib.inc
 
-PR = "r1"
+PR = "r2"
 PE = "1"
 
 DEPENDS += "libffi python-argparse-native zlib"
@@ -19,9 +19,6 @@ SRC_URI = "${GNOME_MIRROR}/glib/${SHRT_VER}/glib-${PV}.tar.xz \
 SRC_URI[md5sum] = "0f9fa329c6c1012d0fd861ad3d8a4520"
 SRC_URI[sha256sum] = "e6cbb27c71c445993346e785e8609cc75cea2941e32312e544872feba572dd27"
 
-# Only apply this patch for target recipe on uclibc
-SRC_URI_append_libc-uclibc = " ${@['', 'file://no-iconv.patch']['${PN}' == '${BPN}']}"
-
 SRC_URI_append_virtclass-native = " file://glib-gettextize-dir.patch"
 BBCLASSEXTEND = "native nativesdk"
 
Signature · 1 line
1.7.5.4
author
#4 lore raw

PATCH 4/10 gettext, m4: Add -lrt to LDFLAGS for uclibc

In reply to Khem Raj

uclibc has recently got posix_spawn implementation and the implementation resided in librt so we link -lrt to get the configure tests using uclibc provided definitions and not the gnu-lib wrappers

Let libintl.a live in -staticdev package

---
 meta/recipes-core/gettext/gettext_0.18.1.1.bb |    6 +++---
 meta/recipes-devtools/m4/m4-1.4.16.inc        |    2 +-
 meta/recipes-devtools/m4/m4-1.4.9.inc         |    2 +-
 meta/recipes-devtools/m4/m4.inc               |    2 +-
 4 files changed, 6 insertions(+), 6 deletions(-)
meta/recipes-core/gettext/gettext_0.18.1.1.bb +3 -3
index 4664751..5685bbe 100644
@@ -5,7 +5,7 @@ SECTION = "libs"
 LICENSE = "GPLv3+ & LGPL-2.1+"
 LIC_FILES_CHKSUM = "file://COPYING;md5=d32239bcb673463ab874e80d47fae504"
 
-PR = "r11"
+PR = "r12"
 DEPENDS = "libxml2-native gettext-native virtual/libiconv ncurses expat"
 DEPENDS_virtclass-native = "libxml2-native gettext-minimal-native"
 PROVIDES = "virtual/libintl virtual/gettext"
@@ -17,6 +17,7 @@ SRC_URI = "${GNU_MIRROR}/gettext/gettext-${PV}.tar.gz \
 SRC_URI_append_libc-uclibc = " file://wchar-uclibc.patch \
                                file://gnulib-uclibc-sched_param-def.patch \
                              "
+LDFLAGS_prepend_libc-uclibc = " -lrt -lpthread "
 
 SRC_URI[md5sum] = "3dd55b952826d2b32f51308f2f91aa89"
 SRC_URI[sha256sum] = "93ac71a7afa5b70c1b1032516663658c51e653087f42a3fc8044752c026443e9"
@@ -72,8 +73,7 @@ FILES_gettext-runtime_append_libc-uclibc = " ${libdir}/libintl.so.* \
 FILES_gettext-runtime-dev += "${libdir}/libasprintf.a \
                       ${includedir}/autosprintf.h \
                      "
-FILES_gettext-runtime-dev_append_libc-uclibc = " ${libdir}/libintl.a \
-                                                 ${libdir}/libintl.so \
+FILES_gettext-runtime-dev_append_libc-uclibc = " ${libdir}/libintl.so \
                                                  ${includedir}/libintl.h \
                                                "
 FILES_gettext-runtime-doc = "${mandir}/man1/gettext.* \
meta/recipes-devtools/m4/m4-1.4.16.inc +1 -1
index 139193c..1669775 100644
@@ -5,7 +5,7 @@ LICENSE = "GPLv3"
 LIC_FILES_CHKSUM = "file://COPYING;md5=d32239bcb673463ab874e80d47fae504\
 	            file://examples/COPYING;md5=fbc986d45b3dae6725c29870dd6b669d"
 
-PR = "r2"
+PR = "r3"
 SRC_URI += "file://ac_config_links.patch"
 
 SRC_URI[md5sum] = "a5dfb4f2b7370e9d34293d23fd09b280"
meta/recipes-devtools/m4/m4-1.4.9.inc +1 -1
index a5d243c..aab2c1e 100644
@@ -5,7 +5,7 @@ LICENSE = "GPLv2"
 LIC_FILES_CHKSUM = "file://COPYING;md5=751419260aa954499f7abaabaa882bbe\
 	file://examples/COPYING;md5=1d49bd61dc590f014cae7173b43e3e5c"
 
-PR = "r1"
+PR = "r2"
 SRC_URI += "file://fix_for_circular_dependency.patch"
 
 SRC_URI[md5sum] = "1ba8e147aff5e79bd2bfb983d86b53d5"
meta/recipes-devtools/m4/m4.inc +1 -1
index a130318..ae101c2 100644
@@ -6,5 +6,5 @@ GNU M4 also has built-in functions for including files, running shell commands,
 inherit autotools
 
 EXTRA_OEMAKE += "'infodir=${infodir}'"
-
+LDFLAGS_prepend_libc-uclibc = " -lrt "
 SRC_URI = "${GNU_MIRROR}/m4/m4-${PV}.tar.gz"
Signature · 1 line
1.7.5.4
author
#5 lore raw

PATCH 5/10 musicbrainz: Specify libpthread on cmdline for uclibc

In reply to Khem Raj

uclibc librt needs some functionality from libpthread

---
 .../musicbrainz/libmusicbrainz_3.0.3.bb            |    4 +++-
 1 files changed, 3 insertions(+), 1 deletions(-)
meta/recipes-multimedia/musicbrainz/libmusicbrainz_3.0.3.bb +3 -1
index 4814b6d..913c463 100644
@@ -6,12 +6,14 @@ LIC_FILES_CHKSUM = "file://COPYING.txt;md5=fbc093901857fcd118f065f900982c24 \
                     file://include/musicbrainz3/includes.h;beginline=1;endline=21;md5=9ab2846573f560cea7561da472803a72"
 DEPENDS = "expat neon"
 
-PR = "r3"
+PR = "r4"
 
 SRC_URI = "http://ftp.musicbrainz.org/pub/musicbrainz/${BPN}-${PV}.tar.gz \
            file://fix_build_issue_for_gcc_4.5.0.patch \
            file://allow-libdir-override.patch "
 
+LDFLAGS_prepend_libc-uclibc = " -lpthread "
+
 SRC_URI[md5sum] = "f4824d0a75bdeeef1e45cc88de7bb58a"
 SRC_URI[sha256sum] = "7fd459a9fd05be9faec60a9a21caa9a1e9fda03147d58d8c7c95f33582a738c5"
 
Signature · 1 line
1.7.5.4
author
#6 lore raw

PATCH 6/10 gdb: Dont need lttng-ust for SH4

In reply to Khem Raj
---
 meta/recipes-devtools/gdb/gdb-common.inc |    1 +
 1 files changed, 1 insertions(+), 0 deletions(-)
meta/recipes-devtools/gdb/gdb-common.inc +1 -0
index 5dd4f74..b520353 100644
@@ -10,6 +10,7 @@ LTTNGUST_mips = ""
 LTTNGUST_mipsel = ""
 LTTNGUST_mips64 = ""
 LTTNGUST_mips64el = ""
+LTTNGUST_sh4 = ""
 
 INC_PR = "r8"
 
Signature · 1 line
1.7.5.4
author
#7 lore raw

PATCH 7/10 gcc-cross.inc: Fix cross testing script

In reply to Khem Raj

shift the cmdline argument after determining
there is atleast 1 argument to shift otherwise
it ends up in error when no argument is specified

---
 meta/recipes-devtools/gcc/gcc-cross.inc |    5 +++--
 1 files changed, 3 insertions(+), 2 deletions(-)
meta/recipes-devtools/gcc/gcc-cross.inc +3 -2
index e7a5e41..6d160d6 100644
@@ -45,7 +45,6 @@ do_compile () {
 	# append execution part of the script
 cat >> ${B}/${TARGET_PREFIX}testgcc << STOP
 target="\$1"
-shift
 usage () {
 	echo "Usage:"
 	echo "\$0 user@target 'extra options to dejagnu'"
@@ -60,11 +59,13 @@ usage () {
     }
 if [ "x\$target" = "x" ]
 then
-	echo "Please specify the target machine and remote user in form of user@target"
+	echo "Please specify the target machine and remote user in form of user@target\n"
 	usage
 	exit 1;
 fi
 
+shift
+
 echo "\$target" | grep "@" 2>&1 > /dev/null
 if [ "x\$?" = "x0" ]
 then
Signature · 1 line
1.7.5.4
author
#8 lore raw

PATCH 8/10 pcmanfm: Add sh3/sh4 to supported hosts

In reply to Khem Raj
---
 meta/recipes-sato/pcmanfm/pcmanfm_0.9.10.bb |    2 +-
 1 files changed, 1 insertions(+), 1 deletions(-)
meta/recipes-sato/pcmanfm/pcmanfm_0.9.10.bb +1 -1
index e62cb0d..545367a 100644
@@ -13,7 +13,7 @@ DEPENDS_append_poky = " libowl"
 
 PR = "r0"
 
-COMPATIBLE_HOST = '(x86_64.*|i.86.*|arm.*|mips.*|powerpc.*)-(linux|freebsd.*)'
+COMPATIBLE_HOST = '(x86_64.*|i.86.*|arm.*|mips.*|powerpc.*|sh.*)-(linux|freebsd.*)'
 
 SRC_URI = "${SOURCEFORGE_MIRROR}/pcmanfm/pcmanfm-${PV}.tar.gz \
 	   file://gnome-fs-directory.png \
Signature · 1 line
1.7.5.4
author
#9 lore raw

PATCH 9/10 gdb: Add support for building gdb target for SH4

In reply to Khem Raj
---
 meta/recipes-devtools/gdb/gdb-common.inc           |    2 +-
 meta/recipes-devtools/gdb/gdb.inc                  |    1 +
 .../gdb/gdb/renesas-sh-native-support.patch        | 1389 ++++++++++++++++++++
 3 files changed, 1391 insertions(+), 1 deletions(-)
 create mode 100644 meta/recipes-devtools/gdb/gdb/renesas-sh-native-support.patch
meta/recipes-devtools/gdb/gdb-common.inc +1 -1
index b520353..8836aa3 100644
@@ -12,7 +12,7 @@ LTTNGUST_mips64 = ""
 LTTNGUST_mips64el = ""
 LTTNGUST_sh4 = ""
 
-INC_PR = "r8"
+INC_PR = "r9"
 
 LIC_FILES_CHKSUM = "file://COPYING;md5=59530bdf33659b29e73d4adb9f9f6552 \
 		file://COPYING.LIB;md5=9f604d8a4f8e74f4f5140845a21b6674 \
meta/recipes-devtools/gdb/gdb.inc +1 -0
index 9f5f34f..a620eca 100644
@@ -4,6 +4,7 @@ inherit gettext
 
 SRC_URI += "file://kill_arm_map_symbols.patch \
             file://gdbserver-cflags-last.diff;striplevel=0 \
+	    file://renesas-sh-native-support.patch \
            "
 #LDFLAGS_append = " -s"
 #export CFLAGS_append=" -L${STAGING_LIBDIR}"
meta/recipes-devtools/gdb/gdb/renesas-sh-native-support.patch new file +1389 -0

1,389 lines not on this page · raw message

Signature · 1 line
1.7.5.4
author
#10 lore raw

PATCH 10/10 busybox: Pass HOST_CC_ARCH through CONFIG_EXTRA_CFLAGS

In reply to Khem Raj

The -mabi option is part of HOST_CC_ARCH which does not appear in CFLAGS. This is for completeness since compiler already defaults to n64 it wont matter that much

---
 meta/recipes-core/busybox/busybox.inc       |    2 +-
 meta/recipes-core/busybox/busybox_1.19.4.bb |    2 +-
 2 files changed, 2 insertions(+), 2 deletions(-)
meta/recipes-core/busybox/busybox.inc +1 -1
index ec76ad2..1613878 100644
@@ -86,7 +86,7 @@ python () {
   d.setVar('configmangle_append',
                  "/^### CROSS$/a\\\n%s\n" %
                   ("\\n".join(["CONFIG_CROSS_COMPILER_PREFIX=\"${TARGET_PREFIX}\"",
-			       "CONFIG_EXTRA_CFLAGS=\"${CFLAGS}\""
+			       "CONFIG_EXTRA_CFLAGS=\"${CFLAGS}\" \"${HOST_CC_ARCH}\""
                         ])
                   ))
 }
meta/recipes-core/busybox/busybox_1.19.4.bb +1 -1
index ad8297e..2d4e961 100644
@@ -1,5 +1,5 @@
 require busybox.inc
-PR = "r2"
+PR = "r3"
 
 SRC_URI = "http://www.busybox.net/downloads/busybox-${PV}.tar.bz2;name=tarball \
            file://udhcpscript.patch \
Signature · 1 line
1.7.5.4
#11 lore raw
In reply to Khem Raj
Quoted 12 lines · Khem Raj

This patchset updates uclibc git and 0.9.33 recipes to latest git commits Some recipes needed fixing for new posix_spawn feature in uclibc_git fixed some recipes to let them build on SH4 architecture

The following changes since commit b8dc9182ed8959ce5a6aa285c3c7f78df2432ac3:

qt-4.8.1: Fix compile failures on qemux86 (2012-04-30 10:42:07 +0100)

are available in the git repository at:
git://git.openembedded.org/openembedded-core-contrib kraj/uclibc-update
http://cgit.openembedded.org/cgit.cgi/openembedded-core-contrib/log/?h=kraj/uclibc-update

Quoted 11 lines

Khem Raj (10):
uclibc-git: Update to latest git tip uclibc-0.9.33: Update to tip of 0.9.33 branch glib-2.0: Dont disable iconv for uclibc gettext,m4: Add -lrt to LDFLAGS for uclibc
musicbrainz: Specify libpthread on cmdline for uclibc
gdb: Dont need lttng-ust for SH4 gcc-cross.inc: Fix cross testing script
pcmanfm: Add sh3/sh4 to supported hosts
gdb: Add support for building gdb target for SH4
busybox: Pass HOST_CC_ARCH through CONFIG_EXTRA_CFLAGS

Merged to master, thanks.

Richard