classes/populate_sdk_ext: ensure tasks to build the image are included
If you build an extensible SDK for an image and IMAGE_FSTYPES includes "live" then the extensible SDK will fail to install with a bunch of unexpected task execution errors, matching the missing items required to build the live image. The issue was we were still depending on do_rootfs rather than do_image_complete. The fix was slightly more complicated than just changing the task name as do_image_complete's dependencies are in the form of dependencies on tasks within the same recipe (represented in the "deps" varflag rather than the "depends" varflag). Fixes [YOCTO #9826]. (From OE-Core rev: 2b9c092e89b421bf7fd6a7c9604a83ae420d85ba) Signed-off-by: Paul Eggleton <paul.eggleton@linux.intel.com> Signed-off-by: Ross Burton <ross.burton@intel.com> Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
This commit is contained in:
parent
1063622cc6
commit
c7ab9f3ca1
|
@ -450,7 +450,13 @@ fakeroot python do_populate_sdk_ext() {
|
|||
}
|
||||
|
||||
def get_ext_sdk_depends(d):
|
||||
return d.getVarFlag('do_rootfs', 'depends', True) + ' ' + d.getVarFlag('do_build', 'depends', True)
|
||||
# Note: the deps varflag is a list not a string, so we need to specify expand=False
|
||||
deps = d.getVarFlag('do_image_complete', 'deps', False)
|
||||
pn = d.getVar('PN', True)
|
||||
deplist = ['%s:%s' % (pn, dep) for dep in deps]
|
||||
for task in ['do_image_complete', 'do_rootfs', 'do_build']:
|
||||
deplist.extend((d.getVarFlag(task, 'depends', True) or '').split())
|
||||
return ' '.join(deplist)
|
||||
|
||||
python do_sdk_depends() {
|
||||
# We have to do this separately in its own task so we avoid recursing into
|
||||
|
|
Loading…
Reference in New Issue