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

Re: [Xen-devel] [PATCH 09/21] configure: use pkg-config for obtaining xen version



On Tue, 11 Dec 2018, Daniel wrote:
> On Tue, Dec 11, 2018 at 10:34:52AM +0000, Peter Maydell wrote:
> > On Tue, 25 Apr 2017 at 19:35, Stefano Stabellini <sstabellini@xxxxxxxxxx> 
> > wrote:
> > >
> > > From: Juergen Gross <jgross@xxxxxxxx>
> > >
> > > Instead of trying to guess the Xen version to use by compiling various
> > > test programs first just ask the system via pkg-config. Only if it
> > > can't return the version fall back to the test program scheme.
> > >
> > > If configure is being called with dedicated flags for the Xen libraries
> > > use those instead of the pkg-config output. This will avoid breaking
> > > an in-tree Xen build of an old Xen version while a new Xen version is
> > > installed on the build machine: pkg-config would pick up the installed
> > > Xen config files as the Xen tree wouldn't contain any of them.
> > >
> > > Signed-off-by: Juergen Gross <jgross@xxxxxxxx>
> > > Signed-off-by: Stefano Stabellini <sstabellini@xxxxxxxxxx>
> > > Tested-by: Paul Durrant <paul.durrant@xxxxxxxxxx>
> > > Reviewed-by: Stefano Stabellini <sstabellini@xxxxxxxxxx>
> > > ---
> > >  configure | 159 
> > > ++++++++++++++++++++++++++++++++++----------------------------
> > >  1 file changed, 88 insertions(+), 71 deletions(-)
> > >
> > > diff --git a/configure b/configure
> > > index 271bea8..3133ef8 100755
> > > --- a/configure
> > > +++ b/configure
> > > @@ -1975,30 +1975,46 @@ fi
> > >  # xen probe
> > >
> > >  if test "$xen" != "no" ; then
> > > -  xen_libs="-lxenstore -lxenctrl -lxenguest"
> > > -  xen_stable_libs="-lxencall -lxenforeignmemory -lxengnttab -lxenevtchn"
> > > +  # Check whether Xen library path is specified via --extra-ldflags to 
> > > avoid
> > > +  # overriding this setting with pkg-config output. If not, try 
> > > pkg-config
> > > +  # to obtain all needed flags.
> > > +
> > > +  if ! echo $EXTRA_LDFLAGS | grep tools/libxc > /dev/null && \
> > > +     $pkg_config --exists xencontrol ; then
> > > +    xen_ctrl_version="$(printf '%d%02d%02d' \
> > > +      $($pkg_config --modversion xencontrol | sed 's/\./ /g') )"
> > > +    xen=yes
> > > +    xen_pc="xencontrol xenstore xenguest xenforeignmemory xengnttab"
> > > +    xen_pc="$xen_pc xenevtchn xendevicemodel"
> > > +    QEMU_CFLAGS="$QEMU_CFLAGS $($pkg_config --cflags $xen_pc)"
> > > +    libs_softmmu="$($pkg_config --libs $xen_pc) $libs_softmmu"
> > > +    LDFLAGS="$($pkg_config --libs $xen_pc) $LDFLAGS"
> > > +  else
> > 
> > Hi -- this is an old patch, but MJT has just noticed that
> > it means that (assuming configure takes the "we have a pkg-config
> > for Xen" path) the Xen libraries get added to both libs_softmmu
> > and LDFLAGS, which means that everything, including the linux-user
> > binaries, gets linked against them. The old fallback path
> > only adds them to libs_softmmu.
> > 
> > Juergen: is there a reason why you added the libs to both
> > libs_softmmu and LDFLAGS here? Can we just delete the line
> > that alters LDFLAGS?
> 
> In the 'else' block that takes the non-pkg-config path, the libs are
> only added to "libs_softmmu". So I think removing LDFLAGS is right.

Yes, I think you are correct.

_______________________________________________
Xen-devel mailing list
Xen-devel@xxxxxxxxxxxxxxxxxxxx
https://lists.xenproject.org/mailman/listinfo/xen-devel

 


Rackspace

Lists.xenproject.org is hosted with RackSpace, monitoring our
servers 24x7x365 and backed by RackSpace's Fanatical Support®.