qemu-devel.nongnu.org archive mirror
 help / color / mirror / Atom feed
* [Qemu-devel] [PATCH v2 0/1] Allow the building of VirtFS to be disabled
@ 2012-02-10  2:06 Meador Inge
  2012-02-10  2:06 ` [Qemu-devel] [PATCH v2 1/1] ./configure: add option for disabling VirtFS Meador Inge
  0 siblings, 1 reply; 3+ messages in thread
From: Meador Inge @ 2012-02-10  2:06 UTC (permalink / raw)
  To: qemu-devel; +Cc: aliguori, aneesh.kumar

There have been reports [1, 2] where folks have had issues building
VirtFS and the virtio backend on older systems.  I personally saw
problems due to the use of features (struct statfs f_frsize field,
fdopendir, O_NOATIME) in this code that are not available on much older
Linux systems.  Given, the system I ran into this on is ancient (RH8 sysroot),
but I still need to build QEMU on it nonetheless.

This patch adds a new configure option for disabling the building of
VirtFS all together.  Tested by building with and without --disable-virtfs
on older (RH8 sysroot) and newer systems (x64 Fedora 16).

[1] http://lists.nongnu.org/archive/html/qemu-devel/2011-12/msg00171.html
[2] http://lists.nongnu.org/archive/html/qemu-devel/2012-02/msg00404.html

* Changes from v1
  - Simplify the configure logic and support the standard behavior
    of defaulting virtfs="".  Changes suggested by Peter Maydell.

Meador Inge (1):
  ./configure: add option for disabling VirtFS

 Makefile  |    2 ++
 configure |   25 +++++++++++++++++++------
 2 files changed, 21 insertions(+), 6 deletions(-)

-- 
1.7.7.6

^ permalink raw reply	[flat|nested] 3+ messages in thread

* [Qemu-devel] [PATCH v2 1/1] ./configure: add option for disabling VirtFS
  2012-02-10  2:06 [Qemu-devel] [PATCH v2 0/1] Allow the building of VirtFS to be disabled Meador Inge
@ 2012-02-10  2:06 ` Meador Inge
  2012-02-10  2:13   ` Peter Maydell
  0 siblings, 1 reply; 3+ messages in thread
From: Meador Inge @ 2012-02-10  2:06 UTC (permalink / raw)
  To: qemu-devel; +Cc: aliguori, aneesh.kumar

Signed-off-by: Meador Inge <meadori@codesourcery.com>
---
 Makefile  |    2 ++
 configure |   25 +++++++++++++++++++------
 2 files changed, 21 insertions(+), 6 deletions(-)

diff --git a/Makefile b/Makefile
index e66e885..3dd67e2 100644
--- a/Makefile
+++ b/Makefile
@@ -40,7 +40,9 @@ HELPERS-$(CONFIG_LINUX) = qemu-bridge-helper$(EXESUF)
 
 ifdef BUILD_DOCS
 DOCS=qemu-doc.html qemu-tech.html qemu.1 qemu-img.1 qemu-nbd.8 QMP/qmp-commands.txt
+ifdef CONFIG_VIRTFS
 DOCS+=fsdev/virtfs-proxy-helper.1
+endif
 else
 DOCS=
 endif
diff --git a/configure b/configure
index 763db24..f0892e7 100755
--- a/configure
+++ b/configure
@@ -121,6 +121,7 @@ docs=""
 fdt=""
 nptl=""
 sdl=""
+virtfs=""
 vnc="yes"
 sparse="no"
 uuid=""
@@ -586,6 +587,10 @@ for opt do
   ;;
   --enable-sdl) sdl="yes"
   ;;
+  --disable-virtfs) virtfs="no"
+  ;;
+  --enable-virtfs) virtfs="yes"
+  ;;
   --disable-vnc) vnc="no"
   ;;
   --enable-vnc) vnc="yes"
@@ -993,6 +998,8 @@ echo "  --disable-strip          disable stripping binaries"
 echo "  --disable-werror         disable compilation abort on warning"
 echo "  --disable-sdl            disable SDL"
 echo "  --enable-sdl             enable SDL"
+echo "  --disable-virtfs         disable VirtFS"
+echo "  --enable-virtfs          enable VirtFS"
 echo "  --disable-vnc            disable VNC"
 echo "  --enable-vnc             enable VNC"
 echo "  --enable-cocoa           enable COCOA (Mac OS X only)"
@@ -2808,8 +2815,15 @@ confdir=$sysconfdir$confsuffix
 tools=
 if test "$softmmu" = yes ; then
   tools="qemu-img\$(EXESUF) qemu-io\$(EXESUF) $tools"
-  if [ "$cap" = "yes" -a "$linux" = "yes" ] ; then
-      tools="$tools fsdev/virtfs-proxy-helper\$(EXESUF)"
+  if test "$virtfs" != no ; then
+      if [ "$cap" = "yes" -a "$linux" = "yes" -a "$attr" = "yes" ] ; then
+	  virtfs=yes
+	  tools="$tools fsdev/virtfs-proxy-helper\$(EXESUF)"
+      else
+	  if test "$virtfs" = yes; then
+	      feature_not_found "virtfs"
+	  fi
+      fi
   fi
   if [ "$linux" = "yes" -o "$bsd" = "yes" -o "$solaris" = "yes" ] ; then
       tools="qemu-nbd\$(EXESUF) $tools"
@@ -2874,6 +2888,7 @@ echo "Audio drivers     $audio_drv_list"
 echo "Extra audio cards $audio_card_list"
 echo "Block whitelist   $block_drv_whitelist"
 echo "Mixer emulation   $mixemu"
+echo "VirtFS support    $virtfs"
 echo "VNC support       $vnc"
 if test "$vnc" = "yes" ; then
     echo "VNC TLS support   $vnc_tls"
@@ -3163,10 +3178,8 @@ fi
 if test "$libattr" = "yes" ; then
   echo "CONFIG_LIBATTR=y" >> $config_host_mak
 fi
-if test "$linux" = "yes" ; then
-  if test "$attr" = "yes" ; then
-    echo "CONFIG_VIRTFS=y" >> $config_host_mak
-  fi
+if test "$virtfs" = "yes" ; then
+  echo "CONFIG_VIRTFS=y" >> $config_host_mak
 fi
 if test "$blobs" = "yes" ; then
   echo "INSTALL_BLOBS=yes" >> $config_host_mak
-- 
1.7.7.6

^ permalink raw reply related	[flat|nested] 3+ messages in thread

* Re: [Qemu-devel] [PATCH v2 1/1] ./configure: add option for disabling VirtFS
  2012-02-10  2:06 ` [Qemu-devel] [PATCH v2 1/1] ./configure: add option for disabling VirtFS Meador Inge
