[oe-commits] Paul Menzel : lightmediascanner: Add `virtual/ libiconv` to `DEPENDS` and add patch for `libiconv`

git version control git at git.openembedded.org
Fri Aug 19 13:15:30 UTC 2011


Module: openembedded.git
Branch: master
Commit: 9764c4525c8b1186a1a3f9acd2e3aff98230ef22
URL:    http://git.openembedded.org/?p=openembedded.git&a=commit;h=9764c4525c8b1186a1a3f9acd2e3aff98230ef22

Author: Paul Menzel <paulepanter at users.sourceforge.net>
Date:   Wed Aug 17 22:30:23 2011 +0200

lightmediascanner: Add `virtual/libiconv` to `DEPENDS` and add patch for `libiconv`

Task compile fails with the following error using `minimal-uclibc` for `MACHINE = "beagleboard"`.

        Making all in bin
        make[3]: Entering directory `/oe/build-minimal-uclibc/minimal-uclibc-dev/work/armv7a-oe-linux-uclibceabi/lightmediascanner-1_0.4.1.0-r2/lightmediascanner-0.4.1.0/src/bin'
          CC     test.o
          CC     list-parsers.o
          CCLD   list-parsers
          CCLD   test
        ../../src/lib/.libs/liblightmediascanner.so: undefined reference to `libiconv_open'
        ../../src/lib/.libs/liblightmediascanner.so: undefined reference to `libiconv_close'
        ../../src/lib/.libs/liblightmediascanner.so: undefined reference to `libiconv'
        collect2: ld returned 1 exit status
        make[3]: *** [list-parsers] Error 1
        make[3]: *** Waiting for unfinished jobs....
        ../../src/lib/.libs/liblightmediascanner.so: undefined reference to `libiconv_open'
        ../../src/lib/.libs/liblightmediascanner.so: undefined reference to `libiconv_close'
        ../../src/lib/.libs/liblightmediascanner.so: undefined reference to `libiconv'
        collect2: ld returned 1 exit status
        make[3]: *** [test] Error 1

1. The libiconv Web site [1] tells to add `@LTLIBICONV@` to the linke command lines of the libraries or executables using libiconv functions. Gustavo send me a patch implementing this.

2. `touch config.rpath` before task configure because of the following error.

        autoreconf: running: automake --foreign --add-missing --copy --force-missing --warnings=cross
        automake: unknown warning category `cross'
        configure.ac:37: required file `./config.rpath' not found
        autoreconf: automake failed with exit status: 1

3. The next thing is to add `virtual/libiconv` to `DEPENDS`. EGLIBC and glibc do give an error because they include iconv support(?).

          CC     lightmediascanner_utils.lo
          CC     lightmediascanner.lo
          CC     lightmediascanner_charset_conv.lo
          CC     lightmediascanner_process.lo
        lightmediascanner_charset_conv.c:22:19: fatal error: iconv.h: No such file or directory
        compilation terminated.

This patch is build tested using `angstrom-2010.x` and `minimal{,-uclibc}` for `MACHINE = "beagleboard"`. Additionally `enjoy_svn.bb` depending on `lightmediascanner` has been build tested too.

[1] http://www.gnu.org/software/libiconv/

Signed-off-by: Paul Menzel <paulepanter at users.sourceforge.net>

---

 ...ONV-to-allow-external-libiconv-to-be-used.patch |   40 ++++++++++++++++++++
 ...ONV-to-allow-external-libiconv-to-be-used.patch |   40 ++++++++++++++++++++
 .../lightmediascanner/lightmediascanner_0.2.0.0.bb |   12 ++++-
 .../lightmediascanner/lightmediascanner_0.4.1.0.bb |   12 ++++-
 4 files changed, 98 insertions(+), 6 deletions(-)

diff --git a/recipes/lightmediascanner/lightmediascanner-0.2.0.0/0001-use-AM_ICONV-to-allow-external-libiconv-to-be-used.patch b/recipes/lightmediascanner/lightmediascanner-0.2.0.0/0001-use-AM_ICONV-to-allow-external-libiconv-to-be-used.patch
new file mode 100644
index 0000000..3bc3dd8
--- /dev/null
+++ b/recipes/lightmediascanner/lightmediascanner-0.2.0.0/0001-use-AM_ICONV-to-allow-external-libiconv-to-be-used.patch
@@ -0,0 +1,40 @@
+From 7318da42a053bd25e53d5dfd9408e4567d8bbae5 Mon Sep 17 00:00:00 2001
+From: Gustavo Sverzut Barbieri <barbieri at profusion.mobi>
+Date: Thu, 18 Aug 2011 16:18:25 -0300
+Subject: [PATCH] use AM_ICONV to allow external libiconv to be used.
+
+Upstream-Status: Submitted
+
+Patch from upstream author but not committed to repository yet.
+
+---
+ configure.ac        |    1 +
+ src/lib/Makefile.am |    2 +-
+ 2 files changed, 2 insertions(+), 1 deletions(-)
+
+diff --git a/configure.ac b/configure.ac
+index 8dda2bd..e606686 100644
+--- a/configure.ac
++++ b/configure.ac
+@@ -33,6 +33,7 @@ AS_AC_EXPAND(PLUGINSDIR, $pluginsdir)
+ AC_DEFINE_UNQUOTED(PLUGINSDIR, ["$PLUGINSDIR"], [Where plugins are installed.])
+ 
+ AC_CHECK_FUNCS(realpath)
++AM_ICONV
+ 
+ # required modules
+ PKG_CHECK_MODULES(SQLITE3, [sqlite3 >= 3.3])
+diff --git a/src/lib/Makefile.am b/src/lib/Makefile.am
+index 6c30db5..be9b124 100644
+--- a/src/lib/Makefile.am
++++ b/src/lib/Makefile.am
+@@ -24,5 +24,5 @@ liblightmediascanner_la_SOURCES = \
+ 	lightmediascanner_db_video.c \
+ 	lightmediascanner_db_playlist.c
+ 
+-liblightmediascanner_la_LIBADD = -ldl @SQLITE3_LIBS@
++liblightmediascanner_la_LIBADD = -ldl @SQLITE3_LIBS@ @LTLIBICONV@
+ liblightmediascanner_la_LDFLAGS = -version-info @version_info@
+-- 
+1.7.5.4
+
diff --git a/recipes/lightmediascanner/lightmediascanner-0.4.1.0/0001-use-AM_ICONV-to-allow-external-libiconv-to-be-used.patch b/recipes/lightmediascanner/lightmediascanner-0.4.1.0/0001-use-AM_ICONV-to-allow-external-libiconv-to-be-used.patch
new file mode 100644
index 0000000..80a93b2
--- /dev/null
+++ b/recipes/lightmediascanner/lightmediascanner-0.4.1.0/0001-use-AM_ICONV-to-allow-external-libiconv-to-be-used.patch
@@ -0,0 +1,40 @@
+From b971bbc5b992cd7dba166c37c77b3d66b3868c74 Mon Sep 17 00:00:00 2001
+From: Gustavo Sverzut Barbieri <barbieri at profusion.mobi>
+Date: Thu, 18 Aug 2011 16:18:25 -0300
+Subject: [PATCH] use AM_ICONV to allow external libiconv to be used.
+
+Upstream-Status: Submitted
+
+Patch from upstream author but not committed to repository yet.
+
+---
+ configure.ac        |    1 +
+ src/lib/Makefile.am |    2 +-
+ 2 files changed, 2 insertions(+), 1 deletions(-)
+
+diff --git a/configure.ac b/configure.ac
+index f917394..370a81f 100644
+--- a/configure.ac
++++ b/configure.ac
+@@ -34,6 +34,7 @@ AS_AC_EXPAND(PLUGINSDIR, $pluginsdir)
+ AC_DEFINE_UNQUOTED(PLUGINSDIR, ["$PLUGINSDIR"], [Where plugins are installed.])
+ 
+ AC_CHECK_FUNCS(realpath)
++AM_ICONV
+ 
+ # required modules
+ PKG_CHECK_MODULES(SQLITE3, [sqlite3 >= 3.3])
+diff --git a/src/lib/Makefile.am b/src/lib/Makefile.am
+index d262062..edcbe2e 100644
+--- a/src/lib/Makefile.am
++++ b/src/lib/Makefile.am
+@@ -24,5 +24,5 @@ liblightmediascanner_la_SOURCES = \
+ 	lightmediascanner_db_video.c \
+ 	lightmediascanner_db_playlist.c
+ 
+-liblightmediascanner_la_LIBADD = -ldl @SQLITE3_LIBS@
++liblightmediascanner_la_LIBADD = -ldl @SQLITE3_LIBS@ @LTLIBICONV@
+ liblightmediascanner_la_LDFLAGS = -version-info @version_info@
+-- 
+1.7.6
+
diff --git a/recipes/lightmediascanner/lightmediascanner_0.2.0.0.bb b/recipes/lightmediascanner/lightmediascanner_0.2.0.0.bb
index 5b5aaca..3865011 100644
--- a/recipes/lightmediascanner/lightmediascanner_0.2.0.0.bb
+++ b/recipes/lightmediascanner/lightmediascanner_0.2.0.0.bb
@@ -3,15 +3,21 @@ AUTHOR = "ProFUSION"
 HOMEPAGE = "http://lms.garage.maemo.org/"
 SECTION = "libs/multimedia"
 LICENSE = "LGPLv2.1+"
-DEPENDS = "sqlite3"
+DEPENDS = "sqlite3 virtual/libiconv"
 
 PE = "1"
-PR = "r3"
+PR = "r4"
 
-SRC_URI = "https://garage.maemo.org/frs/download.php/4626/lightmediascanner-${PV}.tar.bz2"
+SRC_URI = "https://garage.maemo.org/frs/download.php/4626/lightmediascanner-${PV}.tar.bz2 \
+    file://0001-use-AM_ICONV-to-allow-external-libiconv-to-be-used.patch \
+"
 
 inherit autotools pkgconfig
 
+do_configure_prepend() {
+    touch config.rpath
+}
+
 FILES_${PN}-dbg += "${libdir}/${PN}/plugins/.debug"
 
 SRC_URI[md5sum] = "ee1494b6dff3a50be64a3266819056d5"
diff --git a/recipes/lightmediascanner/lightmediascanner_0.4.1.0.bb b/recipes/lightmediascanner/lightmediascanner_0.4.1.0.bb
index 921fcb7..f1f8219 100644
--- a/recipes/lightmediascanner/lightmediascanner_0.4.1.0.bb
+++ b/recipes/lightmediascanner/lightmediascanner_0.4.1.0.bb
@@ -3,15 +3,21 @@ AUTHOR = "ProFUSION"
 HOMEPAGE = "http://lms.garage.maemo.org/"
 SECTION = "libs/multimedia"
 LICENSE = "LGPLv2.1+"
-DEPENDS = "sqlite3 flac"
+DEPENDS = "sqlite3 flac virtual/libiconv"
 
 PE = "1"
-PR = "r2"
+PR = "r3"
 
-SRC_URI = "https://garage.maemo.org/frs/download.php/8852/lightmediascanner-${PV}.tar.bz2"
+SRC_URI = "https://garage.maemo.org/frs/download.php/8852/lightmediascanner-${PV}.tar.bz2 \
+    file://0001-use-AM_ICONV-to-allow-external-libiconv-to-be-used.patch \
+"
 
 inherit autotools pkgconfig
 
+do_configure_prepend() {
+    touch config.rpath
+}
+
 do_install_append() {
     install -d ${D}/${bindir}/
     install -m 755 ${WORKDIR}/${PN}-${PV}/src/bin/.libs/test  ${D}/${bindir}/test-lms





More information about the Openembedded-commits mailing list