Reviewed-by: Konstantin Kostiuk <kkost...@redhat.com>

On Wed, Nov 9, 2022 at 7:37 PM Thomas Huth <th...@redhat.com> wrote:

> If configuring with "--disable-system --disable-user --enable-guest-agent"
> the linking currently fails with:
>
> qga/qemu-ga.p/commands.c.o: In function `qmp_command_info':
> build/../../home/thuth/devel/qemu/qga/commands.c:70: undefined reference
> to `qmp_command_name'
> build/../../home/thuth/devel/qemu/qga/commands.c:71: undefined reference
> to `qmp_command_is_enabled'
> build/../../home/thuth/devel/qemu/qga/commands.c:72: undefined reference
> to `qmp_has_success_response'
> qga/qemu-ga.p/commands.c.o: In function `qmp_guest_info':
> build/../../home/thuth/devel/qemu/qga/commands.c:82: undefined reference
> to `qmp_for_each_command'
> qga/qemu-ga.p/commands.c.o: In function `qmp_guest_exec':
> build/../../home/thuth/devel/qemu/qga/commands.c:410: undefined reference
> to `qbase64_decode'
> qga/qemu-ga.p/channel-posix.c.o: In function `ga_channel_open':
> build/../../home/thuth/devel/qemu/qga/channel-posix.c:214: undefined
> reference to `unix_listen'
> build/../../home/thuth/devel/qemu/qga/channel-posix.c:228: undefined
> reference to `socket_parse'
> build/../../home/thuth/devel/qemu/qga/channel-posix.c:234: undefined
> reference to `socket_listen'
> qga/qemu-ga.p/commands-posix.c.o: In function `qmp_guest_file_write':
> build/../../home/thuth/devel/qemu/qga/commands-posix.c:527: undefined
> reference to `qbase64_decode'
>
> Let's make sure that we also compile and link the required files if
> the system emulators have not been enabled.
>
> Signed-off-by: Thomas Huth <th...@redhat.com>
> ---
>  qapi/meson.build  | 2 +-
>  stubs/meson.build | 2 +-
>  util/meson.build  | 2 +-
>  3 files changed, 3 insertions(+), 3 deletions(-)
>
> diff --git a/qapi/meson.build b/qapi/meson.build
> index 9a36c15c04..fbdb442fdf 100644
> --- a/qapi/meson.build
> +++ b/qapi/meson.build
> @@ -13,7 +13,7 @@ util_ss.add(files(
>  if have_system
>    util_ss.add(files('qapi-type-helpers.c'))
>  endif
> -if have_system or have_tools
> +if have_system or have_tools or have_ga
>    util_ss.add(files(
>      'qmp-dispatch.c',
>      'qmp-event.c',
> diff --git a/stubs/meson.build b/stubs/meson.build
> index 4314161f5f..c96a74f095 100644
> --- a/stubs/meson.build
> +++ b/stubs/meson.build
> @@ -49,7 +49,7 @@ stub_ss.add(files('vmstate.c'))
>  stub_ss.add(files('vm-stop.c'))
>  stub_ss.add(files('win32-kbd-hook.c'))
>  stub_ss.add(files('cpu-synchronize-state.c'))
> -if have_block
> +if have_block or have_ga
>    stub_ss.add(files('replay-tools.c'))
>  endif
>  if have_system
> diff --git a/util/meson.build b/util/meson.build
> index 59c1f467bb..b260539bd5 100644
> --- a/util/meson.build
> +++ b/util/meson.build
> @@ -68,7 +68,7 @@ if have_system
>    util_ss.add(when: 'CONFIG_LINUX', if_true: files('userfaultfd.c'))
>  endif
>
> -if have_block
> +if have_block or have_ga
>    util_ss.add(files('aiocb.c', 'async.c', 'aio-wait.c'))
>    util_ss.add(files('base64.c'))
>    util_ss.add(files('buffer.c'))
> --
> 2.31.1
>
>

Reply via email to