mirror of
https://github.com/Motorhead1991/qemu.git
synced 2025-07-31 14:23:53 -06:00
meson: apply target config for picking files from lib{system, user}
semihosting code needs to be included only if CONFIG_SEMIHOSTING is set. However, this is a target configuration, so we need to apply it to the lib{system, user}_ss. As well, this prepares merging lib{system, user}_ss with {system, user}_ss. Acked-by: Richard Henderson <richard.henderson@linaro.org> Signed-off-by: Pierrick Bouvier <pierrick.bouvier@linaro.org> Tested-by: Philippe Mathieu-Daudé <philmd@linaro.org> Link: https://lore.kernel.org/r/20250521223414.248276-5-pierrick.bouvier@linaro.org Signed-off-by: Paolo Bonzini <pbonzini@redhat.com>
This commit is contained in:
parent
598a0ba8e6
commit
b17b51d325
1 changed files with 14 additions and 12 deletions
26
meson.build
26
meson.build
|
@ -4081,27 +4081,19 @@ common_ss.add(qom, qemuutil)
|
|||
common_ss.add_all(when: 'CONFIG_SYSTEM_ONLY', if_true: [system_ss])
|
||||
common_ss.add_all(when: 'CONFIG_USER_ONLY', if_true: user_ss)
|
||||
|
||||
libuser_ss = libuser_ss.apply({})
|
||||
libuser = static_library('user',
|
||||
libuser_ss.sources() + genh,
|
||||
libuser_ss.all_sources() + genh,
|
||||
c_args: ['-DCONFIG_USER_ONLY',
|
||||
'-DCOMPILING_SYSTEM_VS_USER'],
|
||||
dependencies: libuser_ss.dependencies(),
|
||||
dependencies: libuser_ss.all_dependencies(),
|
||||
build_by_default: false)
|
||||
libuser = declare_dependency(objects: libuser.extract_all_objects(recursive: false),
|
||||
dependencies: libuser_ss.dependencies())
|
||||
common_ss.add(when: 'CONFIG_USER_ONLY', if_true: libuser)
|
||||
|
||||
libsystem_ss = libsystem_ss.apply({})
|
||||
libsystem = static_library('system',
|
||||
libsystem_ss.sources() + genh,
|
||||
libsystem_ss.all_sources() + genh,
|
||||
c_args: ['-DCONFIG_SOFTMMU',
|
||||
'-DCOMPILING_SYSTEM_VS_USER'],
|
||||
dependencies: libsystem_ss.dependencies(),
|
||||
dependencies: libsystem_ss.all_dependencies(),
|
||||
build_by_default: false)
|
||||
libsystem = declare_dependency(objects: libsystem.extract_all_objects(recursive: false),
|
||||
dependencies: libsystem_ss.dependencies())
|
||||
common_ss.add(when: 'CONFIG_SYSTEM_ONLY', if_true: libsystem)
|
||||
|
||||
# Note that this library is never used directly (only through extract_objects)
|
||||
# and is not built by default; therefore, source files not used by the build
|
||||
|
@ -4343,6 +4335,16 @@ foreach target : target_dirs
|
|||
objects += lib.extract_objects(src.sources())
|
||||
arch_deps += src.dependencies()
|
||||
endif
|
||||
if target_type == 'system'
|
||||
src = libsystem_ss.apply(config_target, strict: false)
|
||||
objects += libsystem.extract_objects(src.sources())
|
||||
arch_deps += src.dependencies()
|
||||
endif
|
||||
if target_type == 'user'
|
||||
src = libuser_ss.apply(config_target, strict: false)
|
||||
objects += libuser.extract_objects(src.sources())
|
||||
arch_deps += src.dependencies()
|
||||
endif
|
||||
if target_type == 'system' and target_base_arch in hw_common_arch_libs
|
||||
src = hw_common_arch[target_base_arch].apply(config_target, strict: false)
|
||||
lib = hw_common_arch_libs[target_base_arch]
|
||||
|
|
Loading…
Add table
Add a link
Reference in a new issue