From mboxrd@z Thu Jan 1 00:00:00 1970 Received: from eggs.gnu.org ([208.118.235.92]:33692) by lists.gnu.org with esmtp (Exim 4.71) (envelope-from ) id 1Sz925-0000i8-Kb for qemu-devel@nongnu.org; Wed, 08 Aug 2012 12:22:54 -0400 Received: from Debian-exim by eggs.gnu.org with spam-scanned (Exim 4.71) (envelope-from ) id 1Sz924-00082O-5L for qemu-devel@nongnu.org; Wed, 08 Aug 2012 12:22:53 -0400 Received: from mx1.redhat.com ([209.132.183.28]:62908) by eggs.gnu.org with esmtp (Exim 4.71) (envelope-from ) id 1Sz923-000820-SF for qemu-devel@nongnu.org; Wed, 08 Aug 2012 12:22:52 -0400 Message-ID: <50229180.8060705@redhat.com> Date: Wed, 08 Aug 2012 09:19:12 -0700 From: Anand Avati MIME-Version: 1.0 References: <20120807075928.GB7480@in.ibm.com> <20120807080026.GC7480@in.ibm.com> In-Reply-To: <20120807080026.GC7480@in.ibm.com> Content-Type: text/plain; charset=ISO-8859-1; format=flowed Content-Transfer-Encoding: 7bit Subject: Re: [Qemu-devel] [PATCH v5 1/2] qemu: Add a config option for GlusterFS as block backend List-Id: List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , To: bharata@linux.vnet.ibm.com Cc: Kevin Wolf , Anthony Liguori , Stefan Hajnoczi , Vijay Bellur , Amar Tumballi , qemu-devel@nongnu.org, Blue Swirl , Paolo Bonzini On 08/07/2012 01:00 AM, Bharata B Rao wrote: > qemu: Add a config option for GlusterFS as block backend > > From: Bharata B Rao > > GlusterFS support in QEMU depends on libgfapi, libgfrpc and > libgfxdr provided by GlusterFS. > > Signed-off-by: Bharata B Rao > --- > > configure | 34 ++++++++++++++++++++++++++++++++++ > 1 files changed, 34 insertions(+), 0 deletions(-) > > > diff --git a/configure b/configure > index 027a718..5bcf6d5 100755 > --- a/configure > +++ b/configure > @@ -824,6 +824,10 @@ for opt do > ;; > --disable-guest-agent) guest_agent="no" > ;; > + --disable-glusterfs) glusterfs="no" > + ;; > + --enable-glusterfs) glusterfs="yes" > + ;; > *) echo "ERROR: unknown option $opt"; show_help="yes" > ;; > esac > @@ -1112,6 +1116,8 @@ echo " --disable-guest-agent disable building of the QEMU Guest Agent" > echo " --enable-guest-agent enable building of the QEMU Guest Agent" > echo " --with-coroutine=BACKEND coroutine backend. Supported options:" > echo " gthread, ucontext, sigaltstack, windows" > +echo " --enable-glusterfs enable GlusterFS backend" > +echo " --disable-glusterfs disable GlusterFS backend" > echo "" > echo "NOTE: The object files are built at the place where configure is launched" > exit 1 > @@ -2279,6 +2285,29 @@ EOF > fi > fi > > +########################################## > +# glusterfs probe > +if test "$glusterfs" != "no" ; then > + cat > $TMPC < +#include > +int main(void) { > + (void) glfs_new("volume"); > + return 0; > +} > +EOF > + glusterfs_libs="-lgfapi -lgfrpc -lgfxdr" > + if compile_prog "" "$glusterfs_libs" ; then > + glusterfs=yes > + libs_tools="$glusterfs_libs $libs_tools" > + libs_softmmu="$glusterfs_libs $libs_softmmu" > + else > + if test "$glusterfs" = "yes" ; then > + feature_not_found "GlusterFS backend support" > + fi > + glusterfs=no > + fi > +fi > + It would be best if the autoconf changes is based on pkgconfig as shown in https://github.com/gluster/glusterfs/blob/master/api/examples/configure.ac. If you do not want to introduce pkgconfig dependency (if you already do not have it) then it would be good to adopt the steps mentioned in section "2." of https://github.com/gluster/glusterfs/blob/master/api/examples/README. That would basically mean including "-I/path/include/glusterfs" in CPPFLAGS and only "#include " instead of . Thanks, Avati > # > # Check for xxxat() functions when we are building linux-user > # emulator. This is done because older glibc versions don't > @@ -3104,6 +3133,7 @@ echo "OpenGL support $opengl" > echo "libiscsi support $libiscsi" > echo "build guest agent $guest_agent" > echo "coroutine backend $coroutine_backend" > +echo "GlusterFS support $glusterfs" > > if test "$sdl_too_old" = "yes"; then > echo "-> Your SDL version is too old - please upgrade to have SDL support" > @@ -3441,6 +3471,10 @@ if test "$has_environ" = "yes" ; then > echo "CONFIG_HAS_ENVIRON=y" >> $config_host_mak > fi > > +if test "$glusterfs" = "yes" ; then > + echo "CONFIG_GLUSTERFS=y" >> $config_host_mak > +fi > + > # USB host support > case "$usb" in > linux) >