Patchwork [3/8] libc-package.bbclass: fix for non /usr/lib libdir case

login
register
mail settings
Submitter Yu Ke
Date July 7, 2011, 2:10 p.m.
Message ID <1dce46eed7c322d8ada691bc2a61417ea6ffe928.1310047266.git.ke.yu@intel.com>
Download mbox | patch
Permalink /patch/7141/
State New, archived
Headers show

Comments

Yu Ke - July 7, 2011, 2:10 p.m.
if libdir is not /usr/lib, e.g. libdir=/usr/lib64, eglibc will
have build failure:
"
 cross-localedef  --uint32-align=4 --little-endian  --force --old-style --no-archive --prefix=/home/kyu3/sdb/lib64/tmp/work/x86_64-poky-linux/eglibc-2.13-r2+svnr14157/locale-tree --inputfile=/home/kyu3/sdb/lib64/tmp/work/x86_64-poky-linux/eglibc-2.13-r2+svnr14157/locale-tree//usr/share/i18n/locales/es_NI --charmap=UTF-8 /home/kyu3/sdb/lib64/tmp/work/x86_64-poky-linux/eglibc-2.13-r2+svnr14157/locale-tree/usr/lib/locale/es_NI
NOTE: stdout:
NOTE:
NOTE: stderr:
NOTE: cannot write output files to `(null)': No such file or directory
ERROR: Function 'localedef returned an error' failed
"

the reason is that libc-package.bbclass has hard code "/usr/lib". This patch
fix it by using libdir variable.

Signed-off-by: Yu Ke <ke.yu@intel.com>
---
 meta/classes/libc-package.bbclass |    4 ++--
 1 files changed, 2 insertions(+), 2 deletions(-)
Richard Purdie - July 8, 2011, 5:15 p.m.
On Thu, 2011-07-07 at 22:10 +0800, Yu Ke wrote:
> if libdir is not /usr/lib, e.g. libdir=/usr/lib64, eglibc will
> have build failure:
> "
>  cross-localedef  --uint32-align=4 --little-endian  --force --old-style --no-archive --prefix=/home/kyu3/sdb/lib64/tmp/work/x86_64-poky-linux/eglibc-2.13-r2+svnr14157/locale-tree --inputfile=/home/kyu3/sdb/lib64/tmp/work/x86_64-poky-linux/eglibc-2.13-r2+svnr14157/locale-tree//usr/share/i18n/locales/es_NI --charmap=UTF-8 /home/kyu3/sdb/lib64/tmp/work/x86_64-poky-linux/eglibc-2.13-r2+svnr14157/locale-tree/usr/lib/locale/es_NI
> NOTE: stdout:
> NOTE:
> NOTE: stderr:
> NOTE: cannot write output files to `(null)': No such file or directory
> ERROR: Function 'localedef returned an error' failed
> "
> 
> the reason is that libc-package.bbclass has hard code "/usr/lib". This patch
> fix it by using libdir variable.
> 
> Signed-off-by: Yu Ke <ke.yu@intel.com>
> ---
>  meta/classes/libc-package.bbclass |    4 ++--
>  1 files changed, 2 insertions(+), 2 deletions(-)
> 
> diff --git a/meta/classes/libc-package.bbclass b/meta/classes/libc-package.bbclass
> index 55e3d48..2ece9ae 100644
> --- a/meta/classes/libc-package.bbclass
> +++ b/meta/classes/libc-package.bbclass
> @@ -300,8 +300,8 @@ python package_do_split_gconvs () {
>  				raise bb.build.FuncFailed("unknown arch:" + target_arch + " for locale_arch_options")
>  
>  			localedef_opts += " --force --old-style --no-archive --prefix=%s \
> -				--inputfile=%s/%s/i18n/locales/%s --charmap=%s %s/usr/lib/locale/%s" \
> -				% (treedir, treedir, datadir, locale, encoding, treedir, name)
> +				--inputfile=%s/%s/i18n/locales/%s --charmap=%s %s%s/locale/%s" \
> +				% (treedir, treedir, datadir, locale, encoding, treedir, libdir, name)
>  
>  			cmd = "PATH=\"%s\" I18NPATH=\"%s\" GCONV_PATH=\"%s\" cross-localedef %s" % \
>  				(path, i18npath, gconvpath, localedef_opts)

This must be against an older tree since Lianhao sent a patch for this
already?

Cheers,

Richard

Patch

diff --git a/meta/classes/libc-package.bbclass b/meta/classes/libc-package.bbclass
index 55e3d48..2ece9ae 100644
--- a/meta/classes/libc-package.bbclass
+++ b/meta/classes/libc-package.bbclass
@@ -300,8 +300,8 @@  python package_do_split_gconvs () {
 				raise bb.build.FuncFailed("unknown arch:" + target_arch + " for locale_arch_options")
 
 			localedef_opts += " --force --old-style --no-archive --prefix=%s \
-				--inputfile=%s/%s/i18n/locales/%s --charmap=%s %s/usr/lib/locale/%s" \
-				% (treedir, treedir, datadir, locale, encoding, treedir, name)
+				--inputfile=%s/%s/i18n/locales/%s --charmap=%s %s%s/locale/%s" \
+				% (treedir, treedir, datadir, locale, encoding, treedir, libdir, name)
 
 			cmd = "PATH=\"%s\" I18NPATH=\"%s\" GCONV_PATH=\"%s\" cross-localedef %s" % \
 				(path, i18npath, gconvpath, localedef_opts)