On 10/4/2026 12:29 AM, Yonggang Luo wrote:
> `TARGET_ARCH` identifies a base architecture, not necessarily the full
> system-emulation target. For example, `mipsel-softmmu` uses 
> `TARGET_ARCH=mips`,
> which caused `query-target` to report `mips` instead of `mipsel`.
> 
> Generate `TARGET_SYS_EMU` separately. Softmmu builds use the full target name,
> as `SysEmuTarget` enumerates system targets. User-mode builds use
> `TARGET_ARCH`: user target names such as `aarch64_be` and `mipsn32el` do not
> have corresponding `SysEmuTarget` values. This means `mipsel-linux-user` now
> reports the base architecture `mips` rather than `mipsel`; its executable name
> remains unchanged. Initialize `TargetInfo.target_arch` from this token and add
> a qtest to check the `query-target` result against the target name of the
> running QEMU binary.
> 
> Yonggang Luo (4):
>   Revert "target-info: Statically initialize target_arch"
>   Revert "meson: Add TARGET_ARCH to config_target_data"
>   tests/qtest: check query-target architecture
>   target-info: preserve full softmmu target identity
> 
>  meson.build            | 11 +++++++++--
>  target-info-stub.c     |  2 +-
>  tests/qtest/qmp-test.c | 13 +++++++++++++
>  3 files changed, 23 insertions(+), 3 deletions(-)
> 

Why should we do this for user binaries? Current work around
single-binary only concerns system binaries, where all targets are
correctly covered by what exists.

Regards,
Pierrick

Reply via email to