aboutsummaryrefslogtreecommitdiffstats
path: root/meta/lib/oeqa/sdk
diff options
context:
space:
mode:
authorChen Qi <Qi.Chen@windriver.com>2018-08-29 10:56:29 +0800
committerRichard Purdie <richard.purdie@linuxfoundation.org>2018-08-30 16:16:06 +0100
commit163764ad4760a5fabf65640df5f968be98ad13d2 (patch)
treeb43453112c658dd736aace4e8934f4d10ad313b2 /meta/lib/oeqa/sdk
parent42acb0ebde4e88bcdf34a541b700f19d8607abb0 (diff)
downloadopenembedded-core-contrib-163764ad4760a5fabf65640df5f968be98ad13d2.tar.gz
sdk/context.py: add ability to check for multilib version of target package
Add a named argument 'multilib' for the hasTargetPackage function. Its default value is False. When setting to True, it will try to get the correct multilib prefix from the sdk_env, the environment setup script. We need this because we don't want unexpected run of some sdk test cases. The following steps will generate error. 1. Enable multilib for qemux86-64 require conf/multilib.conf MULTILIBS ?= "multilib:lib32" DEFAULTTUNE_virtclass-multilib-lib32 ?= "core2-32" 2. bitbake core-image-sato -c populate_sdk 3. bitbake core-image-sato -c testsdk The error message is like below. No package 'gtk+-3.0' found RESULTS - buildgalculator.GalculatorTest.test_galculator - Testcase -1: FAILED As we don't have lib32-gtk+3 installed, the test case should be skipped when testing against the lib32 environment setup script. Signed-off-by: Chen Qi <Qi.Chen@windriver.com> Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
Diffstat (limited to 'meta/lib/oeqa/sdk')
-rw-r--r--meta/lib/oeqa/sdk/context.py8
1 files changed, 7 insertions, 1 deletions
diff --git a/meta/lib/oeqa/sdk/context.py b/meta/lib/oeqa/sdk/context.py
index 7c091c0534..ec8972d05a 100644
--- a/meta/lib/oeqa/sdk/context.py
+++ b/meta/lib/oeqa/sdk/context.py
@@ -29,7 +29,13 @@ class OESDKTestContext(OETestContext):
def hasHostPackage(self, pkg):
return self._hasPackage(self.host_pkg_manifest, pkg)
- def hasTargetPackage(self, pkg):
+ def hasTargetPackage(self, pkg, multilib=False):
+ if multilib:
+ # match multilib according to sdk_env
+ mls = self.td.get('MULTILIB_VARIANTS', '').split()
+ for ml in mls:
+ if ('ml'+ml) in self.sdk_env:
+ pkg = ml + '-' + pkg
return self._hasPackage(self.target_pkg_manifest, pkg)
class OESDKTestContextExecutor(OETestContextExecutor):