On 04/05/2017 07:22 PM, Richard Purdie wrote:
On Wed, 2017-04-05 at 20:06 +1000, Nathan Rossi wrote:
On 30 March 2017 at 15:12, Chen Qi <[email protected]> wrote:
The 'recipe-sysroot' and 'recipe-sysroot-native' directories need
to
be preserved for runqemu to work correctly. Otherwise, when
'rm_work'
is enabled, these directories are removed, thus causing errors when
using runqemu .
[YOCTO #11266]
[YOCTO #11193]
Signed-off-by: Chen Qi <[email protected]>
---
meta/classes/image.bbclass | 1 +
meta/conf/machine/include/qemu.inc | 3 +++
2 files changed, 4 insertions(+)
diff --git a/meta/classes/image.bbclass
b/meta/classes/image.bbclass
index 405fd73..cac3a5f 100644
--- a/meta/classes/image.bbclass
+++ b/meta/classes/image.bbclass
@@ -8,6 +8,7 @@ inherit ${SDKEXTCLASS}
TOOLCHAIN_TARGET_TASK += "${PACKAGE_INSTALL}"
TOOLCHAIN_TARGET_TASK_ATTEMPTONLY +=
"${PACKAGE_INSTALL_ATTEMPTONLY}"
POPULATE_SDK_POST_TARGET_COMMAND += "rootfs_sysroot_relativelinks;
"
+RM_WORK_EXCLUDE_ITEMS_append = " ${IMAGE_RM_WORK_EXCLUDE_ITEMS}"
LICENSE = "MIT"
PACKAGES = ""
diff --git a/meta/conf/machine/include/qemu.inc
b/meta/conf/machine/include/qemu.inc
index 0e4103b..8345c08 100644
--- a/meta/conf/machine/include/qemu.inc
+++ b/meta/conf/machine/include/qemu.inc
@@ -29,3 +29,6 @@ KERNEL_FEATURES_append_pn-linux-yocto = "
features/nfsd/nfsd-enable.scc"
MACHINE_EXTRA_RRECOMMENDS += "rng-tools"
IMAGE_CLASSES += "qemuboot"
+
+# These two directories need to be preserved for runqemu to work
well
+IMAGE_RM_WORK_EXCLUDE_ITEMS = "recipe-sysroot recipe-sysroot-
native"
Should this be setup by qemuboot.bbclass instead, so that it applies
to any image/machine (even those that do not use qemu.inc) that is
intended to be used by runqemu?
I'm trying to decide what the best approach here is. I'm thinking it
might be better to:
a) make qemu builds depend on qemu-helper-native
b) make that preserve its native sysroot (not the target one).
c) have runqemu look at qemu-helper-native
I think that should solve problems and work better than the above?
Cheers,
Richard
Hi Richard,
I've sent out a new patch series. The solution is a little bit different
from the above.
As 'tunctl' is from qemu-helper-native, and 'qemu-xxx' is from
qemu-native, I choose to have runqemu look at things under
sysroots-components. The STAGING_DIR_NATIVE and STAGING_BINDIR_NATIVE
logic is still preserved so that runqemu still works well in SDK.
I've used the following test cases for testing.
1) runqemu + rm_work
2) oe-selftest -r runqemu
3) runqemu + SDK
4) runqemu + Ext SDK
Best Regards,
Chen Qi
--
_______________________________________________
Openembedded-core mailing list
[email protected]
http://lists.openembedded.org/mailman/listinfo/openembedded-core