[OE-core] [PATCH] package bbclass: allow per package PRIVATE_LIBS
Koen Kooi
koen at dominion.thruhere.net
Thu Jan 26 23:17:07 UTC 2012
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 <koen at dominion.thruhere.net>
>> ---
>> 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?
regards,
Koen
More information about the Openembedded-core
mailing list