Hi Chen, Jose Quaresma via lists.openembedded.org <quaresma.jose= gmail....@lists.openembedded.org> escreveu no dia sexta, 13/01/2023 à(s) 15:39:
> Hi Chen, > > Just for your information, > This patch introduces a regression that breaks the do_create_spdx tasks > when building with multiconfig machines. > > I am investigating it more deeply and will come back with my findings. > I don't understand the reason for this regression but I am thinking of sending a revert for this patch. Here are the steps to reproduce: git clone https://git.yoctoproject.org/git/poky cd poky git clone https://git.yoctoproject.org/git/meta-arm git clone https://git.yoctoproject.org/git/meta-ti source oe-init-build-env bitbake-layers add-layer ../meta-arm/meta-arm-toolchain bitbake-layers add-layer ../meta-arm/meta-arm bitbake-layers add-layer ../meta-ti/meta-ti-bsp bitbake-layers add-layer ../meta-ti/meta-ti-extras echo 'INHERIT += "rm_work"' >>conf/local.conf echo 'INHERIT += "create-spdx"' >>conf/local.conf MACHINE=am64xx-evm bitbake core-image-minimal MACHINE=am62xx-evm bitbake core-image-minimal At least these two machines are broken. Jose > > Jose > > > Chen Qi <qi.c...@windriver.com> escreveu no dia segunda, 5/12/2022 à(s) > 04:59: > >> 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. >> >> Signed-off-by: Chen Qi <qi.c...@windriver.com> >> --- >> meta/classes/rm_work.bbclass | 2 +- >> 1 file changed, 1 insertion(+), 1 deletion(-) >> >> 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() { >> # other recipes and thus will typically run much later than >> completion of >> # work in the recipe itself. >> # In practice, addtask() here merely updates the dependencies. >> - bb.build.addtask('do_rm_work', 'do_build', ' '.join(deps), d) >> + bb.build.addtask('do_rm_work', 'do_rm_work_all do_build', ' >> '.join(deps), d) >> >> # Always update do_build_without_rm_work dependencies. >> bb.build.addtask('do_build_without_rm_work', '', ' '.join(deps), d) >> -- >> 2.37.1 >> >> >> >> >> > > -- > Best regards, > > José Quaresma > > > > -- Best regards, José Quaresma
-=-=-=-=-=-=-=-=-=-=-=- Links: You receive all messages sent to this group. View/Reply Online (#176092): https://lists.openembedded.org/g/openembedded-core/message/176092 Mute This Topic: https://lists.openembedded.org/mt/95462765/21656 Group Owner: openembedded-core+ow...@lists.openembedded.org Unsubscribe: https://lists.openembedded.org/g/openembedded-core/unsub [arch...@mail-archive.com] -=-=-=-=-=-=-=-=-=-=-=-