diff options
author | Nitin A Kamble <nitin.a.kamble@intel.com> | 2012-05-09 13:42:45 -0700 |
---|---|---|
committer | Richard Purdie <richard.purdie@linuxfoundation.org> | 2012-05-11 17:50:50 +0100 |
commit | 95be1d650f3e2b580e4070ee49f752ab3ad3098a (patch) | |
tree | f96c0a8cc76324ea9911b9cf075951e4f6100e16 /meta | |
parent | 49afb622c9fd214c093e9016e35ab84a56651af6 (diff) | |
download | poky-95be1d650f3e2b580e4070ee49f752ab3ad3098a.tar.gz |
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.
(From OE-Core rev: 8691038efb0aca4a2cd61fce0c53d10092e48b75)
Signed-off-by: Nitin A Kamble <nitin.a.kamble@intel.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
Diffstat (limited to 'meta')
-rw-r--r-- | meta/recipes-core/eglibc/eglibc-2.15/eglibc_fix_findidx_parameters.patch | 38 | ||||
-rw-r--r-- | 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 0000000000..bbf4605505 --- /dev/null +++ b/meta/recipes-core/eglibc/eglibc-2.15/eglibc_fix_findidx_parameters.patch | |||
@@ -0,0 +1,38 @@ | |||
1 | Upstream-Status: backport | ||
2 | |||
3 | Imported patch from: http://www.eglibc.org/archives/patches/msg01124.html | ||
4 | |||
5 | Signed-Off-By: Nitin A Kamble <nitin.a.kamble@intel.com> | ||
6 | 2012/05/09 | ||
7 | |||
8 | Index: libc/posix/xregex.c | ||
9 | =================================================================== | ||
10 | --- libc.orig/posix/xregex.c | ||
11 | +++ libc/posix/xregex.c | ||
12 | @@ -2943,7 +2943,7 @@ PREFIX(regex_compile) (const char *ARG_P | ||
13 | _NL_CURRENT (LC_COLLATE, | ||
14 | _NL_COLLATE_INDIRECTWC); | ||
15 | |||
16 | - idx = findidx ((const wint_t**)&cp); | ||
17 | + idx = findidx ((const wint_t**)&cp, -1); | ||
18 | if (idx == 0 || cp < (wint_t*) str + c1) | ||
19 | /* This is no valid character. */ | ||
20 | FREE_STACK_RETURN (REG_ECOLLATE); | ||
21 | @@ -3392,7 +3392,7 @@ PREFIX(regex_compile) (const char *ARG_P | ||
22 | indirect = (const int32_t *) | ||
23 | _NL_CURRENT (LC_COLLATE, _NL_COLLATE_INDIRECTMB); | ||
24 | |||
25 | - idx = findidx (&cp); | ||
26 | + idx = findidx (&cp, -1); | ||
27 | if (idx == 0 || cp < str + c1) | ||
28 | /* This is no valid character. */ | ||
29 | FREE_STACK_RETURN (REG_ECOLLATE); | ||
30 | @@ -6363,7 +6363,7 @@ byte_re_match_2_internal (struct re_patt | ||
31 | } | ||
32 | str_buf[i] = TRANSLATE(*(d+i)); | ||
33 | str_buf[i+1] = '\0'; /* sentinel */ | ||
34 | - idx2 = findidx ((const wint_t**)&cp); | ||
35 | + idx2 = findidx ((const wint_t**)&cp, -1); | ||
36 | } | ||
37 | |||
38 | /* 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 65ce9d3cbc..340ec9930f 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 | |||
3 | SRCREV = "17386" | 3 | SRCREV = "17386" |
4 | 4 | ||
5 | DEPENDS += "gperf-native" | 5 | DEPENDS += "gperf-native" |
6 | PR = "r9" | 6 | PR = "r10" |
7 | PR_append = "+svnr${SRCPV}" | 7 | PR_append = "+svnr${SRCPV}" |
8 | 8 | ||
9 | EGLIBC_BRANCH="eglibc-2_15" | 9 | EGLIBC_BRANCH="eglibc-2_15" |
@@ -24,6 +24,7 @@ SRC_URI = "svn://www.eglibc.org/svn/branches/;module=${EGLIBC_BRANCH};proto=http | |||
24 | file://GLRO_dl_debug_mask.patch \ | 24 | file://GLRO_dl_debug_mask.patch \ |
25 | file://initgroups_keys.patch \ | 25 | file://initgroups_keys.patch \ |
26 | file://use-localstatedir-for-vardbdir.patch \ | 26 | file://use-localstatedir-for-vardbdir.patch \ |
27 | file://eglibc_fix_findidx_parameters.patch \ | ||
27 | " | 28 | " |
28 | LIC_FILES_CHKSUM = "file://LICENSES;md5=98a1128c4b58120182cbea3b1752d8b9 \ | 29 | LIC_FILES_CHKSUM = "file://LICENSES;md5=98a1128c4b58120182cbea3b1752d8b9 \ |
29 | file://COPYING;md5=393a5ca445f6965873eca0259a17f833 \ | 30 | file://COPYING;md5=393a5ca445f6965873eca0259a17f833 \ |