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

[libvirt] [PATCH] allow to set path to xen userspace tools



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?
Cheers,
 -- Guido
>From 494e65d99e5e533c3e1ca23d80af0536fa0a64d2 Mon Sep 17 00:00:00 2001
From: =?utf-8?q?Guido=20G=C3=BCnther?= <agx 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


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