qemu-devel.nongnu.org archive mirror
 help / color / mirror / Atom feed
From: Paolo Bonzini <pbonzini@redhat.com>
To: qemu-devel@nongnu.org
Subject: [PATCH 08/26] configure, meson: convert libusbredir detection to meson
Date: Tue,  8 Jun 2021 13:22:43 +0200	[thread overview]
Message-ID: <20210608112301.402434-9-pbonzini@redhat.com> (raw)
In-Reply-To: <20210608112301.402434-1-pbonzini@redhat.com>

Signed-off-by: Paolo Bonzini <pbonzini@redhat.com>
---
 configure          | 28 ++++------------------------
 hw/usb/meson.build |  2 +-
 meson.build        |  9 +++++----
 meson_options.txt  |  2 ++
 4 files changed, 12 insertions(+), 29 deletions(-)

diff --git a/configure b/configure
index 591acd0750..9a6217a3bf 100755
--- a/configure
+++ b/configure
@@ -375,7 +375,7 @@ rbd="auto"
 smartcard="auto"
 u2f="auto"
 libusb="auto"
-usb_redir="$default_feature"
+usb_redir="auto"
 opengl="$default_feature"
 cpuid_h="no"
 avx2_opt="$default_feature"
@@ -1289,9 +1289,9 @@ for opt do
   ;;
   --enable-libusb) libusb="enabled"
   ;;
-  --disable-usb-redir) usb_redir="no"
+  --disable-usb-redir) usb_redir="disabled"
   ;;
-  --enable-usb-redir) usb_redir="yes"
+  --enable-usb-redir) usb_redir="enabled"
   ;;
   --disable-zlib-test)
   ;;
@@ -3980,20 +3980,6 @@ EOF
   fi
 fi
 
-# check for usbredirparser for usb network redirection support
-if test "$usb_redir" != "no" ; then
-    if $pkg_config --atleast-version=0.6 libusbredirparser-0.5; then
-        usb_redir="yes"
-        usb_redir_cflags=$($pkg_config --cflags libusbredirparser-0.5)
-        usb_redir_libs=$($pkg_config --libs libusbredirparser-0.5)
-    else
-        if test "$usb_redir" = "yes"; then
-            feature_not_found "usb-redir" "Install usbredir devel"
-        fi
-        usb_redir="no"
-    fi
-fi
-
 ##########################################
 # check if we have VSS SDK headers for win
 
@@ -5592,12 +5578,6 @@ if test "$spice" = "yes" ; then
   echo "SPICE_LIBS=$spice_libs" >> $config_host_mak
 fi
 
-if test "$usb_redir" = "yes" ; then
-  echo "CONFIG_USB_REDIR=y" >> $config_host_mak
-  echo "USB_REDIR_CFLAGS=$usb_redir_cflags" >> $config_host_mak
-  echo "USB_REDIR_LIBS=$usb_redir_libs" >> $config_host_mak
-fi
-
 if test "$opengl" = "yes" ; then
   echo "CONFIG_OPENGL=y" >> $config_host_mak
   echo "OPENGL_CFLAGS=$opengl_cflags" >> $config_host_mak
@@ -6174,7 +6154,7 @@ if test "$skip_meson" = no; then
         -Dkvm=$kvm -Dhax=$hax -Dwhpx=$whpx -Dhvf=$hvf -Dnvmm=$nvmm \
         -Dxen=$xen -Dxen_pci_passthrough=$xen_pci_passthrough -Dtcg=$tcg \
         -Dcocoa=$cocoa -Dgtk=$gtk -Dmpath=$mpath -Dsdl=$sdl -Dsdl_image=$sdl_image \
-        -Dlibusb=$libusb -Dsmartcard=$smartcard \
+        -Dlibusb=$libusb -Dsmartcard=$smartcard -Dusb_redir=$usb_redir \
         -Dvnc=$vnc -Dvnc_sasl=$vnc_sasl -Dvnc_jpeg=$vnc_jpeg -Dvnc_png=$vnc_png \
         -Dgettext=$gettext -Dxkbcommon=$xkbcommon -Du2f=$u2f -Dvirtiofsd=$virtiofsd \
         -Dcapstone=$capstone -Dslirp=$slirp -Dfdt=$fdt -Dbrlapi=$brlapi \
diff --git a/hw/usb/meson.build b/hw/usb/meson.build
index df9effbb10..4f24b5274d 100644
--- a/hw/usb/meson.build
+++ b/hw/usb/meson.build
@@ -64,7 +64,7 @@ if u2f.found()
 endif
 
 # usb redirect
