summaryrefslogtreecommitdiffstats
diff options
context:
space:
mode:
authorRichard Purdie <richard.purdie@linuxfoundation.org>2021-09-21 11:12:05 +0100
committerRichard Purdie <richard.purdie@linuxfoundation.org>2021-09-23 13:52:05 +0100
commit29d285bc07bd7732c7ea39c0fd03c0b3c0d93e52 (patch)
tree2f9858d5e84bd7f1e7cfc476cb36d75b99f08b8a
parent601cee016da5c7505915e26641a085714de175ce (diff)
downloadopenembedded-core-contrib-29d285bc07bd7732c7ea39c0fd03c0b3c0d93e52.tar.gz
ssate: Cleanup directtasks handling
There are several tasks which should only be triggered by direct dependencies. Some are listed in the dep loop, some are not. They should all be in both cases. Fix this by making a list and using the list in both cases to fix various inconsistencies. Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
-rw-r--r--meta/classes/sstate.bbclass18
1 files changed, 4 insertions, 14 deletions
diff --git a/meta/classes/sstate.bbclass b/meta/classes/sstate.bbclass
index 5accc13a89..92a73114bb 100644
--- a/meta/classes/sstate.bbclass
+++ b/meta/classes/sstate.bbclass
@@ -1059,19 +1059,13 @@ def setscene_depvalid(task, taskdependees, notneeded, d, log=None):
logit("Considering setscene task: %s" % (str(taskdependees[task])), log)
+ directtasks = ["do_populate_lic", "do_deploy_source_date_epoch", "do_shared_workdir", "do_stash_locale", "do_gcc_stash_builddir"]
+
def isNativeCross(x):
return x.endswith("-native") or "-cross-" in x or "-crosssdk" in x or x.endswith("-cross")
- # We only need to trigger populate_lic through direct dependencies
- if taskdependees[task][1] == "do_populate_lic":
- return True
-
# We only need to trigger deploy_source_date_epoch through direct dependencies
- if taskdependees[task][1] == "do_deploy_source_date_epoch":
- return True
-
- # stash_locale and gcc_stash_builddir are never needed as a dependency for built objects
- if taskdependees[task][1] == "do_stash_locale" or taskdependees[task][1] == "do_gcc_stash_builddir":
+ if taskdependees[task][1] in directtasks:
return True
# We only need to trigger packagedata through direct dependencies
@@ -1143,13 +1137,9 @@ def setscene_depvalid(task, taskdependees, notneeded, d, log=None):
# Target populate_sysroot need their dependencies
return False
- if taskdependees[task][1] == 'do_shared_workdir':
- continue
-
- if taskdependees[dep][1] == "do_populate_lic":
+ if taskdependees[dep][1] in directtasks:
continue
-
# Safe fallthrough default
logit(" Default setscene dependency fall through due to dependency: %s" % (str(taskdependees[dep])), log)
return False