On 04/02/2022 16.29, Philippe Mathieu-Daudé wrote:
machine/ and net/ are only useful to machines;
block/ and migration/ to machine or tools.
Note we need to keep building machine.json generated sources
on all targets because some want to access X86CPUFeatureWordInfo
from any architecture ¯\_(ツ)_/¯ Otherwise we get on all but
x86 targets:
/usr/bin/ld: libqemu-i386-linux-user.fa.p/target_i386_cpu.c.o: in function
`x86_cpu_get_feature_words':
../target/i386/cpu.c:4587: undefined reference to
`visit_type_X86CPUFeatureWordInfoList'
collect2: error: ld returned 1 exit status
Would it be possible to move the X86CPUFeatureWordInfo stuff into
machine-target.json first, adding a proper 'if': 'TARGET_I386' there?
Thomas
Signed-off-by: Philippe Mathieu-Daudé <f4...@amsat.org>
---
qapi/meson.build | 20 ++++++++++----------
1 file changed, 10 insertions(+), 10 deletions(-)
diff --git a/qapi/meson.build b/qapi/meson.build
index 656ef0e039..38b01f3083 100644
--- a/qapi/meson.build
+++ b/qapi/meson.build
@@ -23,10 +23,6 @@ endif
qapi_all_modules = [
'authz',
- 'block',
- 'block-core',
- 'block-export',
- 'char',
'common',
'compat',
'control',
@@ -35,26 +31,23 @@ qapi_all_modules = [
'error',
'introspect',
'job',
- 'machine',
- 'machine-target',
+ 'machine', # x86 is considered multiarch by some
'migration',
'misc',
'misc-target',
- 'net',
'pragma',
- 'qom',
'replay',
'run-state',
'sockets',
'trace',
- 'transaction',
- 'yank',
]
if have_system
qapi_all_modules += [
'acpi',
'audio',
'qdev',
+ 'machine-target',
+ 'net',
'pci',
'rdma',
'rocker',
@@ -63,7 +56,14 @@ if have_system
endif
if have_system or have_tools
qapi_all_modules += [
+ 'block',
+ 'block-core',
+ 'block-export',
+ 'char',
+ 'qom',
'ui',
+ 'transaction',
+ 'yank',
]
endif