Message ID | 20251016-fix-pseudo-native-v1-1-7c42af094122@pbarker.dev |
---|---|
State | New |
Headers | show |
Series | pseudo: Add hard sstate dependencies for pseudo-native | expand |
diff --git a/meta/recipes-devtools/pseudo/pseudo.inc b/meta/recipes-devtools/pseudo/pseudo.inc index 22c934977d9b..82499cdd74da 100644 --- a/meta/recipes-devtools/pseudo/pseudo.inc +++ b/meta/recipes-devtools/pseudo/pseudo.inc @@ -155,3 +155,10 @@ do_install:append:class-nativesdk () { } BBCLASSEXTEND = "native nativesdk" + +# Setscene tasks which run under fakeroot must not be executed before +# pseudo-native and *all* its runtime dependencies are available in the +# sysroot. +PSEUDO_SETSCENE_DEPS = "" +PSEUDO_SETSCENE_DEPS:class-native = "sqlite3-native:do_populate_sysroot attr-native:do_populate_sysroot" +do_populate_sysroot_setscene[depends] += "${PSEUDO_SETSCENE_DEPS}"
Where a task (such as do_package) runs under fakeroot, the corresponding setscene task (do_package_setscene) will also run under fakeroot when restoring from sstate. Assuming pseudo is used as the fakeroot implementation, we need pseudo-native and all its runtime dependencies to be available in the sysroot before running any setscene tasks under fakeroot. We already add a hard dependency from all do_package_setscene tasks to virtual/fakeroot-native:do_populate_sysroot in base.bbclass, but this does not cover transitive dependencies. So, extend the dependencies of pseudo-native:do_populate_sysroot_setscene to ensure that the sqlite3 library and attr binaries are also available in the sysroot before running fakeroot setscene tasks. [YOCTO #15963] Signed-off-by: Paul Barker <paul@pbarker.dev> --- meta/recipes-devtools/pseudo/pseudo.inc | 7 +++++++ 1 file changed, 7 insertions(+) --- base-commit: 58558b97c157469f060bb2ad59a40254fb6181e4 change-id: 20251016-fix-pseudo-native-221fe3fceea4 Best regards,