From 5c8aa1f41f04519a8ba3997c0d8e3a71fe270fae Mon Sep 17 00:00:00 2001 From: Ross Burton Date: Fri, 28 Sep 2018 14:45:40 +0100 Subject: 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 --- meta/classes/archiver.bbclass | 7 +++++-- 1 file changed, 5 insertions(+), 2 deletions(-) (limited to 'meta/classes') 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) -- cgit 1.2.3-korg