summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
-rw-r--r--classes/package.bbclass5
1 files changed, 4 insertions, 1 deletions
diff --git a/classes/package.bbclass b/classes/package.bbclass
index 07fdb7f890..19c206ae5e 100644
--- a/classes/package.bbclass
+++ b/classes/package.bbclass
@@ -573,6 +573,7 @@ python package_do_shlibs() {
bb.mkdirhier(shlibs_dir)
needed = {}
+ private_libs = bb.data.getVar('PRIVATE_LIBS', d, 1)
for pkg in packages.split():
needs_ldconfig = False
bb.debug(2, "calculating shlib provides for %s" % pkg)
@@ -596,7 +597,9 @@ python package_do_shlibs() {
needed[pkg].append(m.group(1))
m = re.match("\s+SONAME\s+([^\s]*)", l)
if m and not m.group(1) in sonames:
- sonames.append(m.group(1))
+ # if library is private (only used by package) then do not build shlib for it
+ if private_libs == '' or -1 == private_libs.find(m.group(1)):
+ sonames.append(m.group(1))
if m and libdir_re.match(root):
needs_ldconfig = True
shlibs_file = os.path.join(shlibs_dir, pkg + ".list")