From 6eb75df1000ce1905e83840204adb614659d25cf Mon Sep 17 00:00:00 2001 From: Randy Witt Date: Wed, 24 Feb 2016 15:27:42 -0800 Subject: populate_sdk_ext: Add images to SDK_INSTALL_TARGETS When running ext-sdk-prepare.py during sdk installation a check is done to make sure no tasks would run that aren't provided by the "leaf" recipes specified in SDK_INSTALL_TARGETS. However sometimes an image recipe can cause other images to be created such as an initramfs. So make sure those additional images are recognized by ext-sdk-prepare.py and don't flag an error. Signed-off-by: Randy Witt Signed-off-by: Ross Burton --- meta/classes/populate_sdk_ext.bbclass | 10 +++++++++- 1 file changed, 9 insertions(+), 1 deletion(-) (limited to 'meta/classes/populate_sdk_ext.bbclass') diff --git a/meta/classes/populate_sdk_ext.bbclass b/meta/classes/populate_sdk_ext.bbclass index a6badb84c6..9e2fc61699 100644 --- a/meta/classes/populate_sdk_ext.bbclass +++ b/meta/classes/populate_sdk_ext.bbclass @@ -40,12 +40,17 @@ def get_sdk_install_targets(d): if d.getVar('SDK_EXT_TYPE', True) != 'minimal': sdk_install_targets = d.getVar('SDK_TARGETS', True) + depd = d.getVar('BB_TASKDEPDATA', False) + for v in depd.itervalues(): + if v[1] == 'do_image_complete': + if v[0] not in sdk_install_targets: + sdk_install_targets += ' {}'.format(v[0]) + if d.getVar('SDK_INCLUDE_PKGDATA', True) == '1': sdk_install_targets += ' meta-world-pkgdata:do_allpackagedata' return sdk_install_targets -SDK_INSTALL_TARGETS = "${@get_sdk_install_targets(d)}" OE_INIT_ENV_SCRIPT ?= "oe-init-build-env" # The files from COREBASE that you want preserved in the COREBASE copied @@ -344,12 +349,15 @@ SDK_POST_INSTALL_COMMAND_task-populate-sdk-ext = "${sdk_ext_postinst}" SDK_POSTPROCESS_COMMAND_prepend_task-populate-sdk-ext = "copy_buildsystem; install_tools; " +SDK_INSTALL_TARGETS = "" fakeroot python do_populate_sdk_ext() { # FIXME hopefully we can remove this restriction at some point, but uninative # currently forces this upon us if d.getVar('SDK_ARCH', True) != d.getVar('BUILD_ARCH', True): bb.fatal('The extensible SDK can currently only be built for the same architecture as the machine being built on - SDK_ARCH is set to %s (likely via setting SDKMACHINE) which is different from the architecture of the build machine (%s). Unable to continue.' % (d.getVar('SDK_ARCH', True), d.getVar('BUILD_ARCH', True))) + d.setVar('SDK_INSTALL_TARGETS', get_sdk_install_targets(d)) + bb.build.exec_func("do_populate_sdk", d) } -- cgit 1.2.3-korg