[oe-commits] Khem Raj : glib-2.0: Dont disable iconv for uclibc

git at git.openembedded.org git at git.openembedded.org
Tue May 1 13:34:14 UTC 2012


Module: openembedded-core.git
Branch: master-next
Commit: d13b1dc1897af733cc2ec22df50ae9d1fd0b48af
URL:    http://git.openembedded.org/?p=openembedded-core.git&a=commit;h=d13b1dc1897af733cc2ec22df50ae9d1fd0b48af

Author: Khem Raj <raj.khem at gmail.com>
Date:   Sun Apr 29 14:59:15 2012 -0700

glib-2.0: Dont disable iconv for uclibc

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

Signed-off-by: Khem Raj <raj.khem at gmail.com>

---

 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(-)

diff --git a/meta/recipes-core/glib-2.0/glib-2.0/no-iconv.patch b/meta/recipes-core/glib-2.0/glib-2.0/no-iconv.patch
deleted file mode 100644
index 9c06fe6..0000000
--- a/meta/recipes-core/glib-2.0/glib-2.0/no-iconv.patch
+++ /dev/null
@@ -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 <raj.khem at gmail.com>
-
-
-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, 
diff --git a/meta/recipes-core/glib-2.0/glib-2.0_2.30.3.bb b/meta/recipes-core/glib-2.0/glib-2.0_2.30.3.bb
index f1f9217..405402e 100644
--- a/meta/recipes-core/glib-2.0/glib-2.0_2.30.3.bb
+++ b/meta/recipes-core/glib-2.0/glib-2.0_2.30.3.bb
@@ -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"
 





More information about the Openembedded-commits mailing list