From: "Alex Bennée" <alex.bennee@linaro.org>
To: Helge Deller <deller@gmx.de>
Cc: Paolo Bonzini <pbonzini@redhat.com>,
Markus Armbruster <armbru@redhat.com>,
Michael Roth <michael.roth@amd.com>,
Michael Tokarev <mjt@tls.msk.ru>,
qemu-devel@nongnu.org
Subject: Re: [PATCH] meson: Clean up some dependencies regarding qemu-system
Date: Mon, 19 Dec 2022 13:22:21 +0000 [thread overview]
Message-ID: <87fsdble4v.fsf@linaro.org> (raw)
In-Reply-To: <75b841f6-1eab-9d5f-2ad7-89440931ac18@gmx.de>
Helge Deller <deller@gmx.de> writes:
> Hi Paolo,
>
> On 12/17/22 14:28, Paolo Bonzini wrote:
>> On 12/16/22 20:07, Helge Deller wrote:
>>> @@ -3581,7 +3581,7 @@ subdir('qga')
>>>
>>> # Don't build qemu-keymap if xkbcommon is not explicitly enabled
>>> # when we don't build tools or system
>>> -if xkbcommon.found()
>>> +if xkbcommon.found() and have_system
>>> # used for the update-keymaps target, so include rules even if !have_tools
>>> qemu_keymap = executable('qemu-keymap', files('qemu-keymap.c', 'ui/input-keymap.c') + genh,
>>> dependencies: [qemuutil, xkbcommon], install: have_tools)
>>> @@ -3596,7 +3596,9 @@ if have_tools
>>> dependencies: [blockdev, qemuutil, gnutls, selinux],
>>> install: true)
>>>
>>> - subdir('storage-daemon')
>>> + if have_system
>>> + subdir('storage-daemon')
>>> + endif
>>> subdir('contrib/rdmacm-mux')
>>> subdir('contrib/elf2dmp')
>>>
>>> @@ -3611,7 +3613,7 @@ if have_tools
>>> subdir('contrib/vhost-user-scsi')
>>> endif
>>>
>>> - if targetos == 'linux'
>>> + if targetos == 'linux' and have_system
>>> executable('qemu-bridge-helper', files('qemu-bridge-helper.c'),
>>> dependencies: [qemuutil, libcap_ng],
>>> install: true,
>>> diff --git a/tools/meson.build b/tools/meson.build
>>> index 10eb3a043f..740d572a94 100644
>>> --- a/tools/meson.build
>>> +++ b/tools/meson.build
>>> @@ -5,7 +5,7 @@ have_virtiofsd = get_option('virtiofsd') \
>>> error_message: 'virtiofsd requires libcap-ng-devel and seccomp-devel') \
>>> .require(have_vhost_user,
>>> error_message: 'virtiofsd needs vhost-user-support') \
>>> - .disable_auto_if(not have_tools and not have_system) \
>>> + .disable_auto_if(not have_system) \
>>> .allowed()
>>>
>>> if have_virtiofsd
>>>
>>
>> These are wrong. qemu-bridge-helper, virtiofsd, qemu-storage-daemon
>> and qemu-keymap *are* tools; if they fail to build due to any
>> dependencies, or due to other compilation issues, you need to add
>> tests to meson.build and check for the cause of the issues.
>
> No doubt, those are *tools*.
> But aren't those only required when you run system- and/or user-emulation?
>
> Looking at the packaging of qemu in debian:
>
> qemu-system-common debian package consists of thse *tools*:
> qemu-bridge-helper, vhost-user-gpu, virtfs-proxy-helper, virtiofsd
Well technically vhost-user-gpu and virtiofsd are usable (or should be)
without QEMU as they are vhost-user backends and could be used with
other VMMs that support vhost-user (kvm-tool, crosvm,
xen-vhost-frontend).
Not withstanding that virtiofsd is now a legacy binary as the production
backend for vhost-user virtio-fs is the rust rewrite:
https://gitlab.com/virtio-fs/virtiofsd
>
> qemu-utils debian package consists of the *utilities*:
> qemu-img, qemu-io, qemu-nbd
>
> IMHO this categorization makes sense.
> My patch was targetting at making "qemu-utils" possible to build
> and that's why I think the tools you mention should depend on "have_system".
>
>> The rest is okay.
>
> Ok, thanks!
>
> Helge
--
Alex Bennée
Virtualisation Tech Lead @ Linaro
next prev parent reply other threads:[~2022-12-19 13:25 UTC|newest]
Thread overview: 12+ messages / expand[flat|nested] mbox.gz Atom feed top
2022-12-16 19:07 [PATCH] meson: Clean up some dependencies regarding qemu-system Helge Deller
2022-12-17 13:28 ` Paolo Bonzini
2022-12-19 11:21 ` Helge Deller
2022-12-19 11:31 ` Peter Maydell
2022-12-19 11:40 ` Philippe Mathieu-Daudé
2022-12-19 11:52 ` Peter Maydell
2022-12-20 20:56 ` Helge Deller
2022-12-21 7:49 ` Michael Tokarev
2022-12-22 5:27 ` Helge Deller
2022-12-19 13:22 ` Alex Bennée [this message]
2022-12-19 11:35 ` Philippe Mathieu-Daudé
2022-12-19 12:13 ` Helge Deller
Reply instructions:
You may reply publicly to this message via plain-text email
using any one of the following methods:
* Save the following mbox file, import it into your mail client,
and reply-to-all from there: mbox
Avoid top-posting and favor interleaved quoting:
https://en.wikipedia.org/wiki/Posting_style#Interleaved_style
* Reply using the --to, --cc, and --in-reply-to
switches of git-send-email(1):
git send-email \
--in-reply-to=87fsdble4v.fsf@linaro.org \
--to=alex.bennee@linaro.org \
--cc=armbru@redhat.com \
--cc=deller@gmx.de \
--cc=michael.roth@amd.com \
--cc=mjt@tls.msk.ru \
--cc=pbonzini@redhat.com \
--cc=qemu-devel@nongnu.org \
/path/to/YOUR_REPLY
https://kernel.org/pub/software/scm/git/docs/git-send-email.html
* If your mail client supports setting the In-Reply-To header
via mailto: links, try the mailto: link
Be sure your reply has a Subject: header at the top and a blank line
before the message body.
This is an external index of several public inboxes,
see mirroring instructions on how to clone and mirror
all data and code used by this external index.