[oe-commits] Nitin A Kamble : eglibc: fix build with poky-tiny distro

git at git.openembedded.org git at git.openembedded.org
Fri May 11 16:58:38 UTC 2012


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

Author: Nitin A Kamble <nitin.a.kamble at intel.com>
Date:   Wed May  9 13:42:45 2012 -0700

eglibc: fix build with poky-tiny distro

This fixes bug [YOCTO #2443]

The prototype of findidx() has changed, but the code in xregex.c is
still using the old prototype. This issue stayed hidden because this
code only gets excercised when OPTION_POSIX_REGEXP_GLIBC is disabled
in the eglibc configuration.
  See the patch for further information.

Signed-off-by: Nitin A Kamble <nitin.a.kamble at intel.com>

---

 .../eglibc_fix_findidx_parameters.patch            |   38 ++++++++++++++++++++
 meta/recipes-core/eglibc/eglibc_2.15.bb            |    3 +-
 2 files changed, 40 insertions(+), 1 deletions(-)

diff --git a/meta/recipes-core/eglibc/eglibc-2.15/eglibc_fix_findidx_parameters.patch b/meta/recipes-core/eglibc/eglibc-2.15/eglibc_fix_findidx_parameters.patch
new file mode 100644
index 0000000..bbf4605
--- /dev/null
+++ b/meta/recipes-core/eglibc/eglibc-2.15/eglibc_fix_findidx_parameters.patch
@@ -0,0 +1,38 @@
+Upstream-Status: backport
+
+Imported patch from: http://www.eglibc.org/archives/patches/msg01124.html
+
+Signed-Off-By: Nitin A Kamble <nitin.a.kamble at intel.com>
+2012/05/09
+
+Index: libc/posix/xregex.c
+===================================================================
+--- libc.orig/posix/xregex.c
++++ libc/posix/xregex.c
+@@ -2943,7 +2943,7 @@ PREFIX(regex_compile) (const char *ARG_P
+ 				  _NL_CURRENT (LC_COLLATE,
+ 					       _NL_COLLATE_INDIRECTWC);
+ 
+-				idx = findidx ((const wint_t**)&cp);
++				idx = findidx ((const wint_t**)&cp, -1);
+ 				if (idx == 0 || cp < (wint_t*) str + c1)
+ 				  /* This is no valid character.  */
+ 				  FREE_STACK_RETURN (REG_ECOLLATE);
+@@ -3392,7 +3392,7 @@ PREFIX(regex_compile) (const char *ARG_P
+ 			    indirect = (const int32_t *)
+ 			      _NL_CURRENT (LC_COLLATE, _NL_COLLATE_INDIRECTMB);
+ 
+-			    idx = findidx (&cp);
++			    idx = findidx (&cp, -1);
+ 			    if (idx == 0 || cp < str + c1)
+ 			      /* This is no valid character.  */
+ 			      FREE_STACK_RETURN (REG_ECOLLATE);
+@@ -6363,7 +6363,7 @@ byte_re_match_2_internal (struct re_patt
+ 		      }
+ 		    str_buf[i] = TRANSLATE(*(d+i));
+ 		    str_buf[i+1] = '\0'; /* sentinel */
+-		    idx2 = findidx ((const wint_t**)&cp);
++		    idx2 = findidx ((const wint_t**)&cp, -1);
+ 		  }
+ 
+ 		/* Update d, however d will be incremented at
diff --git a/meta/recipes-core/eglibc/eglibc_2.15.bb b/meta/recipes-core/eglibc/eglibc_2.15.bb
index 65ce9d3..340ec99 100644
--- a/meta/recipes-core/eglibc/eglibc_2.15.bb
+++ b/meta/recipes-core/eglibc/eglibc_2.15.bb
@@ -3,7 +3,7 @@ require eglibc.inc
 SRCREV = "17386"
 
 DEPENDS += "gperf-native"
-PR = "r9"
+PR = "r10"
 PR_append = "+svnr${SRCPV}"
 
 EGLIBC_BRANCH="eglibc-2_15"
@@ -24,6 +24,7 @@ SRC_URI = "svn://www.eglibc.org/svn/branches/;module=${EGLIBC_BRANCH};proto=http
            file://GLRO_dl_debug_mask.patch \
            file://initgroups_keys.patch \
            file://use-localstatedir-for-vardbdir.patch \
+           file://eglibc_fix_findidx_parameters.patch \
           "
 LIC_FILES_CHKSUM = "file://LICENSES;md5=98a1128c4b58120182cbea3b1752d8b9 \
       file://COPYING;md5=393a5ca445f6965873eca0259a17f833 \





More information about the Openembedded-commits mailing list