Bug 15844

Summary: Ensure oe-core world build succeeds with qemu-usermode disabled
Product: [Build System, Metadata & Runtime] OE-Core Reporter: Chen Qi <Qi.Chen>
Component: coreAssignee: Chen Qi <Qi.Chen>
Status: NEW --- QA Contact:
Severity: normal    
Priority: Medium+ CC: meta.mr.watcher, meta.watcher, Qi.Chen, randy.macleod, richard.purdie, ross.burton
Version: unspecified   
Target Milestone: 6.1 M4   
Hardware: x86   
OS: Multiple   
Whiteboard:
OS type for building Yocto: --- Type of Regression: ---
Verified: Documentation change: No (bug/feature does not impact docs)

Description Chen Qi 2025-04-30 05:40:23 UTC
For now, a world build for oe-core shows that two recipes fail to build with qemu-usermode disabled:
- appstream
- python3-numpy

We need to fix the build for these two recipes.

In addition, an oeqa test case should be added to ensure no regression.
The test case should be like:
1. Enable qemu-usermode, find all recipes that have a dependency, directly or indirectly, on qemu-native. It's easy to do so with 'bitbake -g world' and oe-depends-dot script.
2. Disable qemu-usermode, bitbake <the_above_list>.
Comment 1 Chen Qi 2025-04-30 05:47:26 UTC
Info:

The world build runs on poky commit:
573c7b54e6 (origin/master, origin/HEAD) cve-exclusions: correct cve status for 5 entries

I've now assigned the bug the myself. I'll work on it when I have time.
When I start to work on this bug, I'll change the status to "in-progress".

If anyone is interested, feel free to take it, as long as the status is still "New".
Comment 2 Ross Burton 2025-05-01 14:46:21 UTC
A simple dependency check won't be sufficient as it's possible for recipes to fail at configure time if they can't qemu-user (for example, meson will fail some checks if it doesn't have a qemu-user).

A sanity check to ensure that no explicit qemu-user dependencies appear is good, but I expect we'll need to do a proper build in the autobuilder too.