This series exposes all qmp commands for any target unconditionally, allowing to compile QAPI generated code without any TARGET conditionals.
Based on original RFC from Daniel P. Berrangé: https://lore.kernel.org/qemu-devel/20250508135816.673087-1-berra...@redhat.com/ v2 -- - rtc-reset-reinjection now returns an error if the command is not applicable for current target (Markus & Daniel) v1 -- - remove file qapi/misc-target.json (Markus) - remove qapi/*-target.json from MAINTAINERS (Markus) - remove qapi_specific_outputs from qapi/meson.build (Markus) - update comment in rtc-reset-reinjection stub (Markus) - build QAPI generated code only once Daniel P. Berrangé (9): qapi: expose rtc-reset-reinjection command unconditionally qapi: expand docs for SEV commands qapi: make SEV commands unconditionally available qapi: expose query-gic-capability command unconditionally qapi: make SGX commands unconditionally available qapi: make Xen event commands unconditionally available qapi: remove the misc-target.json file qapi: make most CPU commands unconditionally available qapi: make s390x specific CPU commands unconditionally available Philippe Mathieu-Daudé (1): qapi: Make CpuModelExpansionInfo::deprecated-props optional and generic Pierrick Bouvier (2): qapi: remove qapi_specific_outputs from meson.build qapi: make all generated files common MAINTAINERS | 1 - qapi/machine-s390x.json | 121 +++++ qapi/machine-target.json | 523 ---------------------- qapi/machine.json | 363 +++++++++++++++ qapi/misc-arm.json | 49 ++ qapi/{misc-target.json => misc-i386.json} | 154 +++---- qapi/qapi-schema.json | 5 +- include/hw/s390x/cpu-topology.h | 2 +- hw/i386/kvm/xen-stubs.c | 13 - hw/i386/kvm/xen_evtchn.c | 2 +- hw/i386/monitor.c | 2 +- hw/i386/sgx-stub.c | 13 - hw/i386/sgx.c | 2 +- hw/s390x/cpu-topology.c | 4 +- hw/s390x/s390-skeys.c | 1 - stubs/monitor-arm-gic.c | 12 + stubs/monitor-cpu-s390x-kvm.c | 22 + stubs/monitor-cpu-s390x.c | 23 + stubs/monitor-cpu.c | 21 + stubs/monitor-i386-rtc.c | 11 + stubs/monitor-i386-sev.c | 36 ++ stubs/monitor-i386-sgx.c | 17 + stubs/monitor-i386-xen.c | 16 + target/arm/arm-qmp-cmds.c | 4 +- target/i386/cpu-system.c | 2 +- target/i386/cpu.c | 2 +- target/i386/monitor.c | 1 - target/i386/sev-system-stub.c | 32 -- target/i386/sev.c | 2 +- target/loongarch/loongarch-qmp-cmds.c | 2 +- target/mips/system/mips-qmp-cmds.c | 12 +- target/ppc/ppc-qmp-cmds.c | 12 +- target/riscv/riscv-qmp-cmds.c | 2 +- target/s390x/cpu_models_system.c | 2 +- tests/qtest/qmp-cmd-test.c | 1 + qapi/meson.build | 18 +- stubs/meson.build | 8 + 37 files changed, 808 insertions(+), 705 deletions(-) create mode 100644 qapi/machine-s390x.json delete mode 100644 qapi/machine-target.json create mode 100644 qapi/misc-arm.json rename qapi/{misc-target.json => misc-i386.json} (76%) create mode 100644 stubs/monitor-arm-gic.c create mode 100644 stubs/monitor-cpu-s390x-kvm.c create mode 100644 stubs/monitor-cpu-s390x.c create mode 100644 stubs/monitor-cpu.c create mode 100644 stubs/monitor-i386-rtc.c create mode 100644 stubs/monitor-i386-sev.c create mode 100644 stubs/monitor-i386-sgx.c create mode 100644 stubs/monitor-i386-xen.c -- 2.47.2