[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, 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?

thanks
-- PMM

_______________________________________________
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®.