Patchwork slang 2.2.4: fix the iconv existence checking

login
register
mail settings
Submitter Zheng Junling
Date Aug. 1, 2014, 12:10 p.m.
Message ID <1406895046-18513-1-git-send-email-zhengjunling@huawei.com>
Download mbox | patch
Permalink /patch/77093/
State Accepted
Commit a350f26ca55b5511703cc911d541fd433e403a4e
Headers show

Comments

Zheng Junling - Aug. 1, 2014, 12:10 p.m.
When checking whether there is iconv, the configure file always check
the host env.

Now we make it working properly by adding correct prefix for cross-
compiling environment.

Signed-off-by: Zheng Junling <zhengjunling@huawei.com>
---
 .../slang-fix-the-iconv-existence-checking.patch   | 116 +++++++++++++++++++++
 meta/recipes-extended/slang/slang_2.2.4.bb         |   1 +
 2 files changed, 117 insertions(+)
 create mode 100644 meta/recipes-extended/slang/slang/slang-fix-the-iconv-existence-checking.patch

Patch

diff --git a/meta/recipes-extended/slang/slang/slang-fix-the-iconv-existence-checking.patch b/meta/recipes-extended/slang/slang/slang-fix-the-iconv-existence-checking.patch
new file mode 100644
index 0000000..958fe98
--- /dev/null
+++ b/meta/recipes-extended/slang/slang/slang-fix-the-iconv-existence-checking.patch
@@ -0,0 +1,116 @@ 
+From 4588f4a0287787788eb86fb16f326cbaa7454e1d Mon Sep 17 00:00:00 2001
+From: Zheng Junling <zhengjunling@huawei.com>
+Date: Mon, 16 Jun 2014 12:51:25 +0000
+Subject: [PATCH] slang: fix the iconv existence checking
+
+When checking whether there is iconv, the configure file always check 
+the host env.
+
+Now we make it working properly by adding correct prefix for cross-
+compiling environment.
+
+When enabling iconv-module, we see a QA warning because rpaths hardcoded
+into the build. And rpaths are not needed, so let's turn this off.
+
+This patch is generated by referencing the existing "fix-check-pcre"
+patch.
+
+Upstream-Status: Inappropriate
+
+Signed-off-by: Zheng Junling <zhengjunling@huawei.com>
+---
+ configure | 60 ++++++------------------------------------------------------
+ 1 file changed, 6 insertions(+), 54 deletions(-)
+
+diff --git a/configure b/configure
+index 7a96256..91632f3 100755
+--- a/configure
++++ b/configure
+@@ -7909,6 +7909,7 @@ $as_echo_n "checking for the iconv library and header files ... " >&6; }
+ 	 /usr/include/iconv,/usr/lib \
+ 	 /usr/iconv/include,/usr/iconv/lib \
+ 	 /usr/include,/usr/lib \
++	 /usr/include,/usr/lib64 \
+ 	 /opt/include/iconv,/opt/lib \
+ 	 /opt/iconv/include,/opt/iconv/lib \
+ 	 /opt/include,/opt/lib"
+@@ -7939,14 +7940,14 @@ $as_echo_n "checking for the iconv library and header files ... " >&6; }
+         xincdir=`echo $include_and_lib | tr ',' ' ' | awk '{print $1}'`
+ 	xlibdir=`echo $include_and_lib | tr ',' ' ' | awk '{print $2}'`
+ 	found=0
+-	if test -r $xincdir/$xincfile
++	if test -r $PKG_CONFIG_SYSROOT_DIR/$xincdir/$xincfile
+ 	then
+ 	  for E in $exts
+ 	  do
+-	    if test -r "$xlibdir/$xlibfile.$E"
++	    if test -r "$PKG_CONFIG_SYSROOT_DIR/$xlibdir/$xlibfile.$E"
+ 	    then
+-	      jd_iconv_include_dir="$xincdir"
+-	      jd_iconv_library_dir="$xlibdir"
++	      jd_iconv_include_dir="$PKG_CONFIG_SYSROOT_DIR/$xincdir"
++	      jd_iconv_library_dir="$PKG_CONFIG_SYSROOT_DIR/$xlibdir"
+ 	      jd_with_iconv_library="yes"
+ 	      found=1
+ 	      break
+@@ -7972,56 +7973,7 @@ $as_echo "yes: $jd_iconv_library_dir and $jd_iconv_include_dir" >&6; }
+     then
+       ICONV_LIB=""
+     else
+-
+-if test "X$jd_iconv_library_dir" != "X"
+-then
+-  if test "X$RPATH" = "X"
+-  then
+-
+-case "$host_os" in
+-  *linux*|*solaris* )
+-    if test "X$GCC" = Xyes
+-    then
+-      if test "X$ac_R_nospace" = "Xno"
+-      then
+-        RPATH="-Wl,-R,"
+-      else
+-        RPATH="-Wl,-R"
+-      fi
+-    else
+-      if test "X$ac_R_nospace" = "Xno"
+-      then
+-        RPATH="-R "
+-      else
+-	RPATH="-R"
+-      fi
+-    fi
+-  ;;
+-  *osf*|*openbsd*)
+-    if test "X$GCC" = Xyes
+-    then
+-      RPATH="-Wl,-rpath,"
+-    else
+-      RPATH="-rpath "
+-    fi
+-  ;;
+-  *netbsd*)
+-    if test "X$GCC" = Xyes
+-    then
+-      RPATH="-Wl,-R"
+-    fi
+-  ;;
+-esac
+-
+-    if test "X$RPATH" != "X"
+-    then
+-      RPATH="$RPATH$jd_iconv_library_dir"
+-    fi
+-  else
+-    RPATH="$RPATH:$jd_iconv_library_dir"
+-  fi
+-fi
+-
++      RPATH=""
+     fi
+ 
+     ICONV_INC=-I$jd_iconv_include_dir
+-- 
+1.8.3.4
+
diff --git a/meta/recipes-extended/slang/slang_2.2.4.bb b/meta/recipes-extended/slang/slang_2.2.4.bb
index 90ed2d0..f3003c9 100644
--- a/meta/recipes-extended/slang/slang_2.2.4.bb
+++ b/meta/recipes-extended/slang/slang_2.2.4.bb
@@ -21,6 +21,7 @@  SRC_URI = "ftp://space.mit.edu/pub/davis/slang/v2.2/slang-${PV}.tar.bz2 \
            file://fix-check-pcre.patch \
            file://change-char-type-to-signed-char-in-macros.patch \
            file://sprintf-bug-concerning-8-bit-characters.patch \
+           file://slang-fix-the-iconv-existence-checking.patch \
           "
 
 inherit autotools-brokensep