meson: Prepare to accept per-binary TargetInfo structure implementation

If a file defining the binary TargetInfo structure is available,
link with it. Otherwise keep using the stub.

Signed-off-by: Philippe Mathieu-Daudé <philmd@linaro.org>
Reviewed-by: Pierrick Bouvier <pierrick.bouvier@linaro.org>
Reviewed-by: Richard Henderson <richard.henderson@linaro.org>
Acked-by: Peter Maydell <peter.maydell@linaro.org>
Message-Id: <20251021205741.57109-6-philmd@linaro.org>
This commit is contained in:
Philippe Mathieu-Daudé 2025-03-23 21:03:16 +01:00
parent 38c5ab4003
commit 4dc7de81c2
3 changed files with 13 additions and 1 deletions

View file

@ -2007,6 +2007,7 @@ M: Philippe Mathieu-Daudé <philmd@linaro.org>
S: Supported
F: include/qemu/target-info*.h
F: target-info*.c
F: configs/targets/*.c
Xtensa Machines
---------------

View file

@ -0,0 +1,4 @@
foreach target : [
]
config_target_info += {target : files(target + '.c')}
endforeach

View file

@ -3312,6 +3312,7 @@ config_devices_h = {}
config_target_h = {}
config_target_mak = {}
config_base_arch_mak = {}
config_target_info = {}
disassemblers = {
'alpha' : ['CONFIG_ALPHA_DIS'],
@ -3912,9 +3913,9 @@ specific_ss.add(files('page-vary-target.c'))
common_ss.add(files('target-info.c'))
system_ss.add(files('target-info-qom.c'))
specific_ss.add(files('target-info-stub.c'))
subdir('backends')
subdir('configs/targets')
subdir('disas')
subdir('migration')
subdir('monitor')
@ -4365,6 +4366,12 @@ foreach target : target_dirs
arch_srcs += gdbstub_xml
endif
if target in config_target_info
arch_srcs += config_target_info[target]
else
arch_srcs += files('target-info-stub.c')
endif
t = target_arch[target_base_arch].apply(config_target, strict: false)
arch_srcs += t.sources()
arch_deps += t.dependencies()