aboutsummaryrefslogtreecommitdiffstats
path: root/meta/classes
diff options
context:
space:
mode:
authorAlejandro Enedino Hernandez Samaniego <alejandro.enedino.hernandez-samaniego@xilinx.com>2018-07-25 09:05:51 -0700
committerRichard Purdie <richard.purdie@linuxfoundation.org>2018-08-01 10:06:46 +0100
commitf71bfe833c657244d2fd07b3b71e86081d7d1c04 (patch)
treeb3c8067ca18315fad64f29332471ea440daee881 /meta/classes
parent51a09ba2729a840a9f2f87b68c7f50a3e6ac0d04 (diff)
downloadopenembedded-core-contrib-f71bfe833c657244d2fd07b3b71e86081d7d1c04.tar.gz
multiconfig: Enable multiconfig dependencies on oe-core
This patch enables multiconfig dependencies (mcdepends) to be used on recipes using the following format: task[mcdepends] = "multiconfig:FROM-MC:TO-MC:PN:task-to-depend-on" For the sake of simplicity consider the following example: Assuming we have set up multiconfig builds, one for qemux86 and one for qemuarm, named x86 and arm respectively. Adding the following line to an image recipe (core-image-sato): do_image[mcdepends] = "multiconfig:x86:arm:core-image-minimal:do_rootfs" Would state that core-image-sato:do_image from x86 will depend on core-image-minimal:do_rootfs from arm so it can be executed. This patch makes modifications to bitbake.conf to enable mcdepends, and to sstatesig and staging.bbclass to avoid conflicts between packages from different multiconfigs. [YOCTO #10681] Signed-off-by: Alejandro Enedino Hernandez Samaniego <alejandr@xilinx.com> Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
Diffstat (limited to 'meta/classes')
-rw-r--r--meta/classes/staging.bbclass8
1 files changed, 7 insertions, 1 deletions
diff --git a/meta/classes/staging.bbclass b/meta/classes/staging.bbclass
index 41df883495..27b012ecbd 100644
--- a/meta/classes/staging.bbclass
+++ b/meta/classes/staging.bbclass
@@ -256,7 +256,7 @@ python extend_recipe_sysroot() {
workdir = d.getVar("WORKDIR")
#bb.warn(str(taskdepdata))
pn = d.getVar("PN")
-
+ mc = d.getVar("BB_CURRENT_MC")
stagingdir = d.getVar("STAGING_DIR")
sharedmanifests = d.getVar("COMPONENTS_DIR") + "/manifests"
recipesysroot = d.getVar("RECIPE_SYSROOT")
@@ -443,7 +443,13 @@ python extend_recipe_sysroot() {
msg_exists = []
msg_adding = []
+
for dep in configuredeps:
+ if mc != 'default':
+ # We should not care about other multiconfigs
+ depmc = dep.split(':')[1]
+ if depmc != mc:
+ continue
c = setscenedeps[dep][0]
if c not in installed:
continue