summaryrefslogtreecommitdiffstats
path: root/meta/classes
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:08 +0100
commit10e73107307ab5ece9d0430af17f3d9f28f457ad (patch)
tree828239f68f76836bb7532dd19eae27ff42247e92 /meta/classes
parentfb69823486e49561fbe4406c4c158cb7df081a93 (diff)
downloadpoky-10e73107307ab5ece9d0430af17f3d9f28f457ad.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. (From OE-Core rev: 29d285bc07bd7732c7ea39c0fd03c0b3c0d93e52) Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
Diffstat (limited to 'meta/classes')
-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):
1059 1059
1060 logit("Considering setscene task: %s" % (str(taskdependees[task])), log) 1060 logit("Considering setscene task: %s" % (str(taskdependees[task])), log)
1061 1061
1062 directtasks = ["do_populate_lic", "do_deploy_source_date_epoch", "do_shared_workdir", "do_stash_locale", "do_gcc_stash_builddir"]
1063
1062 def isNativeCross(x): 1064 def isNativeCross(x):
1063 return x.endswith("-native") or "-cross-" in x or "-crosssdk" in x or x.endswith("-cross") 1065 return x.endswith("-native") or "-cross-" in x or "-crosssdk" in x or x.endswith("-cross")
1064 1066
1065 # We only need to trigger populate_lic through direct dependencies
1066 if taskdependees[task][1] == "do_populate_lic":
1067 return True
1068
1069 # We only need to trigger deploy_source_date_epoch through direct dependencies 1067 # We only need to trigger deploy_source_date_epoch through direct dependencies
1070 if taskdependees[task][1] == "do_deploy_source_date_epoch": 1068 if taskdependees[task][1] in directtasks:
1071 return True
1072
1073 # stash_locale and gcc_stash_builddir are never needed as a dependency for built objects
1074 if taskdependees[task][1] == "do_stash_locale" or taskdependees[task][1] == "do_gcc_stash_builddir":
1075 return True 1069 return True
1076 1070
1077 # We only need to trigger packagedata through direct dependencies 1071 # We only need to trigger packagedata through direct dependencies
@@ -1143,13 +1137,9 @@ def setscene_depvalid(task, taskdependees, notneeded, d, log=None):
1143 # Target populate_sysroot need their dependencies 1137 # Target populate_sysroot need their dependencies
1144 return False 1138 return False
1145 1139
1146 if taskdependees[task][1] == 'do_shared_workdir': 1140 if taskdependees[dep][1] in directtasks:
1147 continue
1148
1149 if taskdependees[dep][1] == "do_populate_lic":
1150 continue 1141 continue
1151 1142
1152
1153 # Safe fallthrough default 1143 # Safe fallthrough default
1154 logit(" Default setscene dependency fall through due to dependency: %s" % (str(taskdependees[dep])), log) 1144 logit(" Default setscene dependency fall through due to dependency: %s" % (str(taskdependees[dep])), log)
1155 return False 1145 return False