qemu-devel
[Top][All Lists]
Advanced

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

Re: [Qemu-devel] [PATCH v5 01/18] Add hard build dependency on glib


From: Kenneth Salerno
Subject: Re: [Qemu-devel] [PATCH v5 01/18] Add hard build dependency on glib
Date: Wed, 27 Jul 2011 05:19:58 -0700 (PDT)

--- On Tue, 7/26/11, Kenneth Salerno <address@hidden> wrote:

> From: Kenneth Salerno <address@hidden>
> Subject: Re: [Qemu-devel] [PATCH v5 01/18] Add hard build dependency on glib
> To: address@hidden
> Date: Tuesday, July 26, 2011, 10:02 AM
> From:     Michael
> Roth
> Subject:     [Qemu-devel] [PATCH v5 01/18]
> Add hard build dependency on glib
> Date:     Tue, 5 Jul 2011 08:02:28 -0500
> 
> > From: Anthony Liguori <address@hidden>
> >
> > GLib is an extremely common library that has a
> portable thread implementation
> > along with tons of other goodies.
> >
> > GLib and GObject have a fantastic amount of
> infrastructure we can leverage in
> > QEMU including an object oriented programming
> infrastructure.
> >
> > Short term, it has a very nice thread pool
> implementation that we could leverage
> > in something like virtio-9p.  It also has a test
> harness implementation that
> > this series will use.
> >
> > Signed-off-by: Anthony Liguori <address@hidden>
> > Signed-off-by: Michael Roth <address@hidden>
> > ---
> > Makefile        |    2
> ++
> > Makefile.objs   |    2 ++
> > Makefile.target |    1 +
> > configure   
>    |   13 +++++++++++++
> > 4 files changed, 18 insertions(+), 0 deletions(-)
> >
> > diff --git a/Makefile b/Makefile
> > index b3ffbe2..42ae4e5 100644
> > --- a/Makefile
> > +++ b/Makefile
> > @@ -106,6 +106,8 @@ audio/audio.o audio/fmodaudio.o:
> QEMU_CFLAGS += 
> > $(FMOD_CFLAGS)
> > 
> > QEMU_CFLAGS+=$(CURL_CFLAGS)
> > 
> > +QEMU_CFLAGS+=$(GLIB_CFLAGS)
> > +
> > ui/cocoa.o: ui/cocoa.m
> > 
> > ui/sdl.o audio/sdlaudio.o ui/sdl_zoom.o baum.o:
> QEMU_CFLAGS += $(SDL_CFLAGS)
> > diff --git a/Makefile.objs b/Makefile.objs
> > index cea15e4..493c988 100644
> > --- a/Makefile.objs
> > +++ b/Makefile.objs
> > @@ -376,3 +376,5 @@ vl.o:
> QEMU_CFLAGS+=$(GPROF_CFLAGS)
>
> >  vl.o: QEMU_CFLAGS+=$(SDL_CFLAGS)
>
> > +vl.o: QEMU_CFLAGS+=$(GLIB_CFLAGS)
> > +
> > diff --git a/Makefile.target b/Makefile.target
> > index a53a2ff..b8256ae 100644
> > --- a/Makefile.target
> > +++ b/Makefile.target
> > @@ -203,6 +203,7 @@ QEMU_CFLAGS += $(VNC_TLS_CFLAGS)
> >  QEMU_CFLAGS += $(VNC_SASL_CFLAGS)
> >  QEMU_CFLAGS += $(VNC_JPEG_CFLAGS)
> >  QEMU_CFLAGS += $(VNC_PNG_CFLAGS)
> > +QEMU_CFLAGS += $(GLIB_CFLAGS)
>
> >  # xen backend driver support
> >  obj-i386-$(CONFIG_XEN) += xen_machine_pv.o
> xen_domainbuild.o
> > diff --git a/configure b/configure
> > index 88159ac..63156a2 100755
> > --- a/configure
> > +++ b/configure
> > @@ -1803,6 +1803,18 @@ EOF
> >  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
> > +fi
> > +
> > +##########################################
> >  # pthread probe
> >  PTHREADLIBS_LIST="-lpthread -lpthreadGC2"
>
> > @@ -2849,6 +2861,7 @@ if test "$bluez" = "yes" ; then
> >    echo "CONFIG_BLUEZ=y" >>
> $config_host_mak
> >    echo "BLUEZ_CFLAGS=$bluez_cflags"
> >> $config_host_mak
> >  fi
> > +echo "GLIB_CFLAGS=$glib_cflags" >>
> $config_host_mak
> >  if test "$xen" = "yes" ; then
> >    echo "CONFIG_XEN=y" >>
> $config_host_mak
> >    echo
> "CONFIG_XEN_CTRL_INTERFACE_VERSION=$xen_ctrl_version"
> >> 
> > $config_host_mak
> > -- 
> > 1.7.0.4
> 
> 
> 
> That sounds like a good idea, especially if it will help
> resolve the multi-threading issue in Cygwin which creates
> the need to pin QEMU to one CPU core.
> 
> However, this has broken the MinGW build in Cygwin because
> there is no Glib2 (or gettext or libiconv) built and
> distributed for MinGW by the Cygwin project which means I
> now have to compile those packages myself as a prerequisite
> if I want to try to build the latest snapshot of QEMU
> development code (and future releases of QEMU stable for
> that matter)...
> 


Ignore. My apologies - I didn't have pkg-config installed.

Ken



reply via email to

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