summaryrefslogtreecommitdiffstats
path: root/meta/lib/oe/sstatesig.py
diff options
context:
space:
mode:
authorJose Quaresma <quaresma.jose@gmail.com>2022-11-11 18:05:45 +0000
committerRichard Purdie <richard.purdie@linuxfoundation.org>2022-11-14 16:19:39 +0000
commit292305700e39d0ebd64763f5032c39ace5005fad (patch)
treed04439ccdef0e2144b4d2eb1052cbb5708772b91 /meta/lib/oe/sstatesig.py
parent1e2381d870b81813d3e9841fc207ac1cfa388386 (diff)
downloadopenembedded-core-292305700e39d0ebd64763f5032c39ace5005fad.tar.gz
sstatesig: skip the rm_work task signature
We can skip the rm_work task signature to avoid running the task when we remove some tasks from the dependencie chain. The inject_rm_work handler on the rm_work bbclass triggers the rm_work task running for any signature change in the dependencie chain of the task do_build of each recipe. i.e INHERIT:remove = "create-spdx" will trigger the do_rm_work when we collect the sstate cache with INHERIT = "create-spdx" Signed-off-by: Jose Quaresma <jose.quaresma@foundries.io> Signed-off-by: Alexandre Belloni <alexandre.belloni@bootlin.com>
Diffstat (limited to 'meta/lib/oe/sstatesig.py')
-rw-r--r--meta/lib/oe/sstatesig.py6
1 files changed, 6 insertions, 0 deletions
diff --git a/meta/lib/oe/sstatesig.py b/meta/lib/oe/sstatesig.py
index fad10af539..aa273df970 100644
--- a/meta/lib/oe/sstatesig.py
+++ b/meta/lib/oe/sstatesig.py
@@ -32,6 +32,12 @@ def sstate_rundepfilter(siggen, fn, recipename, task, dep, depname, dataCaches):
depmc, _, deptaskname, depmcfn = bb.runqueue.split_tid_mcfn(dep)
mc, _ = bb.runqueue.split_mc(fn)
+ # We can skip the rm_work task signature to avoid running the task
+ # when we remove some tasks from the dependencie chain
+ # i.e INHERIT:remove = "create-spdx" will trigger the do_rm_work
+ if task == "do_rm_work":
+ return False
+
# Keep all dependencies between SPDX tasks in the signature. SPDX documents
# are linked together by hashes, which means if a dependent document changes,
# all downstream documents must be re-written (even if they are "safe"