@ 2012-02-10  2:13   ` Peter Maydell
  0 siblings, 0 replies; 3+ messages in thread
From: Peter Maydell @ 2012-02-10  2:13 UTC (permalink / raw)
  To: Meador Inge; +Cc: aliguori, qemu-devel, aneesh.kumar

On 10 February 2012 02:06, Meador Inge <meadori@codesourcery.com> wrote:
> +  if test "$virtfs" != no ; then
> +      if [ "$cap" = "yes" -a "$linux" = "yes" -a "$attr" = "yes" ] ; then

The test -a operator is deprecated by POSIX; use
  test "$cap" = yes && test "$linux" = yes && test "$attr" = yes
instead.

-- PMM

^ permalink raw reply	[flat|nested] 3+ messages in thread

end of thread, other threads:[~2012-02-10  2:13 UTC | newest]

Thread overview: 3+ messages (download: mbox.gz follow: Atom feed
-- links below jump to the message on this page --
2012-02-10  2:06 [Qemu-devel] [PATCH v2 0/1] Allow the building of VirtFS to be disabled Meador Inge
2012-02-10  2:06 ` [Qemu-devel] [PATCH v2 1/1] ./configure: add option for disabling VirtFS Meador Inge
2012-02-10  2:13   ` Peter Maydell

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).