On Mon, Oct 18, 2021 at 12:02 AM Warner Losh <i...@bsdimp.com> wrote: > > > > On Sun, Oct 17, 2021 at 10:29 PM Warner Losh <i...@bsdimp.com> wrote: >> >> >> >> On Sun, Oct 17, 2021 at 9:43 PM Kyle Evans <kev...@freebsd.org> wrote: >>> >>> On Fri, Oct 8, 2021 at 6:15 PM Warner Losh <i...@bsdimp.com> wrote: >>> > >>> > 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-f4...@amsat.org> >>> > Message-Id: <20210926220103.1721355-3-f4...@amsat.org> >>> > Signed-off-by: Philippe Mathieu-Daudé <f4...@amsat.org> >>> > Signed-off-by: Warner Losh <wl...@bsdimp.com> >>> > Acked-by: Paolo Bonzini <pbonzi...@redhat.com> >>> > >>> > Sponsored by: Netflix >>> > --- >>> > bsd-user/meson.build | 4 ++++ >>> > linux-user/meson.build | 4 ++++ >>> > meson.build | 3 +-- >>> > 3 files changed, 9 insertions(+), 2 deletions(-) >>> > >>> > diff --git a/bsd-user/meson.build b/bsd-user/meson.build >>> > index 0369549340..243fb78930 100644 >>> > --- a/bsd-user/meson.build >>> > +++ b/bsd-user/meson.build >>> > @@ -1,3 +1,7 @@ >>> > +if not config_target.has_key('CONFIG_BSD_USER') >>> > + subdir_done() >>> > +endif >>> > + >>> > bsd_user_ss.add(files( >>> > 'bsdload.c', >>> > 'elfload.c', >>> > diff --git a/linux-user/meson.build b/linux-user/meson.build >>> > index 9549f81682..602255a3d6 100644 >>> > --- a/linux-user/meson.build >>> > +++ b/linux-user/meson.build >>> > @@ -1,3 +1,7 @@ >>> > +if not config_target.has_key('CONFIG_LINUX_USER') >>> > + subdir_done() >>> > +endif >>> > + >>> > linux_user_ss.add(files( >>> > 'elfload.c', >>> > 'exit.c', >>> > diff --git a/meson.build b/meson.build >>> > index 99a0a3e689..1f2da5f7d9 100644 >>> > --- a/meson.build >>> > +++ b/meson.build >>> > @@ -2303,10 +2303,9 @@ subdir('ebpf') >>> > >>> > common_ss.add(libbpf) >>> > >>> > -bsd_user_ss.add(files('gdbstub.c')) >>> > 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 >>> > -- >>> > 2.32.0 >>> > >>> >>> I don't understand the gdbstub.c removal here; don't we still want to >>> be compiling it in, just only if the appropriate >>> CONFIG_{BSD,LINUX}_USER knob is set? I note that it doesn't appear to >>> be added in individual *-user/meson.build, I assume it's uncommon to >>> add in ../foo.c in meson-land... >> >> >> It's added to specific_ss at line 2536 >> specific_ss.add(files('cpu.c', 'disas.c', 'gdbstub.c'), capstone) >> >> so we don't need to add it again here. > > > I've also confirmed that it's built as both > libqemu-i386-bsd-user.fa.p/gdbstub.c.o > and libqemu-x86_64-bsd-user.fa.p/gdbstub.c.o, which is what I'd expect given > the current upstream supported architectures are only i386 and x86_64. > > Warner
Ah, ok, thanks! So that looks like a kind-of tangential cleanup, but related enough that it makes sense. Reviewed-by: Kyle Evans <kev...@freebsd.org>