diff options
author | Jose Quaresma <quaresma.jose@gmail.com> | 2022-11-11 18:05:45 +0000 |
---|---|---|
committer | Steve Sakoman <steve@sakoman.com> | 2022-11-25 06:16:14 -1000 |
commit | f1f8f894048b325ce9a8af03b1c3b1c5a9c1f983 (patch) | |
tree | b5c6ec270e35abceeace8c4a7203ac0addf31ca8 | |
parent | 71ba56c6d2703f9d4498e2cbff9c0aa70b964801 (diff) | |
download | openembedded-core-f1f8f894048b325ce9a8af03b1c3b1c5a9c1f983.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>
(cherry picked from commit 292305700e39d0ebd64763f5032c39ace5005fad)
Signed-off-by: Steve Sakoman <steve@sakoman.com>
-rw-r--r-- | meta/lib/oe/sstatesig.py | 6 |
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" |