Op 27 jan. 2012, om 00:52 heeft Richard Purdie het volgende geschreven: > On Fri, 2012-01-27 at 00:17 +0100, Koen Kooi wrote: >> Op 26 jan. 2012, om 21:51 heeft Richard Purdie het volgende geschreven: >> >>> On Thu, 2012-01-26 at 18:03 +0100, Koen Kooi wrote: >>>> If a recipe packages multiple versions of shlib (e.g. powervr drivers) we >>>> only want the shlib code to pickup $PN, not $PN-foo subpackages. >>>> This keeps backward compatibility with the global PRIVATE_LIBS usage if no >>>> per package PRIVATE_LIBS are set for a given package. In other words: this >>>> doesn't break the firefox recipe. >>>> >>>> Signed-off-by: Koen Kooi <[email protected]> >>>> --- >>>> meta/classes/package.bbclass | 5 ++++- >>>> 1 files changed, 4 insertions(+), 1 deletions(-) >>>> >>>> diff --git a/meta/classes/package.bbclass b/meta/classes/package.bbclass >>>> index 45447e3..22a76cf 100644 >>>> --- a/meta/classes/package.bbclass >>>> +++ b/meta/classes/package.bbclass >>>> @@ -1246,7 +1246,8 @@ python package_do_shlibs() { >>>> if not this_soname in sonames: >>>> # if library is private (only used by >>>> package) then do not build shlib for it >>>> if not private_libs or -1 == >>>> private_libs.find(this_soname): >>>> - sonames.append(this_soname) >>>> + if not private_libs_pkg or -1 >>>> == private_libs_pkg.find(this_soname): >>>> + >>>> sonames.append(this_soname) >>>> if libdir_re.match(root): >>>> needs_ldconfig = True >>>> if snap_symlinks and (file != this_soname): >>>> @@ -1328,6 +1329,8 @@ python package_do_shlibs() { >>>> shlib_provider = {} >>>> private_libs = d.getVar('PRIVATE_LIBS', True) >>>> for pkg in packages.split(): >>>> + if not private_libs: >>>> + private_libs_pkg = d.getVar('PRIVATE_LIBS_' + pkg, True) >>> >>> You might as well just put: >>> >>> private_libs = d.getVar('PRIVATE_LIBS_' + pkg, True) >>> >>> and drop the first bit of the patch. >> >> Wouldn't that kill backward compatibility? > > No, since it would only take effect if the plain PRIVATE_LIBS was not > set...
The problem with the 'private_libs' var is that it's global and this needs a pkg local variable. regards, Koen _______________________________________________ Openembedded-core mailing list [email protected] http://lists.linuxtogo.org/cgi-bin/mailman/listinfo/openembedded-core
