diff options
| -rw-r--r-- | meta/classes/package.bbclass | 16 |
1 files changed, 14 insertions, 2 deletions
diff --git a/meta/classes/package.bbclass b/meta/classes/package.bbclass index edeffa978f..07bc37879c 100644 --- a/meta/classes/package.bbclass +++ b/meta/classes/package.bbclass | |||
| @@ -1603,6 +1603,18 @@ python package_do_shlibs() { | |||
| 1603 | libdir_re = re.compile(".*/%s$" % d.getVar('baselib')) | 1603 | libdir_re = re.compile(".*/%s$" % d.getVar('baselib')) |
| 1604 | 1604 | ||
| 1605 | packages = d.getVar('PACKAGES') | 1605 | packages = d.getVar('PACKAGES') |
| 1606 | |||
| 1607 | shlib_pkgs = [] | ||
| 1608 | exclusion_list = d.getVar("EXCLUDE_PACKAGES_FROM_SHLIBS") | ||
| 1609 | if exclusion_list: | ||
| 1610 | for pkg in packages.split(): | ||
| 1611 | if pkg not in exclusion_list.split(): | ||
| 1612 | shlib_pkgs.append(pkg) | ||
| 1613 | else: | ||
| 1614 | bb.note("not generating shlibs for %s" % pkg) | ||
| 1615 | else: | ||
| 1616 | shlib_pkgs = packages.split() | ||
| 1617 | |||
| 1606 | targetos = d.getVar('TARGET_OS') | 1618 | targetos = d.getVar('TARGET_OS') |
| 1607 | 1619 | ||
| 1608 | workdir = d.getVar('WORKDIR') | 1620 | workdir = d.getVar('WORKDIR') |
| @@ -1734,7 +1746,7 @@ python package_do_shlibs() { | |||
| 1734 | needed = {} | 1746 | needed = {} |
| 1735 | shlib_provider = oe.package.read_shlib_providers(d) | 1747 | shlib_provider = oe.package.read_shlib_providers(d) |
| 1736 | 1748 | ||
| 1737 | for pkg in packages.split(): | 1749 | for pkg in shlib_pkgs: |
| 1738 | private_libs = d.getVar('PRIVATE_LIBS_' + pkg) or d.getVar('PRIVATE_LIBS') or "" | 1750 | private_libs = d.getVar('PRIVATE_LIBS_' + pkg) or d.getVar('PRIVATE_LIBS') or "" |
| 1739 | private_libs = private_libs.split() | 1751 | private_libs = private_libs.split() |
| 1740 | needs_ldconfig = False | 1752 | needs_ldconfig = False |
| @@ -1806,7 +1818,7 @@ python package_do_shlibs() { | |||
| 1806 | 1818 | ||
| 1807 | libsearchpath = [d.getVar('libdir'), d.getVar('base_libdir')] | 1819 | libsearchpath = [d.getVar('libdir'), d.getVar('base_libdir')] |
| 1808 | 1820 | ||
| 1809 | for pkg in packages.split(): | 1821 | for pkg in shlib_pkgs: |
| 1810 | bb.debug(2, "calculating shlib requirements for %s" % pkg) | 1822 | bb.debug(2, "calculating shlib requirements for %s" % pkg) |
| 1811 | 1823 | ||
| 1812 | private_libs = d.getVar('PRIVATE_LIBS_' + pkg) or d.getVar('PRIVATE_LIBS') or "" | 1824 | private_libs = d.getVar('PRIVATE_LIBS_' + pkg) or d.getVar('PRIVATE_LIBS') or "" |
