qemu-devel
[Top][All Lists]
Advanced

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

Re: [Qemu-devel] [PATCH] configure: use glib in glib pkg-config check.


From: Daniel P. Berrange
Subject: Re: [Qemu-devel] [PATCH] configure: use glib in glib pkg-config check.
Date: Tue, 4 Feb 2014 09:59:18 +0000
User-agent: Mutt/1.5.21 (2010-09-15)

On Tue, Feb 04, 2014 at 09:56:38AM +1100, Chris Johns wrote:
> On 3/02/2014 9:29 pm, Daniel P. Berrange wrote:
> >On Mon, Feb 03, 2014 at 03:26:15PM +1100, Chris Johns wrote:
> >>Building against with a recent glib in a custom prefix fails because
> >>the gthread cflags in the pkg-config file do not have the correct path
> >>while the glib pc file does.
> >>
> >>Signed-off-by: Chris Johns <address@hidden>
> >>---
> >>  configure | 6 +++---
> >>  1 file changed, 3 insertions(+), 3 deletions(-)
> >>
> >>diff --git a/configure b/configure
> >>index b472694..12f730f 100755
> >>--- a/configure
> >>+++ b/configure
> >>@@ -2343,9 +2343,9 @@ if test "$mingw32" = yes; then
> >>  else
> >>      glib_req_ver=2.12
> >>  fi
> >>-if $pkg_config --atleast-version=$glib_req_ver gthread-2.0; then
> >>-    glib_cflags=`$pkg_config --cflags gthread-2.0`
> >>-    glib_libs=`$pkg_config --libs gthread-2.0`
> >>+if $pkg_config --atleast-version=$glib_req_ver glib-2.0; then
> >>+    glib_cflags=`$pkg_config --cflags glib-2.0`
> >>+    glib_libs=`$pkg_config --libs glib-2.0`
> >>      LIBS="$glib_libs $LIBS"
> >>      libs_qga="$glib_libs $libs_qga"
> >>  else
> >
> >This change will cause  -pthread linker + compiler flag to be lost.
> >
> 
> I see in gthread-2.0.pc ..
> 
>  Libs: -L${libdir} -lgthread-2.0
>  Cflags: -D_REENTRANT
> 
> and qemu includes 'glib.h'. Without the glib pc flags being used the
> build fails not being able to find 'glib.h'.
> 
> I have no idea about the relationship this has with -pthread. Are
> both needed ? It is not a problem on darwin. Qemu is building and
> running the RTEMS testsuite nicely on the arm architecture (with the
> posted zync reset patch).

On Linux there are more flags present in gthread-2.0.pc that are not
present in glib-2.0.pc:

  Name: GThread
  Description: Thread support for GLib
  Requires: glib-2.0
  Version: 2.38.2
  Libs: -L${libdir} -lgthread-2.0 -pthread
  Cflags: -pthread


The 'Requires: glib-2.0' line there means that when QEMU asking for
flags for 'gthread-2.0', it will *also* get any flags listed in the
'glib-2.0.pc' file.

> >
> >What glib version are you seeing a problem with ?
> 
> glib-2.39.3 on darwin 13.0.2 (Mavrick).
> 
> >It seems we should
> >really fix glib, since this will affect countless 1000's of apps using
> >it, not try to workaround in all downstream apps.
> 
> This is outside of my field of view; to me it still looks qemu specific.

I don't believe so. What QEMU is currently doing is correct so I
believe this is either a darwin specific glib bug or a flawed
build of glib on darwin.

Daniel
-- 
|: http://berrange.com      -o-    http://www.flickr.com/photos/dberrange/ :|
|: http://libvirt.org              -o-             http://virt-manager.org :|
|: http://autobuild.org       -o-         http://search.cpan.org/~danberr/ :|
|: http://entangle-photo.org       -o-       http://live.gnome.org/gtk-vnc :|



reply via email to

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