[OE-core] [PATCH 18/20] classes/populate_sdk_ext: Add SDK_EXT_TARGET_MANIFEST and SDK_EXT_HOST_MANIFEST
Paul Eggleton
paul.eggleton at linux.intel.com
Tue Feb 2 21:52:14 UTC 2016
On Tue, 02 Feb 2016 09:14:21 Aníbal Limón wrote:
> From: Aníbal Limón <limon.anibal at gmail.com>
>
> Extensible SDK needs to point to the correct manifest so add
> SDK_EXT_TARGET_MANIFEST and SDK_EXT_HOST_MANIFEST variables.
>
> oeqa/oetest.py: Fix SDKExtTestContext for load the correct manifests.
>
> Signed-off-by: Aníbal Limón <limon.anibal at gmail.com>
> ---
> meta/classes/populate_sdk_ext.bbclass | 3 +++
> meta/lib/oeqa/oetest.py | 11 +++++++++--
> 2 files changed, 12 insertions(+), 2 deletions(-)
>
> diff --git a/meta/classes/populate_sdk_ext.bbclass
> b/meta/classes/populate_sdk_ext.bbclass index fc96a4b..27dc030 100644
> --- a/meta/classes/populate_sdk_ext.bbclass
> +++ b/meta/classes/populate_sdk_ext.bbclass
> @@ -43,6 +43,9 @@ B_task-populate-sdk-ext = "${SDK_DIR}"
> TOOLCHAINEXT_OUTPUTNAME = "${SDK_NAME}-toolchain-ext-${SDK_VERSION}"
> TOOLCHAIN_OUTPUTNAME_task-populate-sdk-ext = "${TOOLCHAINEXT_OUTPUTNAME}"
>
> +SDK_EXT_TARGET_MANIFEST =
> "${SDK_DEPLOY}/${TOOLCHAINEXT_OUTPUTNAME}.target.manifest"
> +SDK_EXT_HOST_MANIFEST =
> "${SDK_DEPLOY}/${TOOLCHAINEXT_OUTPUTNAME}.host.manifest" +
> SDK_TITLE_task-populate-sdk-ext = "${@d.getVar('DISTRO_NAME', True) or
> d.getVar('DISTRO', True)} Extensible SDK"
>
> python copy_buildsystem () {
> diff --git a/meta/lib/oeqa/oetest.py b/meta/lib/oeqa/oetest.py
> index 6beb6c5..c951989 100644
> --- a/meta/lib/oeqa/oetest.py
> +++ b/meta/lib/oeqa/oetest.py
> @@ -382,14 +382,18 @@ class SDKTestContext(TestContext):
> self.sdktestdir = sdktestdir
> self.sdkenv = sdkenv
>
> + if not hasattr(self, 'target_manifest_name'):
> + self.target_manifest_name = "SDK_TARGET_MANIFEST"
> try:
> - with open(d.getVar("SDK_TARGET_MANIFEST", True)) as f:
> + with open(d.getVar(self.target_manifest_name, True)) as f:
> self.pkgmanifest = f.read()
> except IOError as e:
> bb.fatal("No package manifest file found. Did you build the sdk
> image?\n%s" % e)
>
> + if not hasattr(self, 'host_manifest_name'):
> + self.host_manifest_name = "SDK_HOST_MANIFEST"
> try:
> - with open(d.getVar("SDK_HOST_MANIFEST", True)) as f:
> + with open(d.getVar(self.host_manifest_name, True)) as f:
> self.hostpkgmanifest = f.read()
> except IOError as e:
> bb.fatal("No host package manifest file found. Did you build
> the sdk image?\n%s" % e) @@ -406,6 +410,9 @@ class
> SDKTestContext(TestContext):
>
> class SDKExtTestContext(SDKTestContext):
> def __init__(self, d, sdktestdir, sdkenv):
> + self.target_manifest_name = "SDK_EXT_TARGET_MANIFEST"
> + self.host_manifest_name = "SDK_EXT_HOST_MANIFEST"
> +
> super(SDKExtTestContext, self).__init__(d, sdktestdir, sdkenv)
>
> self.sdkextfilesdir = os.path.join(os.path.dirname(os.path.abspath(
I really don't like the idea of passing the variable name here rather than
values. However, besides that, the manifest is always the SDK name plus
.host.manifest or .target.manifest - do we even need to pass separate names?
All you should need is the name of the SDK i.e. the value of
TOOLCHAINEXT_OUTPUTNAME.
Cheers,
Paul
--
Paul Eggleton
Intel Open Source Technology Centre
More information about the Openembedded-core
mailing list