-if config_host.has_key('CONFIG_USB_REDIR')
+if usbredir.found()
   usbredir_ss = ss.source_set()
   usbredir_ss.add(when: 'CONFIG_USB',
                   if_true: [usbredir, files('redirect.c', 'quirks.c')])
diff --git a/meson.build b/meson.build
index d2efa6178a..ae40bdf7c4 100644
--- a/meson.build
+++ b/meson.build
@@ -987,9 +987,10 @@ if have_system
                    kwargs: static_kwargs)
 endif
 usbredir = not_found
-if 'CONFIG_USB_REDIR' in config_host
-  usbredir = declare_dependency(compile_args: config_host['USB_REDIR_CFLAGS'].split(),
-                                link_args: config_host['USB_REDIR_LIBS'].split())
+if not get_option('usb_redir').auto() or have_system
+  usbredir = dependency('libusbredirparser-0.5', required: get_option('usb_redir'),
+                        version: '>=0.6', method: 'pkg-config',
+                        kwargs: static_kwargs)
 endif
 libusb = not_found
 if not get_option('libusb').auto() or have_system
@@ -2798,7 +2799,7 @@ summary_info += {'xfsctl support':    config_host.has_key('CONFIG_XFS')}
 summary_info += {'smartcard support': cacard.found()}
 summary_info += {'U2F support':       u2f.found()}
 summary_info += {'libusb':            libusb.found()}
-summary_info += {'usb net redir':     config_host.has_key('CONFIG_USB_REDIR')}
+summary_info += {'usb net redir':     usbredir.found()}
 summary_info += {'OpenGL support':    config_host.has_key('CONFIG_OPENGL')}
 summary_info += {'GBM':               config_host.has_key('CONFIG_GBM')}
 summary_info += {'libiscsi support':  libiscsi.found()}
diff --git a/meson_options.txt b/meson_options.txt
index cd9374384e..f7ec9bee27 100644
--- a/meson_options.txt
+++ b/meson_options.txt
@@ -108,6 +108,8 @@ option('snappy', type : 'feature', value : 'auto',
        description: 'snappy compression support')
 option('u2f', type : 'feature', value : 'auto',
        description: 'U2F emulation support')
