From: Ross Burton Date: Fri, 28 Sep 2018 13:45:40 +0000 (+0100) Subject: archiver: check tasks exist before adding dependencies X-Git-Tag: uninative-2.3~179 X-Git-Url: https://code.ossystems.io/gitweb?a=commitdiff_plain;h=5c8aa1f41f04519a8ba3997c0d8e3a71fe270fae;p=openembedded-core.git archiver: check tasks exist before adding dependencies Some recipes don't have do_configure, or have them but are marked as noexec. Check for their existance before hooking up dependencies. [ YOCTO #12868 ] Signed-off-by: Ross Burton Signed-off-by: Richard Purdie --- diff --git a/meta/classes/archiver.bbclass b/meta/classes/archiver.bbclass index 31c9b7eb4b..7c3e701e70 100644 --- a/meta/classes/archiver.bbclass +++ b/meta/classes/archiver.bbclass @@ -98,9 +98,12 @@ python () { # There is a corner case with "gcc-source-${PV}" recipes, they don't have # the "do_configure" task, so we need to use "do_preconfigure" - if pn.startswith("gcc-source-"): + def hasTask(task): + return bool(d.getVarFlag(task, "task", False)) and not bool(d.getVarFlag(task, "noexec", False)) + + if hasTask("do_preconfigure"): d.appendVarFlag('do_ar_configured', 'depends', ' %s:do_preconfigure' % pn) - else: + elif hasTask("do_configure"): d.appendVarFlag('do_ar_configured', 'depends', ' %s:do_configure' % pn) d.appendVarFlag('do_deploy_archives', 'depends', ' %s:do_ar_configured' % pn)