Patchwork guest agent: add --enable-guest-agent config option

login
register
mail settings
Submitter Michael Roth
Date July 23, 2011, 11:35 p.m.
Message ID <1311464131-14163-1-git-send-email-mdroth@linux.vnet.ibm.com>
Download mbox | patch
Permalink /patch/106502/
State New
Headers show

Comments

Michael Roth - July 23, 2011, 11:35 p.m.
QAPI will require glib/python, but for now the guest agent is the only
user. For now, make these dependencies an explicit guest agent one, and
gives users the option to disable it if need be.

Once QAPI is adopted in core QEMU code, we would basically revert this
patch.

Signed-off-by: Michael Roth <mdroth@linux.vnet.ibm.com>
---
 configure |   36 +++++++++++++++++++++++++-----------
 1 files changed, 25 insertions(+), 11 deletions(-)

Patch

diff --git a/configure b/configure
index c0cb979..fa32274 100755
--- a/configure
+++ b/configure
@@ -179,6 +179,7 @@  smartcard=""
 smartcard_nss=""
 usb_redir=""
 opengl=""
+guest_agent="yes"
 
 # parse CC options first
 for opt do
@@ -749,6 +750,10 @@  for opt do
   ;;
   --enable-usb-redir) usb_redir="yes"
   ;;
+  --enable-guest-agent) guest_agent="yes"
+  ;;
+  --disable-guest-agent) guest_agent="no"
+  ;;
   --python-path=*) python_path="$optarg"
   ;;
   *) echo "ERROR: unknown option $opt"; show_help="yes"
@@ -1028,6 +1033,8 @@  echo "  --disable-smartcard-nss  disable smartcard nss support"
 echo "  --enable-smartcard-nss   enable smartcard nss support"
 echo "  --disable-usb-redir      disable usb network redirection support"
 echo "  --enable-usb-redir       enable usb network redirection support"
+echo "  --disable-guest-agent    disable building of the QEMU Guest Agent"
+echo "  --enable-guest-agent     enable building of the QEMU Guest Agent"
 echo "  --python-path=PATH       path to python executable"
 echo ""
 echo "NOTE: The object files are built at the place where configure is launched"
@@ -1815,21 +1822,25 @@  fi
 
 ##########################################
 # python probe
-if ! $python_path -V >/dev/null 2>&1; then
-    echo "python executable not found: $python_path. You can specify with --python-path"
-    exit 1
+if test "$guest_agent" != "no" ; then
+    if ! $python_path -V >/dev/null 2>&1; then
+        echo "python executable not found: $python_path. You can specify with --python-path"
+        exit 1
+    fi
 fi
 
 ##########################################
 # glib support probe
-if $pkg_config --modversion gthread-2.0 gio-2.0 > /dev/null 2>&1 ; then
-    glib_cflags=`$pkg_config --cflags gthread-2.0 gio-2.0 2>/dev/null`
-    glib_libs=`$pkg_config --libs gthread-2.0 gio-2.0 2>/dev/null`
-    libs_softmmu="$glib_libs $libs_softmmu"
-    libs_tools="$glib_libs $libs_tools"
-else
-    echo "glib-2.0 required to compile QEMU"
-    exit 1
+if test "$guest_agent" != "no" ; then
+    if $pkg_config --modversion gthread-2.0 gio-2.0 > /dev/null 2>&1 ; then
+        glib_cflags=`$pkg_config --cflags gthread-2.0 gio-2.0 2>/dev/null`
+        glib_libs=`$pkg_config --libs gthread-2.0 gio-2.0 2>/dev/null`
+        libs_softmmu="$glib_libs $libs_softmmu"
+        libs_tools="$glib_libs $libs_tools"
+    else
+        echo "glib-2.0 required to compile QEMU"
+        exit 1
+    fi
 fi
 
 ##########################################
@@ -2566,7 +2577,9 @@  if test "$softmmu" = yes ; then
   tools="qemu-img\$(EXESUF) qemu-io\$(EXESUF) $tools"
   if [ "$linux" = "yes" -o "$bsd" = "yes" -o "$solaris" = "yes" ] ; then
       tools="qemu-nbd\$(EXESUF) $tools"
+    if [ "$guest_agent" = "yes" ]; then
       tools="qemu-ga\$(EXESUF) $tools"
+    fi
     if [ "$check_utests" = "yes" ]; then
       tools="check-qint check-qstring check-qdict check-qlist $tools"
       tools="check-qfloat check-qjson $tools"
@@ -2666,6 +2679,7 @@  echo "xfsctl support    $xfs"
 echo "nss used          $smartcard_nss"
 echo "usb net redir     $usb_redir"
 echo "OpenGL support    $opengl"
+echo "build guest agent $guest_agent"
 echo "python path       $python_path"
 
 if test $sdl_too_old = "yes"; then