+option('usb_redir', type : 'feature', value : 'auto',
+       description: 'libusbredir support')
 option('vnc', type : 'feature', value : 'enabled',
        description: 'VNC server')
 option('vnc_jpeg', type : 'feature', value : 'auto',
-- 
2.31.1




  parent reply	other threads:[~2021-06-08 11:29 UTC|newest]

Thread overview: 71+ messages / expand[flat|nested]  mbox.gz  Atom feed  top
2021-06-08 11:22 [PATCH 00/22] Convert more checks to Meson Paolo Bonzini
2021-06-08 11:22 ` [PATCH 01/26] meson: drop unused CONFIG_GCRYPT_HMAC Paolo Bonzini
2021-06-08 17:37   ` Richard Henderson
2021-06-15 13:53   ` Daniel P. Berrangé
2021-06-08 11:22 ` [PATCH 02/26] configure: drop unused variables for xts Paolo Bonzini
2021-06-08 12:15   ` Philippe Mathieu-Daudé
2021-06-08 17:38   ` Richard Henderson
2021-06-15 13:55   ` Daniel P. Berrangé
2021-06-08 11:22 ` [PATCH 03/26] configure, meson: convert crypto detection to meson Paolo Bonzini
2021-06-08 19:16   ` Richard Henderson
2021-06-15 14:01   ` Daniel P. Berrangé
2021-06-08 11:22 ` [PATCH 04/26] configure, meson: convert libtasn1 " Paolo Bonzini
2021-06-08 19:32   ` Richard Henderson
2021-06-15 14:04   ` Daniel P. Berrangé
2021-06-08 11:22 ` [PATCH 05/26] configure, meson: convert pam " Paolo Bonzini
2021-06-08 19:45   ` Richard Henderson
2021-06-08 19:47     ` Richard Henderson
2021-06-08 20:20     ` Daniel P. Berrangé
2021-06-09 15:46       ` Richard Henderson
2021-06-09 15:57         ` Daniel P. Berrangé
2021-06-09 16:47           ` Richard Henderson
2021-06-15 13:58             ` Paolo Bonzini
2021-06-15 14:05   ` Daniel P. Berrangé
2021-06-08 11:22 ` [PATCH 06/26] configure, meson: convert libusb " Paolo Bonzini
2021-06-15 14:06   ` Daniel P. Berrangé
2021-06-08 11:22 ` [PATCH 07/26] configure, meson: convert libcacard " Paolo Bonzini
2021-06-15 14:08   ` Daniel P. Berrangé
2021-06-08 11:22 ` Paolo Bonzini [this message]
2021-06-15 14:09   ` [PATCH 08/26] configure, meson: convert libusbredir " Daniel P. Berrangé
2021-06-08 11:22 ` [PATCH 09/26] configure, meson: convert vte " Paolo Bonzini
2021-06-15 14:24   ` Daniel P. Berrangé
2021-06-15 15:12     ` Paolo Bonzini
2021-06-08 11:22 ` [PATCH 10/26] configure, meson: convert virgl " Paolo Bonzini
2021-06-15 14:25   ` Daniel P. Berrangé
2021-06-08 11:22 ` [PATCH 11/26] configure, meson: convert libdaxctl " Paolo Bonzini
2021-06-15 14:37   ` Daniel P. Berrangé
2021-06-08 11:22 ` [PATCH 12/26] configure, meson: convert libpmem " Paolo Bonzini
2021-06-15 14:37   ` Daniel P. Berrangé
2021-06-08 11:22 ` [PATCH 13/26] configure, meson: convert liburing " Paolo Bonzini
2021-06-15 14:38   ` Daniel P. Berrangé
2021-06-08 11:22 ` [PATCH 14/26] configure, meson: convert libxml2 " Paolo Bonzini
2021-06-15 14:44   ` Daniel P. Berrangé
2021-06-08 11:22 ` [PATCH 15/26] meson: sort header tests Paolo Bonzini
2021-06-08 12:15   ` Philippe Mathieu-Daudé
2021-06-15 14:47   ` Daniel P. Berrangé
2021-06-15 15:16     ` Paolo Bonzini
2021-06-15 15:50       ` Daniel P. Berrangé
2021-06-08 11:22 ` [PATCH 16/26] meson: remove preadv from summary Paolo Bonzini
2021-06-15 14:48   ` Daniel P. Berrangé
2021-06-08 11:22 ` [PATCH 17/26] configure, meson: move CONFIG_IVSHMEM to meson Paolo Bonzini
2021-06-15 14:50   ` Daniel P. Berrangé
2021-06-08 11:22 ` [PATCH 18/26] configure: convert HAVE_BROKEN_SIZE_MAX " Paolo Bonzini
2021-06-15 14:51   ` Daniel P. Berrangé
2021-06-08 11:22 ` [PATCH 19/26] configure: convert compiler tests to meson, part 1 Paolo Bonzini
2021-06-15 14:59   ` Daniel P. Berrangé
2021-06-15 15:15     ` Paolo Bonzini
2021-06-08 11:22 ` [PATCH 20/26] meson: store dependency('threads') in a variable Paolo Bonzini
2021-06-15 15:02   ` Daniel P. Berrangé
2021-06-08 11:22 ` [PATCH 21/26] configure: convert compiler tests to meson, part 2 Paolo Bonzini
2021-06-15 15:03   ` Daniel P. Berrangé
2021-06-08 11:22 ` [PATCH 22/26] configure: convert compiler tests to meson, part 3 Paolo Bonzini
2021-06-15 15:08   ` Daniel P. Berrangé
2021-06-08 11:22 ` [PATCH 23/26] configure: convert CONFIG_STATIC_ASSERT tests to meson Paolo Bonzini
2021-06-08 12:17   ` Philippe Mathieu-Daudé
2021-06-15 15:08   ` Daniel P. Berrangé
2021-06-08 11:22 ` [PATCH 24/26] configure: convert compiler tests to meson, part 4 Paolo Bonzini
2021-06-15 15:13   ` Daniel P. Berrangé
2021-06-08 11:23 ` [PATCH 25/26] configure: convert compiler tests to meson, part 5 Paolo Bonzini
2021-06-15 15:15   ` Daniel P. Berrangé
2021-06-08 11:23 ` [PATCH 26/26] configure: convert compiler tests to meson, part 6 Paolo Bonzini
2021-06-15 15:17   ` Daniel P. Berrangé

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=20210608112301.402434-9-pbonzini@redhat.com \
    --to=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 a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox;
as well as URLs for NNTP newsgroup(s).