[OE-core] [PATCH] libc-package bbclass: fix binary localedata dependency code

Koen Kooi koen at dominion.thruhere.net
Wed Aug 3 06:19:25 UTC 2011


Op 2 aug. 2011, om 17:01 heeft Phil Blundell het volgende geschreven:

> It does look a bit weird.  That code was introduced in 561d8754,
> ostensibly as a merger of the eglibc and glibc equivalents.  But, the
> original code from glibc-package.bbclass did:
> 
>       def output_locale_binary_rdepends(name, pkgname, locale, encoding):
>               m = re.match("(.*)\.(.*)", name)
>               if m:
>                       glibc_name = "%s.%s" % (m.group(1), m.group(2).lower().replace("-",""))
>               else:
>                       glibc_name = name
>               bb.data.setVar('RDEPENDS_%s' % pkgname, legitimize_package_name('glibc-binary-localedata-%s' % glibc_name), d)
> 
> ... i.e. it was using the "." separator both for splitting and joining,
> which seems reasonable.  But somehow when it showed up in
> libc-package.bbclass it had gotten transmogrified so that it split on
> "_" but joined with "." as you showed below.  That seems bogus to me.

There is something funky going on if you use cross-localedef instead of on-target localedef and it looks like this is one of the reasons. I can respin the patch in different split formats if people want. But most of all I'd like to know what is going on :)

regards,

Koen

> 
> p.
> 
> On Tue, 2011-08-02 at 16:55 +0200, Koen Kooi wrote:
>> The bug I was seeing was caused by something else, but I'd still like feedback on this patch to find out why the dot vs dash difference exists
>> 
>> Op 2 aug. 2011, om 16:47 heeft Koen Kooi het volgende geschreven:
>> 
>>> When using binary locales rootfs generation fails with:
>>> 
>>> | Unknown package 'locale-base-en-us'.
>>> | Collected errors:
>>> |  * opkg_install_cmd: Cannot install package locale-base-en-us.
>>> 
>>> This is due to:
>>> 
>>> $ dpkg-deb -I ipk/armv7a/locale-base-en-us_2.12-r16_armv7a.ipk | grep Depends
>>> Depends: eglibc-binary-localedata-en.us
>>> 
>>> Note the '.' seperator
>>> 
>>> $ ls ipk/armv7a/ | grep binary-localedata-en | grep us
>>> eglibc-binary-localedata-en-us_2.12-r16_armv7a.ipk
>>> 
>>> Note the '-' seperator vs the '.' in the locale-base packages.
>>> 
>>> Signed-off-by: Koen Kooi <koen at dominion.thruhere.net>
>>> ---
>>> meta/classes/libc-package.bbclass |    2 +-
>>> 1 files changed, 1 insertions(+), 1 deletions(-)
>>> 
>>> diff --git a/meta/classes/libc-package.bbclass b/meta/classes/libc-package.bbclass
>>> index de57230..67d08c0 100644
>>> --- a/meta/classes/libc-package.bbclass
>>> +++ b/meta/classes/libc-package.bbclass
>>> @@ -243,7 +243,7 @@ python package_do_split_gconvs () {
>>> 	def output_locale_binary_rdepends(name, pkgname, locale, encoding):
>>> 		m = re.match("(.*)_(.*)", name)
>>> 		if m:
>>> -			libc_name = "%s.%s" % (m.group(1), m.group(2).lower().replace("-",""))
>>> +			libc_name = "%s-%s" % (m.group(1), m.group(2).lower().replace("-",""))
>>> 		else:
>>> 			libc_name = name
>>> 		bb.data.setVar('RDEPENDS_%s' % pkgname, legitimize_package_name('%s-binary-localedata-%s' \
>>> -- 
>>> 1.6.6.1
>>> 
>> 
>> 
>> _______________________________________________
>> Openembedded-core mailing list
>> Openembedded-core at lists.openembedded.org
>> http://lists.linuxtogo.org/cgi-bin/mailman/listinfo/openembedded-core
> 
> 
> 
> _______________________________________________
> Openembedded-core mailing list
> Openembedded-core at lists.openembedded.org
> http://lists.linuxtogo.org/cgi-bin/mailman/listinfo/openembedded-core





More information about the Openembedded-core mailing list