meson: target
Similar to hw_arch, each architecture defines two sourceset which are placed in
dictionaries target_arch and target_softmmu_arch. These are then picked up
from there when building the per-emulator static_library.
Signed-off-by: Marc-André Lureau <marcandre.lureau@redhat.com>
Signed-off-by: Paolo Bonzini <pbonzini@redhat.com>
diff --git a/meson.build b/meson.build
index 5c9f66d..ac59ccc 100644
--- a/meson.build
+++ b/meson.build
@@ -647,10 +647,15 @@
qemuutil = declare_dependency(link_with: libqemuutil,
sources: genh + version_res)
+decodetree = generator(find_program('scripts/decodetree.py'),
+ output: 'decode-@BASENAME@.c.inc',
+ arguments: ['@INPUT@', '@EXTRA_ARGS@', '-o', '@OUTPUT@'])
+
subdir('audio')
subdir('io')
subdir('chardev')
subdir('fsdev')
+subdir('libdecnumber')
subdir('target')
subdir('dump')
@@ -787,6 +792,9 @@
if target.endswith('-softmmu')
qemu_target_name = 'qemu-system-' + target_name
target_type='system'
+ t = target_softmmu_arch[arch].apply(config_target, strict: false)
+ arch_srcs += t.sources()
+
hw_dir = target_name == 'sparc64' ? 'sparc64' : arch
hw = hw_arch[hw_dir].apply(config_target, strict: false)
arch_srcs += hw.sources()
@@ -807,6 +815,9 @@
)
endif
+ t = target_arch[arch].apply(config_target, strict: false)
+ arch_srcs += t.sources()
+
target_common = common_ss.apply(config_target, strict: false)
objects = common_all.extract_objects(target_common.sources())