diff options
author | Chen Qi <Qi.Chen@windriver.com> | 2022-12-04 20:58:56 -0800 |
---|---|---|
committer | Richard Purdie <richard.purdie@linuxfoundation.org> | 2022-12-08 10:48:36 +0000 |
commit | 5bab8d0318fc24da09246e8fba07caf53cb04619 (patch) | |
tree | 4e6d7e1548c339c5fdac1e669f047dbce920e1ae /meta | |
parent | 8ed9c9044245a83b305a4c25c3cb81ebcb48af85 (diff) | |
download | poky-5bab8d0318fc24da09246e8fba07caf53cb04619.tar.gz |
rm_work: adjust dependency to make do_rm_work_all depend on do_rm_work
For now, if we use rm_work and `bitbake core-image-minimal', some
recipes' WORKDIRs are not cleaned up, e.g., makedevs-native.
Adjust the dependency to make do_rm_work_all depend on do_rm_work
to solve this problem.
Below are the detailed explanation of why this would work.
Without this patch, the dependency chain is like:
[other deps] -> [do_rm_work] -+-> [do_build]
|
[do_rm_work_all] -------------+
With this patch, the depedency chain is like:
[other deps] -> [do_rm_work] -> [do_rm_work_all] -> [do_build]
Such dependency chain adjustment fixes the issue because do_rm_work_all
now depends on [other deps] and thus the [depends] of these [other deps].
Take core-image-minimal as an example. Before this adjustment,
do_rm_work_all does not have any relationship with do_rootfs, and we have
do_rootfs[depends] += "makedevs-native:do_populate_sysroot ..."
This essentially prevents 'recrdeptask' setting of do_rm_work_all extend
to makedevs-native. With this patch, the do_rm_work_all now depends
on do_rm_work which in turn depends on do_rootfs, and so do_rm_work_all's
recrdeptask could have effect on makedevs-native.
With this patch, all built recipes WORKDIR will be cleaned up with
a few expected exceptions such as kernel and qemu-helper-native.
(From OE-Core rev: b25cc45c9b39f79ba0a03c4556cb2e2431677b4e)
Signed-off-by: Chen Qi <Qi.Chen@windriver.com>
Signed-off-by: Alexandre Belloni <alexandre.belloni@bootlin.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
Diffstat (limited to 'meta')
-rw-r--r-- | meta/classes/rm_work.bbclass | 2 |
1 files changed, 1 insertions, 1 deletions
diff --git a/meta/classes/rm_work.bbclass b/meta/classes/rm_work.bbclass index 4121a13279..1f28bc7187 100644 --- a/meta/classes/rm_work.bbclass +++ b/meta/classes/rm_work.bbclass | |||
@@ -180,7 +180,7 @@ python inject_rm_work() { | |||
180 | # other recipes and thus will typically run much later than completion of | 180 | # other recipes and thus will typically run much later than completion of |
181 | # work in the recipe itself. | 181 | # work in the recipe itself. |
182 | # In practice, addtask() here merely updates the dependencies. | 182 | # In practice, addtask() here merely updates the dependencies. |
183 | bb.build.addtask('do_rm_work', 'do_build', ' '.join(deps), d) | 183 | bb.build.addtask('do_rm_work', 'do_rm_work_all do_build', ' '.join(deps), d) |
184 | 184 | ||
185 | # Always update do_build_without_rm_work dependencies. | 185 | # Always update do_build_without_rm_work dependencies. |
186 | bb.build.addtask('do_build_without_rm_work', '', ' '.join(deps), d) | 186 | bb.build.addtask('do_build_without_rm_work', '', ' '.join(deps), d) |