qemu-devel
[Top][All Lists]
Advanced

[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

Re: [PATCH] meson: Clean up some dependencies regarding qemu-system


From: Helge Deller
Subject: Re: [PATCH] meson: Clean up some dependencies regarding qemu-system
Date: Mon, 19 Dec 2022 12:21:51 +0100
User-agent: Mozilla/5.0 (X11; Linux x86_64; rv:102.0) Gecko/20100101 Thunderbird/102.5.1

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

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



reply via email to

[Prev in Thread] Current Thread [Next in Thread]