meson: *-user: only descend into *-user when configured
To increase flexibility, only descend into *-user when that is configured. This allows *-user to selectively include directories based on the host OS which may not exist on all hosts. Adopt Paolo's suggestion of checking the configuration in the directories that know about the configuration. Message-Id: <20210926220103.1721355-2-f4bug@amsat.org> Message-Id: <20210926220103.1721355-3-f4bug@amsat.org> Signed-off-by: Philippe Mathieu-Daudé <f4bug@amsat.org> Signed-off-by: Warner Losh <wlosh@bsdimp.com> Acked-by: Paolo Bonzini <pbonzinni@redhat.com> Reviewed-by: Kyle Evans <kevans@FreeBSD.org>
This commit is contained in:
parent
91a5adda15
commit
dda2da6c94
@ -1,3 +1,7 @@
|
||||
if not have_bsd_user
|
||||
subdir_done()
|
||||
endif
|
||||
|
||||
bsd_user_ss.add(files(
|
||||
'bsdload.c',
|
||||
'elfload.c',
|
||||
|
@ -1,3 +1,7 @@
|
||||
if not have_linux_user
|
||||
subdir_done()
|
||||
endif
|
||||
|
||||
linux_user_ss.add(files(
|
||||
'elfload.c',
|
||||
'exit.c',
|
||||
|
12
meson.build
12
meson.build
@ -40,12 +40,15 @@ config_host_data = configuration_data()
|
||||
genh = []
|
||||
|
||||
target_dirs = config_host['TARGET_DIRS'].split()
|
||||
have_user = false
|
||||
have_linux_user = false
|
||||
have_bsd_user = false
|
||||
have_system = false
|
||||
foreach target : target_dirs
|
||||
have_user = have_user or target.endswith('-user')
|
||||
have_linux_user = have_linux_user or target.endswith('linux-user')
|
||||
have_bsd_user = have_bsd_user or target.endswith('bsd-user')
|
||||
have_system = have_system or target.endswith('-softmmu')
|
||||
endforeach
|
||||
have_user = have_linux_user or have_bsd_user
|
||||
have_tools = 'CONFIG_TOOLS' in config_host
|
||||
have_block = have_system or have_tools
|
||||
|
||||
@ -2595,10 +2598,11 @@ subdir('bsd-user')
|
||||
subdir('linux-user')
|
||||
subdir('ebpf')
|
||||
|
||||
bsd_user_ss.add(files('gdbstub.c'))
|
||||
common_ss.add(libbpf)
|
||||
|
||||
specific_ss.add_all(when: 'CONFIG_BSD_USER', if_true: bsd_user_ss)
|
||||
|
||||
linux_user_ss.add(files('gdbstub.c', 'thunk.c'))
|
||||
linux_user_ss.add(files('thunk.c'))
|
||||
specific_ss.add_all(when: 'CONFIG_LINUX_USER', if_true: linux_user_ss)
|
||||
|
||||
# needed for fuzzing binaries
|
||||
|
Loading…
Reference in New Issue
Block a user