Decide which sdk we should load in run time without any hard coded values but look at which package type that is used.
Signed-off-by: Fredrik Gustafsson <fredr...@axis.com> --- meta/lib/oe/package_managers/deb/sdk.py | 4 ++-- meta/lib/oe/package_managers/ipk/sdk.py | 4 ++-- meta/lib/oe/package_managers/rpm/sdk.py | 4 ++-- meta/lib/oe/sdk.py | 13 ++----------- 4 files changed, 8 insertions(+), 17 deletions(-) diff --git a/meta/lib/oe/package_managers/deb/sdk.py b/meta/lib/oe/package_managers/deb/sdk.py index 154ec5ab17..950455988a 100644 --- a/meta/lib/oe/package_managers/deb/sdk.py +++ b/meta/lib/oe/package_managers/deb/sdk.py @@ -5,9 +5,9 @@ from oe.sdk import * from oe.package_managers.deb.manifest import * -class DpkgSdk(Sdk): +class PkgSdk(Sdk): def __init__(self, d, manifest_dir=None): - super(DpkgSdk, self).__init__(d, manifest_dir) + super(PkgSdk, self).__init__(d, manifest_dir) self.target_conf_dir = os.path.join(self.d.getVar("APTCONF_TARGET"), "apt") self.host_conf_dir = os.path.join(self.d.getVar("APTCONF_TARGET"), "apt-sdk") diff --git a/meta/lib/oe/package_managers/ipk/sdk.py b/meta/lib/oe/package_managers/ipk/sdk.py index 4862616c08..bd7bab6ebe 100644 --- a/meta/lib/oe/package_managers/ipk/sdk.py +++ b/meta/lib/oe/package_managers/ipk/sdk.py @@ -5,9 +5,9 @@ from oe.sdk import * from oe.package_managers.ipk.manifest import * -class OpkgSdk(Sdk): +class PkgSdk(Sdk): def __init__(self, d, manifest_dir=None): - super(OpkgSdk, self).__init__(d, manifest_dir) + super(PkgSdk, self).__init__(d, manifest_dir) self.target_conf = self.d.getVar("IPKGCONF_TARGET") self.host_conf = self.d.getVar("IPKGCONF_SDK") diff --git a/meta/lib/oe/package_managers/rpm/sdk.py b/meta/lib/oe/package_managers/rpm/sdk.py index fc120b6171..d2f7447657 100644 --- a/meta/lib/oe/package_managers/rpm/sdk.py +++ b/meta/lib/oe/package_managers/rpm/sdk.py @@ -5,9 +5,9 @@ from oe.sdk import * from oe.package_managers.rpm.manifest import * -class RpmSdk(Sdk): +class PkgSdk(Sdk): def __init__(self, d, manifest_dir=None, rpm_workdir="oe-sdk-repo"): - super(RpmSdk, self).__init__(d, manifest_dir) + super(PkgSdk, self).__init__(d, manifest_dir) self.target_manifest = PkgManifest(d, self.manifest_dir, Manifest.MANIFEST_TYPE_SDK_TARGET) diff --git a/meta/lib/oe/sdk.py b/meta/lib/oe/sdk.py index d8a00c04d1..3b7869f071 100644 --- a/meta/lib/oe/sdk.py +++ b/meta/lib/oe/sdk.py @@ -130,17 +130,8 @@ def sdk_list_installed_packages(d, target, rootfs_dir=None): def populate_sdk(d, manifest_dir=None): env_bkp = os.environ.copy() - img_type = d.getVar('IMAGE_PKGTYPE') - - from oe.package_managers.rpm.sdk import RpmSdk - from oe.package_managers.ipk.sdk import OpkgSdk - from oe.package_managers.deb.sdk import DpkgSdk - if img_type == "rpm": - RpmSdk(d, manifest_dir).populate() - elif img_type == "ipk": - OpkgSdk(d, manifest_dir).populate() - elif img_type == "deb": - DpkgSdk(d, manifest_dir).populate() + import importlib + importlib.import_module('oe.package_managers.' + d.getVar('IMAGE_PKGTYPE') + '.sdk').PkgSdk(d, manifest_dir).populate() os.environ.clear() os.environ.update(env_bkp) -- 2.20.1
-=-=-=-=-=-=-=-=-=-=-=- Links: You receive all messages sent to this group. View/Reply Online (#139919): https://lists.openembedded.org/g/openembedded-core/message/139919 Mute This Topic: https://lists.openembedded.org/mt/75100001/21656 Group Owner: openembedded-core+ow...@lists.openembedded.org Unsubscribe: https://lists.openembedded.org/g/openembedded-core/unsub [arch...@mail-archive.com] -=-=-=-=-=-=-=-=-=-=-=-