* prepare for reading shlibs providers only from dependency tree of current recipe
[YOCTO #4628] Signed-off-by: Martin Jansa <martin.ja...@gmail.com> --- meta/classes/package.bbclass | 43 +++++++++++++++++++++++-------------------- 1 file changed, 23 insertions(+), 20 deletions(-) diff --git a/meta/classes/package.bbclass b/meta/classes/package.bbclass index 5c2d1c6..d80535d 100644 --- a/meta/classes/package.bbclass +++ b/meta/classes/package.bbclass @@ -1337,6 +1337,28 @@ python package_do_shlibs() { # Take shared lock since we're only reading, not writing lf = bb.utils.lockfile(d.expand("${PACKAGELOCK}")) + def read_shlib_providers: + list_re = re.compile('^(.*)\.list$') + # Go from least to most specific since the last one found wins + for dir in reversed(shlibs_dirs): + if not os.path.exists(dir): + continue + for file in os.listdir(dir): + m = list_re.match(file) + if m: + dep_pkg = m.group(1) + fd = open(os.path.join(dir, file)) + lines = fd.readlines() + fd.close() + ver_file = os.path.join(dir, dep_pkg + '.ver') + lib_ver = None + if os.path.exists(ver_file): + fd = open(ver_file) + lib_ver = fd.readline().rstrip() + fd.close() + for l in lines: + shlib_provider[l.rstrip()] = (dep_pkg, lib_ver) + def linux_so(file): needs_ldconfig = False cmd = d.getVar('OBJDUMP', True) + " -p " + pipes.quote(file) + " 2>/dev/null" @@ -1479,26 +1501,7 @@ python package_do_shlibs() { postinst += d.getVar('ldconfig_postinst_fragment', True) d.setVar('pkg_postinst_%s' % pkg, postinst) - list_re = re.compile('^(.*)\.list$') - # Go from least to most specific since the last one found wins - for dir in reversed(shlibs_dirs): - if not os.path.exists(dir): - continue - for file in os.listdir(dir): - m = list_re.match(file) - if m: - dep_pkg = m.group(1) - fd = open(os.path.join(dir, file)) - lines = fd.readlines() - fd.close() - ver_file = os.path.join(dir, dep_pkg + '.ver') - lib_ver = None - if os.path.exists(ver_file): - fd = open(ver_file) - lib_ver = fd.readline().rstrip() - fd.close() - for l in lines: - shlib_provider[l.rstrip()] = (dep_pkg, lib_ver) + read_shlib_providers() bb.utils.unlockfile(lf) -- 1.8.2.1 _______________________________________________ Openembedded-core mailing list Openembedded-core@lists.openembedded.org http://lists.openembedded.org/mailman/listinfo/openembedded-core