[libvirt] [PATCH] allow to set path to xen userspace tools
Daniel P. Berrange
berrange at redhat.com
Tue Jul 7 17:02:20 UTC 2009
On Tue, Jul 07, 2009 at 01:16:02PM +0200, Guido G?nther wrote:
> Hi,
> attached patch makes the path to the xen userspace tools configurable.
> Debian keeps this under /usr/lib/xen-default/ instead of /usr/lib/xen/.
> We don't have the amd64 libs in /usr/lib64/xen either so we can use:
> ./configure --with-xen-tools=/usr/lib/xen-defaults --with-xen-tools64=/usr/lib/xen-defaults
> instead of patching src/xen_internals.c directly.
> Skipping above options gives the current behaviour. I checked that "make
> check" still passes. O.k. to apply?
The code changes look ok, but I'm not much of a fan of the way the
test cases are handled here, with all these data files listed in
configure.in
I think i'd be more inclined to let virtTestLoadFile() do the subsitution
at time its loading the files. Perhaps
if (virtTestLoadFile(xml, &expectxml, MAX_FILE, {
"@XEN_TOOLS@", XEN_TOOLS,
}) < 0)
goto fail;
Regards,
Daniel
> >From 494e65d99e5e533c3e1ca23d80af0536fa0a64d2 Mon Sep 17 00:00:00 2001
> From: =?utf-8?q?Guido=20G=C3=BCnther?= <agx at sigxcpu.org>
> Date: Mon, 6 Jul 2009 21:22:18 +0200
> Subject: [PATCH] introduce XEN_TOOLS dir
>
> ---
> configure.in | 33 ++++++++++++++++++++
> src/xen_internal.c | 6 ++--
> tests/xencapsdata/Makefile.am | 2 +-
> ...en-i686-pae-hvm.xml => xen-i686-pae-hvm.xml.in} | 6 ++--
> .../{xen-i686-pae.xml => xen-i686-pae.xml.in} | 2 +-
> .../xencapsdata/{xen-i686.xml => xen-i686.xml.in} | 2 +-
> ...{xen-ia64-be-hvm.xml => xen-ia64-be-hvm.xml.in} | 6 ++--
> .../{xen-ia64-be.xml => xen-ia64-be.xml.in} | 2 +-
> .../{xen-ia64-hvm.xml => xen-ia64-hvm.xml.in} | 6 ++--
> .../xencapsdata/{xen-ia64.xml => xen-ia64.xml.in} | 2 +-
> .../{xen-ppc64.xml => xen-ppc64.xml.in} | 2 +-
> .../{xen-x86_64-hvm.xml => xen-x86_64-hvm.xml.in} | 10 +++---
> .../{xen-x86_64.xml => xen-x86_64.xml.in} | 2 +-
> 13 files changed, 57 insertions(+), 24 deletions(-)
> rename tests/xencapsdata/{xen-i686-pae-hvm.xml => xen-i686-pae-hvm.xml.in} (84%)
> rename tests/xencapsdata/{xen-i686-pae.xml => xen-i686-pae.xml.in} (91%)
> rename tests/xencapsdata/{xen-i686.xml => xen-i686.xml.in} (90%)
> rename tests/xencapsdata/{xen-ia64-be-hvm.xml => xen-ia64-be-hvm.xml.in} (83%)
> rename tests/xencapsdata/{xen-ia64-be.xml => xen-ia64-be.xml.in} (90%)
> rename tests/xencapsdata/{xen-ia64-hvm.xml => xen-ia64-hvm.xml.in} (82%)
> rename tests/xencapsdata/{xen-ia64.xml => xen-ia64.xml.in} (89%)
> rename tests/xencapsdata/{xen-ppc64.xml => xen-ppc64.xml.in} (89%)
> rename tests/xencapsdata/{xen-x86_64-hvm.xml => xen-x86_64-hvm.xml.in} (80%)
> rename tests/xencapsdata/{xen-x86_64.xml => xen-x86_64.xml.in} (90%)
>
> diff --git a/configure.in b/configure.in
> index 29c8867..b7829ee 100644
> --- a/configure.in
> +++ b/configure.in
> @@ -1182,6 +1182,29 @@ AC_MSG_RESULT($RUNNING_XEND)
>
> AM_CONDITIONAL([ENABLE_XEN_TESTS], [test "$RUNNING_XEN" != "no" -a "$RUNNING_XEND" != "no"])
>
> +
> +AC_MSG_CHECKING([location of xen userspace tools])
> +AC_ARG_WITH([xen-tools], [AC_HELP_STRING([--with-xen-tools=[path]], [path to xen tools])])
> +if test "x$with_xen_tools" == "x" ; then
> + XEN_TOOLS="/usr/lib/xen"
> +else
> + XEN_TOOLS="$with_xen_tools"
> +fi
> +AC_SUBST([XEN_TOOLS], [$XEN_TOOLS])
> +AC_DEFINE_UNQUOTED([XEN_TOOLS], ["$XEN_TOOLS"], [path to xen tools])
> +AC_MSG_RESULT($XEN_TOOLS)
> +
> +AC_MSG_CHECKING([location of 64bit xen userspace tools])
> +AC_ARG_WITH([xen-tools], [AC_HELP_STRING([--with-xen-tools64=[path]], [path to xen 64bit tools])])
> +if test "x$with_xen_tools64" == "x" ; then
> + XEN_TOOLS64="/usr/lib64/xen"
> +else
> + XEN_TOOLS64="$with_xen_tools64"
> +fi
> +AC_SUBST([XEN_TOOLS64], [$XEN_TOOLS64])
> +AC_DEFINE_UNQUOTED([XEN_TOOLS64], ["$XEN_TOOLS64"], [path to 64bit xen tools])
> +AC_MSG_RESULT($XEN_TOOLS64)
> +
> AC_ARG_ENABLE([test-coverage],
> [ --enable-test-coverage turn on code coverage instrumentation],
> [case "${enableval}" in
> @@ -1460,6 +1483,16 @@ AC_OUTPUT(Makefile src/Makefile include/Makefile docs/Makefile \
> tests/sexpr2xmldata/Makefile \
> tests/xmconfigdata/Makefile \
> tests/xencapsdata/Makefile \
> + tests/xencapsdata/xen-i686.xml
> + tests/xencapsdata/xen-i686-pae.xml
> + tests/xencapsdata/xen-i686-pae-hvm.xml \
> + tests/xencapsdata/xen-ia64-be-hvm.xml \
> + tests/xencapsdata/xen-ia64-be.xml
> + tests/xencapsdata/xen-ia64.xml
> + tests/xencapsdata/xen-ia64-hvm.xml \
> + tests/xencapsdata/xen-x86_64.xml
> + tests/xencapsdata/xen-x86_64-hvm.xml \
> + tests/xencapsdata/xen-ppc64.xml
> tests/confdata/Makefile \
> examples/domain-events/events-c/Makefile \
> examples/hellolibvirt/Makefile)
> diff --git a/src/xen_internal.c b/src/xen_internal.c
> index cc5a8f9..31fdf5b 100644
> --- a/src/xen_internal.c
> +++ b/src/xen_internal.c
> @@ -2209,10 +2209,10 @@ xenHypervisorBuildCapabilities(virConnectPtr conn,
> guest_archs[i].model,
> guest_archs[i].bits,
> (STREQ(hostmachine, "x86_64") ?
> - "/usr/lib64/xen/bin/qemu-dm" :
> - "/usr/lib/xen/bin/qemu-dm"),
> + XEN_TOOLS64 "/bin/qemu-dm" :
> + XEN_TOOLS "/bin/qemu-dm"),
> (guest_archs[i].hvm ?
> - "/usr/lib/xen/boot/hvmloader" :
> + XEN_TOOLS "/boot/hvmloader" :
> NULL),
> 1,
> machines)) == NULL)
> diff --git a/tests/xencapsdata/Makefile.am b/tests/xencapsdata/Makefile.am
> index 7d77575..a59849b 100644
> --- a/tests/xencapsdata/Makefile.am
> +++ b/tests/xencapsdata/Makefile.am
> @@ -1,2 +1,2 @@
>
> -EXTRA_DIST = $(wildcard *.xml) $(wildcard *.cpuinfo) $(wildcard *.caps)
> +EXTRA_DIST = $(wildcard *.xml.in) $(wildcard *.cpuinfo) $(wildcard *.caps)
> diff --git a/tests/xencapsdata/xen-i686-pae-hvm.xml b/tests/xencapsdata/xen-i686-pae-hvm.xml.in
> similarity index 84%
> rename from tests/xencapsdata/xen-i686-pae-hvm.xml
> rename to tests/xencapsdata/xen-i686-pae-hvm.xml.in
> index 42b099c..6a3a547 100644
> --- a/tests/xencapsdata/xen-i686-pae-hvm.xml
> +++ b/tests/xencapsdata/xen-i686-pae-hvm.xml.in
> @@ -19,7 +19,7 @@
> <os_type>xen</os_type>
> <arch name='i686'>
> <wordsize>32</wordsize>
> - <emulator>/usr/lib/xen/bin/qemu-dm</emulator>
> + <emulator>@XEN_TOOLS@/bin/qemu-dm</emulator>
> <machine>xenpv</machine>
> <domain type='xen'>
> </domain>
> @@ -33,8 +33,8 @@
> <os_type>hvm</os_type>
> <arch name='i686'>
> <wordsize>32</wordsize>
> - <emulator>/usr/lib/xen/bin/qemu-dm</emulator>
> - <loader>/usr/lib/xen/boot/hvmloader</loader>
> + <emulator>@XEN_TOOLS@/bin/qemu-dm</emulator>
> + <loader>@XEN_TOOLS@/boot/hvmloader</loader>
> <machine>xenfv</machine>
> <domain type='xen'>
> </domain>
> diff --git a/tests/xencapsdata/xen-i686-pae.xml b/tests/xencapsdata/xen-i686-pae.xml.in
> similarity index 91%
> rename from tests/xencapsdata/xen-i686-pae.xml
> rename to tests/xencapsdata/xen-i686-pae.xml.in
> index a6cec8a..e55b7d3 100644
> --- a/tests/xencapsdata/xen-i686-pae.xml
> +++ b/tests/xencapsdata/xen-i686-pae.xml.in
> @@ -19,7 +19,7 @@
> <os_type>xen</os_type>
> <arch name='i686'>
> <wordsize>32</wordsize>
> - <emulator>/usr/lib/xen/bin/qemu-dm</emulator>
> + <emulator>@XEN_TOOLS@/bin/qemu-dm</emulator>
> <machine>xenpv</machine>
> <domain type='xen'>
> </domain>
> diff --git a/tests/xencapsdata/xen-i686.xml b/tests/xencapsdata/xen-i686.xml.in
> similarity index 90%
> rename from tests/xencapsdata/xen-i686.xml
> rename to tests/xencapsdata/xen-i686.xml.in
> index 9071212..56b5f01 100644
> --- a/tests/xencapsdata/xen-i686.xml
> +++ b/tests/xencapsdata/xen-i686.xml.in
> @@ -16,7 +16,7 @@
> <os_type>xen</os_type>
> <arch name='i686'>
> <wordsize>32</wordsize>
> - <emulator>/usr/lib/xen/bin/qemu-dm</emulator>
> + <emulator>@XEN_TOOLS@/bin/qemu-dm</emulator>
> <machine>xenpv</machine>
> <domain type='xen'>
> </domain>
> diff --git a/tests/xencapsdata/xen-ia64-be-hvm.xml b/tests/xencapsdata/xen-ia64-be-hvm.xml.in
> similarity index 83%
> rename from tests/xencapsdata/xen-ia64-be-hvm.xml
> rename to tests/xencapsdata/xen-ia64-be-hvm.xml.in
> index 732b693..69e839e 100644
> --- a/tests/xencapsdata/xen-ia64-be-hvm.xml
> +++ b/tests/xencapsdata/xen-ia64-be-hvm.xml.in
> @@ -16,7 +16,7 @@
> <os_type>xen</os_type>
> <arch name='ia64'>
> <wordsize>64</wordsize>
> - <emulator>/usr/lib/xen/bin/qemu-dm</emulator>
> + <emulator>@XEN_TOOLS@/bin/qemu-dm</emulator>
> <machine>xenpv</machine>
> <domain type='xen'>
> </domain>
> @@ -30,8 +30,8 @@
> <os_type>hvm</os_type>
> <arch name='ia64'>
> <wordsize>64</wordsize>
> - <emulator>/usr/lib/xen/bin/qemu-dm</emulator>
> - <loader>/usr/lib/xen/boot/hvmloader</loader>
> + <emulator>@XEN_TOOLS@/bin/qemu-dm</emulator>
> + <loader>@XEN_TOOLS@/boot/hvmloader</loader>
> <machine>xenfv</machine>
> <domain type='xen'>
> </domain>
> diff --git a/tests/xencapsdata/xen-ia64-be.xml b/tests/xencapsdata/xen-ia64-be.xml.in
> similarity index 90%
> rename from tests/xencapsdata/xen-ia64-be.xml
> rename to tests/xencapsdata/xen-ia64-be.xml.in
> index 4f133ec..54c4684 100644
> --- a/tests/xencapsdata/xen-ia64-be.xml
> +++ b/tests/xencapsdata/xen-ia64-be.xml.in
> @@ -16,7 +16,7 @@
> <os_type>xen</os_type>
> <arch name='ia64'>
> <wordsize>64</wordsize>
> - <emulator>/usr/lib/xen/bin/qemu-dm</emulator>
> + <emulator>@XEN_TOOLS@/bin/qemu-dm</emulator>
> <machine>xenpv</machine>
> <domain type='xen'>
> </domain>
> diff --git a/tests/xencapsdata/xen-ia64-hvm.xml b/tests/xencapsdata/xen-ia64-hvm.xml.in
> similarity index 82%
> rename from tests/xencapsdata/xen-ia64-hvm.xml
> rename to tests/xencapsdata/xen-ia64-hvm.xml.in
> index ef48a95..ede093c 100644
> --- a/tests/xencapsdata/xen-ia64-hvm.xml
> +++ b/tests/xencapsdata/xen-ia64-hvm.xml.in
> @@ -16,7 +16,7 @@
> <os_type>xen</os_type>
> <arch name='ia64'>
> <wordsize>64</wordsize>
> - <emulator>/usr/lib/xen/bin/qemu-dm</emulator>
> + <emulator>@XEN_TOOLS@/bin/qemu-dm</emulator>
> <machine>xenpv</machine>
> <domain type='xen'>
> </domain>
> @@ -27,8 +27,8 @@
> <os_type>hvm</os_type>
> <arch name='ia64'>
> <wordsize>64</wordsize>
> - <emulator>/usr/lib/xen/bin/qemu-dm</emulator>
> - <loader>/usr/lib/xen/boot/hvmloader</loader>
> + <emulator>@XEN_TOOLS@/bin/qemu-dm</emulator>
> + <loader>@XEN_TOOLS@/boot/hvmloader</loader>
> <machine>xenfv</machine>
> <domain type='xen'>
> </domain>
> diff --git a/tests/xencapsdata/xen-ia64.xml b/tests/xencapsdata/xen-ia64.xml.in
> similarity index 89%
> rename from tests/xencapsdata/xen-ia64.xml
> rename to tests/xencapsdata/xen-ia64.xml.in
> index 5570f4d..3407fd4 100644
> --- a/tests/xencapsdata/xen-ia64.xml
> +++ b/tests/xencapsdata/xen-ia64.xml.in
> @@ -16,7 +16,7 @@
> <os_type>xen</os_type>
> <arch name='ia64'>
> <wordsize>64</wordsize>
> - <emulator>/usr/lib/xen/bin/qemu-dm</emulator>
> + <emulator>@XEN_TOOLS@/bin/qemu-dm</emulator>
> <machine>xenpv</machine>
> <domain type='xen'>
> </domain>
> diff --git a/tests/xencapsdata/xen-ppc64.xml b/tests/xencapsdata/xen-ppc64.xml.in
> similarity index 89%
> rename from tests/xencapsdata/xen-ppc64.xml
> rename to tests/xencapsdata/xen-ppc64.xml.in
> index 627d79c..8bb19b4 100644
> --- a/tests/xencapsdata/xen-ppc64.xml
> +++ b/tests/xencapsdata/xen-ppc64.xml.in
> @@ -16,7 +16,7 @@
> <os_type>xen</os_type>
> <arch name='ppc64'>
> <wordsize>64</wordsize>
> - <emulator>/usr/lib/xen/bin/qemu-dm</emulator>
> + <emulator>@XEN_TOOLS@/bin/qemu-dm</emulator>
> <machine>xenpv</machine>
> <domain type='xen'>
> </domain>
> diff --git a/tests/xencapsdata/xen-x86_64-hvm.xml b/tests/xencapsdata/xen-x86_64-hvm.xml.in
> similarity index 80%
> rename from tests/xencapsdata/xen-x86_64-hvm.xml
> rename to tests/xencapsdata/xen-x86_64-hvm.xml.in
> index 52c12c6..47d49c1 100644
> --- a/tests/xencapsdata/xen-x86_64-hvm.xml
> +++ b/tests/xencapsdata/xen-x86_64-hvm.xml.in
> @@ -19,7 +19,7 @@
> <os_type>xen</os_type>
> <arch name='x86_64'>
> <wordsize>64</wordsize>
> - <emulator>/usr/lib64/xen/bin/qemu-dm</emulator>
> + <emulator>@XEN_TOOLS64@/bin/qemu-dm</emulator>
> <machine>xenpv</machine>
> <domain type='xen'>
> </domain>
> @@ -30,8 +30,8 @@
> <os_type>hvm</os_type>
> <arch name='i686'>
> <wordsize>32</wordsize>
> - <emulator>/usr/lib64/xen/bin/qemu-dm</emulator>
> - <loader>/usr/lib/xen/boot/hvmloader</loader>
> + <emulator>@XEN_TOOLS64@/bin/qemu-dm</emulator>
> + <loader>@XEN_TOOLS@/boot/hvmloader</loader>
> <machine>xenfv</machine>
> <domain type='xen'>
> </domain>
> @@ -48,8 +48,8 @@
> <os_type>hvm</os_type>
> <arch name='x86_64'>
> <wordsize>64</wordsize>
> - <emulator>/usr/lib64/xen/bin/qemu-dm</emulator>
> - <loader>/usr/lib/xen/boot/hvmloader</loader>
> + <emulator>@XEN_TOOLS64@/bin/qemu-dm</emulator>
> + <loader>@XEN_TOOLS@/boot/hvmloader</loader>
> <machine>xenfv</machine>
> <domain type='xen'>
> </domain>
> diff --git a/tests/xencapsdata/xen-x86_64.xml b/tests/xencapsdata/xen-x86_64.xml.in
> similarity index 90%
> rename from tests/xencapsdata/xen-x86_64.xml
> rename to tests/xencapsdata/xen-x86_64.xml.in
> index 0faa43c..f275148 100644
> --- a/tests/xencapsdata/xen-x86_64.xml
> +++ b/tests/xencapsdata/xen-x86_64.xml.in
> @@ -19,7 +19,7 @@
> <os_type>xen</os_type>
> <arch name='x86_64'>
> <wordsize>64</wordsize>
> - <emulator>/usr/lib64/xen/bin/qemu-dm</emulator>
> + <emulator>@XEN_TOOLS64@/bin/qemu-dm</emulator>
> <machine>xenpv</machine>
> <domain type='xen'>
> </domain>
> --
> 1.6.3.3
>
> --
> Libvir-list mailing list
> Libvir-list at redhat.com
> https://www.redhat.com/mailman/listinfo/libvir-list
--
|: Red Hat, Engineering, London -o- http://people.redhat.com/berrange/ :|
|: http://libvirt.org -o- http://virt-manager.org -o- http://ovirt.org :|
|: http://autobuild.org -o- http://search.cpan.org/~danberr/ :|
|: GnuPG: 7D3B9505 -o- F3C9 553F A1DA 4AC2 5648 23C1 B3DF F742 7D3B 9505 :|
More information about the libvir-list
mailing list