Compare commits
28 Commits
libvirt-0_
...
F-9-split
| Author | SHA1 | Date | |
|---|---|---|---|
|
|
481419ebb6 | ||
|
|
1e65165c3a | ||
|
|
bca27d9111 | ||
|
|
08b9144b41 | ||
|
|
2063007248 | ||
|
|
81e46cb6da | ||
|
|
263e2f2021 | ||
|
|
2b9efc3de2 | ||
|
|
69f6239766 | ||
|
|
bf744f9872 | ||
|
|
45b0b2bfa6 | ||
|
|
f29ea218b7 | ||
|
|
7d193b7810 | ||
|
|
3182a4df5a | ||
|
|
4f667910e9 | ||
|
|
b395a39f7b | ||
|
|
fdd7e87fe3 | ||
|
|
f06c387ab5 | ||
|
|
5ad8bc8190 | ||
|
|
31802de821 | ||
|
|
cc39758e17 | ||
|
|
55fabd69c0 | ||
|
|
b2a1a0e9ba | ||
|
|
cbe377ed29 | ||
|
|
06a21e388f | ||
|
|
d1a886ab31 | ||
|
|
c70baa5133 | ||
|
|
52b4d91272 |
25
.cvsignore
25
.cvsignore
@@ -1,19 +1,6 @@
|
|||||||
libvirt-0.0.3.tar.gz
|
.build*.log
|
||||||
libvirt-0.0.4.tar.gz
|
*.rpm
|
||||||
libvirt-0.0.5.tar.gz
|
i686
|
||||||
libvirt-0.0.6.tar.gz
|
x86_64
|
||||||
libvirt-0.1.0.tar.gz
|
libvirt-*.tar.gz
|
||||||
libvirt-0.1.2.tar.gz
|
libvirt-0.4.2.tar.gz
|
||||||
libvirt-0.1.1.tar.gz
|
|
||||||
libvirt-0.1.3.tar.gz
|
|
||||||
libvirt-0.1.4.tar.gz
|
|
||||||
libvirt-0.1.5.tar.gz
|
|
||||||
libvirt-0.1.6.tar.gz
|
|
||||||
libvirt-0.1.7.tar.gz
|
|
||||||
libvirt-0.1.8.tar.gz
|
|
||||||
libvirt-0.1.9.tar.gz
|
|
||||||
libvirt-0.1.10.tar.gz
|
|
||||||
libvirt-0.1.11.tar.gz
|
|
||||||
libvirt-0.2.0.tar.gz
|
|
||||||
libvirt-0.2.1.tar.gz
|
|
||||||
libvirt-0.2.2.tar.gz
|
|
||||||
|
|||||||
17
Makefile
17
Makefile
@@ -3,4 +3,19 @@
|
|||||||
NAME := libvirt
|
NAME := libvirt
|
||||||
SPECFILE = $(firstword $(wildcard *.spec))
|
SPECFILE = $(firstword $(wildcard *.spec))
|
||||||
|
|
||||||
include ../common/Makefile.common
|
define find-makefile-common
|
||||||
|
for d in common ../common ../../common ; do if [ -f $$d/Makefile.common ] ; then if [ -f $$d/CVS/Root -a -w $$/Makefile.common ] ; then cd $$d ; cvs -Q update ; fi ; echo "$$d/Makefile.common" ; break ; fi ; done
|
||||||
|
endef
|
||||||
|
|
||||||
|
MAKEFILE_COMMON := $(shell $(find-makefile-common))
|
||||||
|
|
||||||
|
ifeq ($(MAKEFILE_COMMON),)
|
||||||
|
# attempt a checkout
|
||||||
|
define checkout-makefile-common
|
||||||
|
test -f CVS/Root && { cvs -Q -d $$(cat CVS/Root) checkout common && echo "common/Makefile.common" ; } || { echo "ERROR: I can't figure out how to checkout the 'common' module." ; exit -1 ; } >&2
|
||||||
|
endef
|
||||||
|
|
||||||
|
MAKEFILE_COMMON := $(shell $(checkout-makefile-common))
|
||||||
|
endif
|
||||||
|
|
||||||
|
include $(MAKEFILE_COMMON)
|
||||||
|
|||||||
@@ -1,17 +0,0 @@
|
|||||||
diff -rup libvirt-0.2.2/qemud/conf.c libvirt-0.2.2.new/qemud/conf.c
|
|
||||||
--- libvirt-0.2.2/qemud/conf.c 2007-05-14 10:38:52.000000000 -0400
|
|
||||||
+++ libvirt-0.2.2.new/qemud/conf.c 2007-05-14 10:38:34.000000000 -0400
|
|
||||||
@@ -1151,6 +1151,12 @@ qemudNetworkIfaceConnect(struct qemud_se
|
|
||||||
goto error;
|
|
||||||
}
|
|
||||||
|
|
||||||
+ if (!server->brctl && (err = brInit(&server->brctl))) {
|
|
||||||
+ qemudReportError(server, VIR_ERR_INTERNAL_ERROR,
|
|
||||||
+ "cannot initialize bridge support: %s", strerror(err));
|
|
||||||
+ goto error;
|
|
||||||
+ }
|
|
||||||
+
|
|
||||||
if ((err = brAddTap(server->brctl, brname,
|
|
||||||
ifname, BR_IFNAME_MAXLEN, &tapfd))) {
|
|
||||||
qemudReportError(server, VIR_ERR_INTERNAL_ERROR,
|
|
||||||
Only in libvirt-0.2.2.new/qemud: conf.c.orig
|
|
||||||
@@ -1,15 +0,0 @@
|
|||||||
diff -rup libvirt-0.2.2/src/xen_unified.c libvirt-0.2.2.new/src/xen_unified.c
|
|
||||||
--- libvirt-0.2.2/src/xen_unified.c 2007-04-17 04:38:52.000000000 -0400
|
|
||||||
+++ libvirt-0.2.2.new/src/xen_unified.c 2007-05-01 16:49:54.000000000 -0400
|
|
||||||
@@ -112,6 +112,11 @@ xenUnifiedOpen (virConnectPtr conn, cons
|
|
||||||
for (i = 0; i < nb_drivers; ++i) {
|
|
||||||
int failed_to_open = 1;
|
|
||||||
|
|
||||||
+ /* Only use XM driver for Xen <= 3.0.3 (ie xendConfigVersion <= 2) */
|
|
||||||
+ if (drivers[i] == &xenXMDriver &&
|
|
||||||
+ priv->xendConfigVersion > 2)
|
|
||||||
+ continue;
|
|
||||||
+
|
|
||||||
/* Ignore proxy for root */
|
|
||||||
if (i == proxy_offset && getuid() == 0)
|
|
||||||
continue;
|
|
||||||
@@ -1,23 +0,0 @@
|
|||||||
diff -rup libvirt-0.2.2/qemud/qemud.c libvirt-0.2.2.new/qemud/qemud.c
|
|
||||||
--- libvirt-0.2.2/qemud/qemud.c 2007-04-11 10:13:36.000000000 -0400
|
|
||||||
+++ libvirt-0.2.2.new/qemud/qemud.c 2007-05-01 16:51:15.000000000 -0400
|
|
||||||
@@ -1110,6 +1110,7 @@ qemudBuildDnsmasqArgv(struct qemud_serve
|
|
||||||
len =
|
|
||||||
1 + /* dnsmasq */
|
|
||||||
1 + /* --keep-in-foreground */
|
|
||||||
+ 1 + /* --strict-order */
|
|
||||||
1 + /* --bind-interfaces */
|
|
||||||
2 + /* --pid-file "" */
|
|
||||||
2 + /* --conf-file "" */
|
|
||||||
@@ -1133,6 +1134,11 @@ qemudBuildDnsmasqArgv(struct qemud_serve
|
|
||||||
APPEND_ARG(*argv, i++, "dnsmasq");
|
|
||||||
|
|
||||||
APPEND_ARG(*argv, i++, "--keep-in-foreground");
|
|
||||||
+ /*
|
|
||||||
+ * Needed to ensure dnsmasq uses same algorithm for processing
|
|
||||||
+ * multiple nameserver entries in /etc/resolv.conf as GLibC.
|
|
||||||
+ */
|
|
||||||
+ APPEND_ARG(*argv, i++, "--strict-order");
|
|
||||||
APPEND_ARG(*argv, i++, "--bind-interfaces");
|
|
||||||
|
|
||||||
APPEND_ARG(*argv, i++, "--pid-file");
|
|
||||||
@@ -1,70 +0,0 @@
|
|||||||
diff -rup libvirt-0.2.2.new/src/xend_internal.c libvirt-0.2.2/src/xend_internal.c
|
|
||||||
--- libvirt-0.2.2.new/src/xend_internal.c 2007-04-15 16:09:10.000000000 -0400
|
|
||||||
+++ libvirt-0.2.2/src/xend_internal.c 2007-05-03 14:52:42.000000000 -0400
|
|
||||||
@@ -1676,35 +1676,38 @@ xend_parse_sexp_desc(virConnectPtr conn,
|
|
||||||
}
|
|
||||||
}
|
|
||||||
|
|
||||||
- /* Graphics device (HVM <= 3.0.4, or PV <= 3.0.4) vnc config */
|
|
||||||
- tmp = sexpr_fmt_node(root, "domain/image/%s/vnc", hvm ? "hvm" : "linux");
|
|
||||||
- if (tmp != NULL) {
|
|
||||||
- if (tmp[0] == '1') {
|
|
||||||
- int port = xenStoreDomainGetVNCPort(conn, domid);
|
|
||||||
- const char *listenAddr = sexpr_fmt_node(root, "domain/image/%s/vnclisten", hvm ? "hvm" : "linux");
|
|
||||||
- const char *keymap = sexpr_fmt_node(root, "domain/image/%s/keymap", hvm ? "hvm" : "linux");
|
|
||||||
- /* For Xen >= 3.0.3, don't generate a fixed port mapping
|
|
||||||
- * because it will almost certainly be wrong ! Just leave
|
|
||||||
- * it as -1 which lets caller see that the VNC server isn't
|
|
||||||
- * present yet. Subsquent dumps of the XML will eventually
|
|
||||||
- * find the port in XenStore once VNC server has started
|
|
||||||
- */
|
|
||||||
- if (port == -1 && xendConfigVersion < 2)
|
|
||||||
- port = 5900 + domid;
|
|
||||||
- virBufferVSprintf(&buf, " <graphics type='vnc' port='%d'", port);
|
|
||||||
- if (listenAddr)
|
|
||||||
- virBufferVSprintf(&buf, " listen='%s'", listenAddr);
|
|
||||||
- if (keymap)
|
|
||||||
- virBufferVSprintf(&buf, " keymap='%s'", keymap);
|
|
||||||
- virBufferAdd(&buf, "/>\n", 3);
|
|
||||||
+ /* Graphics device (HVM <= 3.0.4, or PV <= 3.0.3) vnc config */
|
|
||||||
+ if ((hvm && xendConfigVersion < 4) ||
|
|
||||||
+ (!hvm && xendConfigVersion < 3)) {
|
|
||||||
+ tmp = sexpr_fmt_node(root, "domain/image/%s/vnc", hvm ? "hvm" : "linux");
|
|
||||||
+ if (tmp != NULL) {
|
|
||||||
+ if (tmp[0] == '1') {
|
|
||||||
+ int port = xenStoreDomainGetVNCPort(conn, domid);
|
|
||||||
+ const char *listenAddr = sexpr_fmt_node(root, "domain/image/%s/vnclisten", hvm ? "hvm" : "linux");
|
|
||||||
+ const char *keymap = sexpr_fmt_node(root, "domain/image/%s/keymap", hvm ? "hvm" : "linux");
|
|
||||||
+ /* For Xen >= 3.0.3, don't generate a fixed port mapping
|
|
||||||
+ * because it will almost certainly be wrong ! Just leave
|
|
||||||
+ * it as -1 which lets caller see that the VNC server isn't
|
|
||||||
+ * present yet. Subsquent dumps of the XML will eventually
|
|
||||||
+ * find the port in XenStore once VNC server has started
|
|
||||||
+ */
|
|
||||||
+ if (port == -1 && xendConfigVersion < 2)
|
|
||||||
+ port = 5900 + domid;
|
|
||||||
+ virBufferVSprintf(&buf, " <graphics type='vnc' port='%d'", port);
|
|
||||||
+ if (listenAddr)
|
|
||||||
+ virBufferVSprintf(&buf, " listen='%s'", listenAddr);
|
|
||||||
+ if (keymap)
|
|
||||||
+ virBufferVSprintf(&buf, " keymap='%s'", keymap);
|
|
||||||
+ virBufferAdd(&buf, "/>\n", 3);
|
|
||||||
+ }
|
|
||||||
}
|
|
||||||
- }
|
|
||||||
|
|
||||||
- /* Graphics device (HVM, or old (pre-3.0.4) style PV sdl config) */
|
|
||||||
- tmp = sexpr_fmt_node(root, "domain/image/%s/sdl", hvm ? "hvm" : "linux");
|
|
||||||
- if (tmp != NULL) {
|
|
||||||
- if (tmp[0] == '1')
|
|
||||||
- virBufferAdd(&buf, " <graphics type='sdl'/>\n", 27 );
|
|
||||||
+ /* Graphics device (HVM, or old (pre-3.0.4) style PV sdl config) */
|
|
||||||
+ tmp = sexpr_fmt_node(root, "domain/image/%s/sdl", hvm ? "hvm" : "linux");
|
|
||||||
+ if (tmp != NULL) {
|
|
||||||
+ if (tmp[0] == '1')
|
|
||||||
+ virBufferAdd(&buf, " <graphics type='sdl'/>\n", 27 );
|
|
||||||
+ }
|
|
||||||
}
|
|
||||||
|
|
||||||
tty = xenStoreDomainGetConsolePath(conn, domid);
|
|
||||||
Only in libvirt-0.2.2/src: xend_internal.c.orig
|
|
||||||
@@ -1,128 +0,0 @@
|
|||||||
diff -rup libvirt-0.2.2/qemud/conf.c libvirt-0.2.2.new/qemud/conf.c
|
|
||||||
--- libvirt-0.2.2/qemud/conf.c 2007-04-17 04:34:42.000000000 -0400
|
|
||||||
+++ libvirt-0.2.2.new/qemud/conf.c 2007-05-14 10:36:12.000000000 -0400
|
|
||||||
@@ -245,21 +245,25 @@ static int qemudExtractVersionInfo(const
|
|
||||||
cleanup1:
|
|
||||||
_exit(-1); /* Just in case */
|
|
||||||
} else { /* Parent */
|
|
||||||
- char help[4096]; /* Ought to be enough to hold QEMU help screen */
|
|
||||||
- int got, ret = -1;
|
|
||||||
+ char help[8192]; /* Ought to be enough to hold QEMU help screen */
|
|
||||||
+ int got = 0, ret = -1;
|
|
||||||
int major, minor, micro;
|
|
||||||
|
|
||||||
if (close(newstdout[1]) < 0)
|
|
||||||
goto cleanup2;
|
|
||||||
|
|
||||||
- reread:
|
|
||||||
- if ((got = read(newstdout[0], help, sizeof(help)-1)) < 0) {
|
|
||||||
- if (errno == EINTR)
|
|
||||||
- goto reread;
|
|
||||||
- goto cleanup2;
|
|
||||||
+ while (got < (sizeof(help)-1)) {
|
|
||||||
+ int len;
|
|
||||||
+ if ((len = read(newstdout[0], help+got, sizeof(help)-got-1)) <= 0) {
|
|
||||||
+ if (!len)
|
|
||||||
+ break;
|
|
||||||
+ if (errno == EINTR)
|
|
||||||
+ continue;
|
|
||||||
+ goto cleanup2;
|
|
||||||
+ }
|
|
||||||
+ got += len;
|
|
||||||
}
|
|
||||||
help[got] = '\0';
|
|
||||||
-
|
|
||||||
if (sscanf(help, "QEMU PC emulator version %d.%d.%d", &major,&minor, µ) != 3) {
|
|
||||||
goto cleanup2;
|
|
||||||
}
|
|
||||||
@@ -267,6 +271,8 @@ static int qemudExtractVersionInfo(const
|
|
||||||
*version = (major * 1000 * 1000) + (minor * 1000) + micro;
|
|
||||||
if (strstr(help, "-no-kqemu"))
|
|
||||||
*flags |= QEMUD_CMD_FLAG_KQEMU;
|
|
||||||
+ if (strstr(help, "-no-reboot"))
|
|
||||||
+ *flags |= QEMUD_CMD_FLAG_NO_REBOOT;
|
|
||||||
if (*version >= 9000)
|
|
||||||
*flags |= QEMUD_CMD_FLAG_VNC_COLON;
|
|
||||||
ret = 0;
|
|
||||||
@@ -858,6 +864,22 @@ static struct qemud_vm_def *qemudParseXM
|
|
||||||
}
|
|
||||||
xmlXPathFreeObject(obj);
|
|
||||||
|
|
||||||
+
|
|
||||||
+ /* See if we disable reboots */
|
|
||||||
+ obj = xmlXPathEval(BAD_CAST "string(/domain/on_reboot)", ctxt);
|
|
||||||
+ if ((obj == NULL) || (obj->type != XPATH_STRING) ||
|
|
||||||
+ (obj->stringval == NULL) || (obj->stringval[0] == 0)) {
|
|
||||||
+ def->noReboot = 0;
|
|
||||||
+ } else {
|
|
||||||
+ if (!strcmp((char*)obj->stringval, "destroy"))
|
|
||||||
+ def->noReboot = 1;
|
|
||||||
+ else
|
|
||||||
+ def->noReboot = 0;
|
|
||||||
+ }
|
|
||||||
+ if (obj)
|
|
||||||
+ xmlXPathFreeObject(obj);
|
|
||||||
+
|
|
||||||
+
|
|
||||||
/* Extract OS type info */
|
|
||||||
obj = xmlXPathEval(BAD_CAST "string(/domain/os/type[1])", ctxt);
|
|
||||||
if ((obj == NULL) || (obj->type != XPATH_STRING) ||
|
|
||||||
@@ -1220,6 +1242,8 @@ int qemudBuildCommandLine(struct qemud_s
|
|
||||||
2 + /* cpus */
|
|
||||||
2 + /* boot device */
|
|
||||||
2 + /* monitor */
|
|
||||||
+ (server->qemuCmdFlags & QEMUD_CMD_FLAG_NO_REBOOT &&
|
|
||||||
+ vm->def->noReboot ? 1 : 0) + /* no-reboot */
|
|
||||||
(vm->def->features & QEMUD_FEATURE_ACPI ? 0 : 1) + /* acpi */
|
|
||||||
(vm->def->os.kernel[0] ? 2 : 0) + /* kernel */
|
|
||||||
(vm->def->os.initrd[0] ? 2 : 0) + /* initrd */
|
|
||||||
@@ -1255,6 +1279,11 @@ int qemudBuildCommandLine(struct qemud_s
|
|
||||||
goto no_memory;
|
|
||||||
if (!((*argv)[++n] = strdup("pty")))
|
|
||||||
goto no_memory;
|
|
||||||
+ if (server->qemuCmdFlags & QEMUD_CMD_FLAG_NO_REBOOT &&
|
|
||||||
+ vm->def->noReboot) {
|
|
||||||
+ if (!((*argv)[++n] = strdup("-no-reboot")))
|
|
||||||
+ goto no_memory;
|
|
||||||
+ }
|
|
||||||
|
|
||||||
if (!(vm->def->features & QEMUD_FEATURE_ACPI)) {
|
|
||||||
if (!((*argv)[++n] = strdup("-no-acpi")))
|
|
||||||
@@ -2517,6 +2546,17 @@ char *qemudGenerateXML(struct qemud_serv
|
|
||||||
goto no_memory;
|
|
||||||
}
|
|
||||||
|
|
||||||
+ if (bufferAdd(buf, " <on_poweroff>destroy</on_poweroff>\n", -1) < 0)
|
|
||||||
+ goto no_memory;
|
|
||||||
+ if (def->noReboot) {
|
|
||||||
+ if (bufferAdd(buf, " <on_reboot>destroy</on_reboot>\n", -1) < 0)
|
|
||||||
+ goto no_memory;
|
|
||||||
+ } else {
|
|
||||||
+ if (bufferAdd(buf, " <on_reboot>restart</on_reboot>\n", -1) < 0)
|
|
||||||
+ goto no_memory;
|
|
||||||
+ }
|
|
||||||
+ if (bufferAdd(buf, " <on_crash>destroy</on_crash>\n", -1) < 0)
|
|
||||||
+ goto no_memory;
|
|
||||||
|
|
||||||
if (bufferAdd(buf, " <devices>\n", -1) < 0)
|
|
||||||
goto no_memory;
|
|
||||||
diff -rup libvirt-0.2.2/qemud/internal.h libvirt-0.2.2.new/qemud/internal.h
|
|
||||||
--- libvirt-0.2.2/qemud/internal.h 2007-04-11 10:13:36.000000000 -0400
|
|
||||||
+++ libvirt-0.2.2.new/qemud/internal.h 2007-05-14 10:36:02.000000000 -0400
|
|
||||||
@@ -161,6 +161,7 @@ enum qemud_vm_grapics_type {
|
|
||||||
enum qemud_cmd_flags {
|
|
||||||
QEMUD_CMD_FLAG_KQEMU = 1,
|
|
||||||
QEMUD_CMD_FLAG_VNC_COLON = 2,
|
|
||||||
+ QEMUD_CMD_FLAG_NO_REBOOT = 4,
|
|
||||||
};
|
|
||||||
|
|
||||||
|
|
||||||
@@ -191,6 +192,8 @@ struct qemud_vm_def {
|
|
||||||
int maxmem;
|
|
||||||
int vcpus;
|
|
||||||
|
|
||||||
+ int noReboot;
|
|
||||||
+
|
|
||||||
struct qemud_vm_os_def os;
|
|
||||||
|
|
||||||
int features;
|
|
||||||
@@ -1,19 +0,0 @@
|
|||||||
--- libvirt-0.2.2/ChangeLog.sync-restart 2007-05-02 13:07:21.719425000 -0400
|
|
||||||
+++ libvirt-0.2.2/ChangeLog 2007-05-02 13:08:23.204879000 -0400
|
|
||||||
@@ -0,0 +1,5 @@
|
|
||||||
+Wed May 2 17:55:12 IST 2007 Mark McLoughlin <markmc@redhat.com>
|
|
||||||
+
|
|
||||||
+ * qemud/libvirtd.in: synchronously restart the daemon in
|
|
||||||
+ order to avoid https://bugzilla.redhat.com/238492
|
|
||||||
+
|
|
||||||
--- libvirt-0.2.2/qemud/libvirtd.in.sync-restart 2007-02-23 07:50:58.000000000 -0500
|
|
||||||
+++ libvirt-0.2.2/qemud/libvirtd.in 2007-05-02 13:08:23.209868000 -0400
|
|
||||||
@@ -34,7 +34,7 @@
|
|
||||||
stop() {
|
|
||||||
echo -n $"Stopping $SERVICE daemon: "
|
|
||||||
|
|
||||||
- killproc $PROCESS -TERM
|
|
||||||
+ killproc $PROCESS
|
|
||||||
RETVAL=$?
|
|
||||||
echo
|
|
||||||
if [ $RETVAL -eq 0 ]; then
|
|
||||||
281
libvirt.spec
281
libvirt.spec
@@ -1,24 +1,30 @@
|
|||||||
# -*- rpm-spec -*-
|
# -*- rpm-spec -*-
|
||||||
|
|
||||||
# This macro is used for the continuous automated builds. It just
|
%if "%{fedora}" >= "8"
|
||||||
# allows an extra fragment based on the timestamp to be appended
|
%define with_polkit 1
|
||||||
# to the release. This distinguishes automated builds, from formal
|
%define with_proxy no
|
||||||
# Fedora RPM builds
|
%else
|
||||||
%define _extra_release %{?dist:%{dist}}%{!?dist:%{?extra_release:%{extra_release}}}
|
%define with_polkit 0
|
||||||
|
%define with_proxy yes
|
||||||
|
%endif
|
||||||
|
|
||||||
|
%if "%{fedora}"
|
||||||
|
%ifarch ppc64
|
||||||
|
%define with_qemu 0
|
||||||
|
%else
|
||||||
|
%define with_qemu 1
|
||||||
|
%endif
|
||||||
|
%else
|
||||||
|
%define with_qemu 0
|
||||||
|
%endif
|
||||||
|
|
||||||
Summary: Library providing a simple API virtualization
|
Summary: Library providing a simple API virtualization
|
||||||
Name: libvirt
|
Name: libvirt
|
||||||
Version: 0.2.2
|
Version: 0.4.2
|
||||||
Release: 4%{?_extra_release}
|
Release: 1%{?dist}%{?extra_release}
|
||||||
License: LGPL
|
License: LGPL
|
||||||
Group: Development/Libraries
|
Group: Development/Libraries
|
||||||
Source: libvirt-%{version}.tar.gz
|
Source: libvirt-%{version}.tar.gz
|
||||||
Patch1: libvirt-0.2.2-disable-xm.patch
|
|
||||||
Patch2: libvirt-0.2.2-dnsmasq-order.patch
|
|
||||||
Patch3: libvirt-0.2.2-qemu-noreboot.patch
|
|
||||||
Patch4: libvirt-0.2.2-sync-daemon-restart.patch
|
|
||||||
Patch5: libvirt-0.2.2-graphics-hvm.patch
|
|
||||||
Patch6: libvirt-0.2.2-bridge-init.patch
|
|
||||||
BuildRoot: %{_tmppath}/%{name}-%{version}-root
|
BuildRoot: %{_tmppath}/%{name}-%{version}-root
|
||||||
URL: http://libvirt.org/
|
URL: http://libvirt.org/
|
||||||
BuildRequires: python python-devel
|
BuildRequires: python python-devel
|
||||||
@@ -26,18 +32,80 @@ Requires: libxml2
|
|||||||
Requires: readline
|
Requires: readline
|
||||||
Requires: ncurses
|
Requires: ncurses
|
||||||
Requires: dnsmasq
|
Requires: dnsmasq
|
||||||
|
Requires: bridge-utils
|
||||||
|
Requires: iptables
|
||||||
|
# So remote clients can access libvirt over SSH tunnel
|
||||||
|
# (client invokes 'nc' against the UNIX socket on the server)
|
||||||
|
Requires: nc
|
||||||
|
Requires: cyrus-sasl
|
||||||
|
# Not technically required, but makes 'out-of-box' config
|
||||||
|
# work correctly & doesn't have onerous dependencies
|
||||||
|
Requires: cyrus-sasl-md5
|
||||||
|
%if %{with_polkit}
|
||||||
|
Requires: PolicyKit >= 0.6
|
||||||
|
%endif
|
||||||
|
# For mount/umount in FS driver
|
||||||
|
BuildRequires: util-linux
|
||||||
|
# PPC64 has no Xen nor QEmu, try to build anyway
|
||||||
|
%ifnarch ppc64
|
||||||
|
%if %{with_qemu}
|
||||||
|
# From QEMU RPMs
|
||||||
|
Requires: /usr/bin/qemu-img
|
||||||
|
%else
|
||||||
|
# From Xen RPMs
|
||||||
|
Requires: /usr/sbin/qcow-create
|
||||||
|
%endif
|
||||||
|
%endif
|
||||||
|
# For LVM drivers
|
||||||
|
Requires: lvm2
|
||||||
|
# For ISCSI driver
|
||||||
|
Requires: iscsi-initiator-utils
|
||||||
|
# For disk driver
|
||||||
|
Requires: parted
|
||||||
|
%ifarch i386 x86_64 ia64
|
||||||
BuildRequires: xen-devel
|
BuildRequires: xen-devel
|
||||||
|
%endif
|
||||||
BuildRequires: libxml2-devel
|
BuildRequires: libxml2-devel
|
||||||
BuildRequires: readline-devel
|
BuildRequires: readline-devel
|
||||||
BuildRequires: ncurses-devel
|
BuildRequires: ncurses-devel
|
||||||
BuildRequires: gettext
|
BuildRequires: gettext
|
||||||
BuildRequires: libsysfs-devel
|
BuildRequires: gnutls-devel
|
||||||
BuildRequires: /sbin/iptables
|
BuildRequires: avahi-devel
|
||||||
|
BuildRequires: libselinux-devel
|
||||||
|
BuildRequires: dnsmasq
|
||||||
|
BuildRequires: bridge-utils
|
||||||
|
%if %{with_qemu}
|
||||||
|
BuildRequires: qemu
|
||||||
|
%endif
|
||||||
|
BuildRequires: cyrus-sasl-devel
|
||||||
|
%if %{with_polkit}
|
||||||
|
BuildRequires: PolicyKit-devel >= 0.6
|
||||||
|
%endif
|
||||||
|
# For mount/umount in FS driver
|
||||||
|
BuildRequires: util-linux
|
||||||
|
# PPC64 has no Xen nor QEmu, try to build anyway
|
||||||
|
%ifnarch ppc64
|
||||||
|
%if %{with_qemu}
|
||||||
|
# From QEMU RPMs
|
||||||
|
BuildRequires: /usr/bin/qemu-img
|
||||||
|
%else
|
||||||
|
# From Xen RPMs
|
||||||
|
BuildRequires: /usr/sbin/qcow-create
|
||||||
|
%endif
|
||||||
|
%endif
|
||||||
|
# For LVM drivers
|
||||||
|
BuildRequires: lvm2
|
||||||
|
# For ISCSI driver
|
||||||
|
BuildRequires: iscsi-initiator-utils
|
||||||
|
# For disk driver
|
||||||
|
BuildRequires: parted-devel
|
||||||
Obsoletes: libvir
|
Obsoletes: libvir
|
||||||
ExclusiveArch: i386 x86_64 ia64
|
|
||||||
|
# Fedora build root suckage
|
||||||
|
BuildRequires: gawk
|
||||||
|
|
||||||
%description
|
%description
|
||||||
Libvirt is a C toolkit to interract with the virtualization capabilities
|
Libvirt is a C toolkit to interact with the virtualization capabilities
|
||||||
of recent versions of Linux (and other OSes).
|
of recent versions of Linux (and other OSes).
|
||||||
|
|
||||||
%package devel
|
%package devel
|
||||||
@@ -45,6 +113,9 @@ Summary: Libraries, includes, etc. to compile with the libvirt library
|
|||||||
Group: Development/Libraries
|
Group: Development/Libraries
|
||||||
Requires: libvirt = %{version}
|
Requires: libvirt = %{version}
|
||||||
Requires: pkgconfig
|
Requires: pkgconfig
|
||||||
|
%ifarch i386 x86_64 ia64
|
||||||
|
Requires: xen-devel
|
||||||
|
%endif
|
||||||
Obsoletes: libvir-devel
|
Obsoletes: libvir-devel
|
||||||
|
|
||||||
%description devel
|
%description devel
|
||||||
@@ -60,32 +131,49 @@ Obsoletes: libvir-python
|
|||||||
%description python
|
%description python
|
||||||
The libvirt-python package contains a module that permits applications
|
The libvirt-python package contains a module that permits applications
|
||||||
written in the Python programming language to use the interface
|
written in the Python programming language to use the interface
|
||||||
supplied by the libvirt library to use the the virtualization capabilities
|
supplied by the libvirt library to use the virtualization capabilities
|
||||||
of recent versions of Linux (and other OSes).
|
of recent versions of Linux (and other OSes).
|
||||||
|
|
||||||
%prep
|
%prep
|
||||||
%setup -q
|
%setup -q
|
||||||
%patch1 -p1
|
|
||||||
%patch2 -p1
|
|
||||||
%patch3 -p1
|
|
||||||
%patch4 -p1
|
|
||||||
%patch5 -p1
|
|
||||||
%patch6 -p1
|
|
||||||
|
|
||||||
%build
|
%build
|
||||||
%configure --with-init-script=redhat --with-qemud-pid-file=%{_localstatedir}/run/libvirt_qemud.pid
|
# Xen is available only on i386 x86_64 ia64
|
||||||
|
%ifarch i386 i686 x86_64 ia64
|
||||||
|
%configure --with-init-script=redhat \
|
||||||
|
--with-qemud-pid-file=%{_localstatedir}/run/libvirt_qemud.pid \
|
||||||
|
--with-remote-file=%{_localstatedir}/run/libvirtd.pid \
|
||||||
|
--with-xen-proxy=%{with_proxy}
|
||||||
|
%else
|
||||||
|
%ifnarch ppc64
|
||||||
|
%configure --without-xen \
|
||||||
|
--with-init-script=redhat \
|
||||||
|
--with-qemud-pid-file=%{_localstatedir}/run/libvirt_qemud.pid \
|
||||||
|
--with-remote-file=%{_localstatedir}/run/libvirtd.pid
|
||||||
|
%else
|
||||||
|
%configure --without-xen \
|
||||||
|
--without-qemu \
|
||||||
|
--with-init-script=redhat \
|
||||||
|
--with-qemud-pid-file=%{_localstatedir}/run/libvirt_qemud.pid \
|
||||||
|
--with-remote-file=%{_localstatedir}/run/libvirtd.pid
|
||||||
|
%endif
|
||||||
|
%endif
|
||||||
|
|
||||||
make
|
make
|
||||||
|
|
||||||
%install
|
%install
|
||||||
rm -fr %{buildroot}
|
rm -fr %{buildroot}
|
||||||
|
|
||||||
%makeinstall
|
%makeinstall
|
||||||
(cd docs/examples ; make clean ; rm -rf .deps)
|
(cd docs/examples ; make clean ; rm -rf .deps Makefile Makefile.in)
|
||||||
|
(cd docs/examples/python ; rm -f Makefile Makefile.in)
|
||||||
rm -f $RPM_BUILD_ROOT%{_libdir}/*.la
|
rm -f $RPM_BUILD_ROOT%{_libdir}/*.la
|
||||||
rm -f $RPM_BUILD_ROOT%{_libdir}/*.a
|
rm -f $RPM_BUILD_ROOT%{_libdir}/*.a
|
||||||
rm -f $RPM_BUILD_ROOT%{_libdir}/python*/site-packages/*.la
|
rm -f $RPM_BUILD_ROOT%{_libdir}/python*/site-packages/*.la
|
||||||
rm -f $RPM_BUILD_ROOT%{_libdir}/python*/site-packages/*.a
|
rm -f $RPM_BUILD_ROOT%{_libdir}/python*/site-packages/*.a
|
||||||
install -d -m 0755 $RPM_BUILD_ROOT%{_localstatedir}/run/libvirt/
|
install -d -m 0755 $RPM_BUILD_ROOT%{_localstatedir}/run/libvirt/
|
||||||
|
# Default dir for disk images defined in SELinux policy
|
||||||
|
install -d -m 0755 $RPM_BUILD_ROOT%{_localstatedir}/lib/libvirt/images/
|
||||||
|
|
||||||
# We don't want to install /etc/libvirt/qemu/networks in the main %files list
|
# We don't want to install /etc/libvirt/qemu/networks in the main %files list
|
||||||
# because if the admin wants to delete the default network completely, we don't
|
# because if the admin wants to delete the default network completely, we don't
|
||||||
@@ -141,18 +229,27 @@ fi
|
|||||||
%dir %attr(0700, root, root) %{_sysconfdir}/libvirt/qemu/networks/
|
%dir %attr(0700, root, root) %{_sysconfdir}/libvirt/qemu/networks/
|
||||||
%dir %attr(0700, root, root) %{_sysconfdir}/libvirt/qemu/networks/autostart
|
%dir %attr(0700, root, root) %{_sysconfdir}/libvirt/qemu/networks/autostart
|
||||||
%{_sysconfdir}/rc.d/init.d/libvirtd
|
%{_sysconfdir}/rc.d/init.d/libvirtd
|
||||||
%dir %{_sysconfdir}/libvirt
|
%config(noreplace) %{_sysconfdir}/sysconfig/libvirtd
|
||||||
%dir %{_sysconfdir}/libvirt/qemu
|
%config(noreplace) %{_sysconfdir}/libvirt/libvirtd.conf
|
||||||
%dir %{_sysconfdir}/libvirt/qemu/networks
|
%config(noreplace) %{_sysconfdir}/libvirt/qemu.conf
|
||||||
%dir %{_sysconfdir}/libvirt/qemu/networks/autostart
|
%config(noreplace) %{_sysconfdir}/sasl2/libvirt.conf
|
||||||
%dir %{_datadir}/libvirt/
|
%dir %{_datadir}/libvirt/
|
||||||
%dir %{_datadir}/libvirt/networks/
|
%dir %{_datadir}/libvirt/networks/
|
||||||
%{_datadir}/libvirt/networks/default.xml
|
%{_datadir}/libvirt/networks/default.xml
|
||||||
%dir %{_localstatedir}/run/libvirt/
|
%dir %{_localstatedir}/run/libvirt/
|
||||||
%dir %{_localstatedir}/lib/libvirt/
|
%dir %{_localstatedir}/lib/libvirt/
|
||||||
|
%dir %attr(0700, root, root) %{_localstatedir}/lib/libvirt/images/
|
||||||
|
%if %{with_polkit}
|
||||||
|
%{_datadir}/PolicyKit/policy/libvirtd.policy
|
||||||
|
%endif
|
||||||
|
%dir %attr(0700, root, root) %{_localstatedir}/log/libvirt/qemu/
|
||||||
|
%if %{with_proxy} == "yes"
|
||||||
%attr(4755, root, root) %{_libexecdir}/libvirt_proxy
|
%attr(4755, root, root) %{_libexecdir}/libvirt_proxy
|
||||||
%attr(0755, root, root) %{_sbindir}/libvirt_qemud
|
%endif
|
||||||
%doc docs/libvirt.rng
|
%attr(0755, root, root) %{_libexecdir}/libvirt_parthelper
|
||||||
|
%attr(0755, root, root) %{_sbindir}/libvirtd
|
||||||
|
%doc docs/*.rng
|
||||||
|
%doc docs/*.xml
|
||||||
|
|
||||||
%files devel
|
%files devel
|
||||||
%defattr(-, root, root)
|
%defattr(-, root, root)
|
||||||
@@ -182,21 +279,115 @@ fi
|
|||||||
%doc docs/examples/python
|
%doc docs/examples/python
|
||||||
|
|
||||||
%changelog
|
%changelog
|
||||||
* Mon May 14 2007 Daniel P. Berrange <berrange@redhat.com> - 0.2.2-4.fc7
|
* Tue Apr 8 2008 Daniel Veillard ,veillard@redhat.com> 0.4.2-1.fc9
|
||||||
- Fixed uninitialized value causing stack overflow
|
- upstream release 0.4.2
|
||||||
- Fixed bridged networking when no virtual network is defined (bz 239273)
|
- many bug fixes
|
||||||
|
- localization updates
|
||||||
|
|
||||||
* Thu May 3 2007 Daniel P. Berrange <berrange@redhat.com> - 0.2.2-3.fc7
|
* Thu Apr 4 2008 Daniel P. Berrange <berrange@redhat.com> - 0.4.1-7.fc9
|
||||||
- Fixed init script restart race
|
- Don't run polkit-auth as root
|
||||||
- Remove duplicate <graphics> tag for HVM
|
- Don't request polkit auth if client is root
|
||||||
- Support -no-reboot in qemu for installs
|
|
||||||
- Disable xm config file driver for 3.0.5
|
|
||||||
- Force dnsmasq ordering for resolv.conf
|
|
||||||
|
|
||||||
* Fri Apr 21 2007 Daniel P. Berrange <berrange@redhat.com> - 0.2.2-2.fc7
|
* Fri Mar 28 2008 Chris Lalancette <clalance@redhat.com> - 0.4.1-6.fc9
|
||||||
- Added Requires on dnsmasq for virtual networking
|
- When dumping XML for a storage pool, make the <source> directory tag
|
||||||
|
match the <dir> tag used for specifying the pool in the first place
|
||||||
|
|
||||||
* Tue Apr 17 2007 Daniel Veillard <veillard@redhat.com> - 0.2.2-1.fc7
|
* Thu Mar 27 2008 Chris Lalancette <clalance@redhat.com> - 0.4.1-5.fc9
|
||||||
|
- Do iscsiadm sendtarget before trying to do login
|
||||||
|
- Do sysfs scanning for iSCSI LUNs instead of trying to parse them from
|
||||||
|
iscsiadm session output
|
||||||
|
|
||||||
|
* Thu Mar 13 2008 Daniel P. Berrange <berrange@redhat.com> - 0.4.1-4.fc9
|
||||||
|
- Fix QEMU tap device setup
|
||||||
|
- Fix Xen boot device XML processing
|
||||||
|
- Fixed QEMU cdrom media change
|
||||||
|
|
||||||
|
* Mon Mar 10 2008 Daniel P. Berrange <berrange@redhat.com> - 0.4.1-3.fc9
|
||||||
|
- Fixed daemon startup when run with --daemon flag
|
||||||
|
|
||||||
|
* Mon Mar 3 2008 Daniel Veillard <veillard@redhat.com> - 0.4.1-2.fc9
|
||||||
|
- 2 patches found just after the release
|
||||||
|
|
||||||
|
* Mon Mar 3 2008 Daniel Veillard <veillard@redhat.com> - 0.4.1-1.fc9
|
||||||
|
- Release of 0.4.1
|
||||||
|
- Storage APIs
|
||||||
|
- xenner support
|
||||||
|
- lots of assorted improvements, bugfixes and cleanups
|
||||||
|
- documentation and localization improvements
|
||||||
|
|
||||||
|
* Wed Feb 20 2008 Fedora Release Engineering <rel-eng@fedoraproject.org> - 0.4.0-5
|
||||||
|
- Autorebuild for GCC 4.3
|
||||||
|
|
||||||
|
* Fri Jan 18 2008 Daniel P. Berrange <berrange@redhat.com> - 0.4.0-4.fc9
|
||||||
|
- Fix SSH tunnelling (rhbz #428743)
|
||||||
|
- Fix back-compat for nodeinfo call changes.
|
||||||
|
|
||||||
|
* Sun Jan 13 2008 Daniel P. Berrange <berrange@redhat.com> - 0.4.0-3.fc9
|
||||||
|
- Fix crash when no auth callback
|
||||||
|
|
||||||
|
* Wed Jan 2 2008 Daniel P. Berrange <berrange@redhat.com> - 0.4.0-2.fc9
|
||||||
|
- Fix reading large config files (rhbz #426425)
|
||||||
|
- Fix crash when connecting to a PolicyKit enabled server with not auth callback (rhbz #427107)
|
||||||
|
|
||||||
|
* Tue Dec 18 2007 Daniel Veillard <veillard@redhat.com> - 0.4.0-1.fc8
|
||||||
|
- Release of 0.4.0
|
||||||
|
- SASL based authentication
|
||||||
|
- PolicyKit authentication
|
||||||
|
- improved NUMA and statistics support
|
||||||
|
- lots of assorted improvements, bugfixes and cleanups
|
||||||
|
- documentation and localization improvements
|
||||||
|
|
||||||
|
* Mon Oct 15 2007 Daniel P. Berrange <berrange@redhat.com> - 0.3.3-2.fc8
|
||||||
|
- Added QEMU driver config file support
|
||||||
|
- Added example config files
|
||||||
|
|
||||||
|
* Sun Sep 30 2007 Daniel Veillard <veillard@redhat.com> - 0.3.3-1
|
||||||
|
- Release of 0.3.3
|
||||||
|
- Avahi support
|
||||||
|
- NUMA support
|
||||||
|
- lots of assorted improvements, bugfixes and cleanups
|
||||||
|
- documentation and localization improvements
|
||||||
|
|
||||||
|
* Fri Aug 24 2007 Daniel Veillard <veillard@redhat.com> - 0.3.2-2.fc8
|
||||||
|
- also build on arches where Xen is not available
|
||||||
|
|
||||||
|
* Tue Aug 21 2007 Daniel Veillard <veillard@redhat.com> - 0.3.2-1.fc8
|
||||||
|
- Release of 0.3.2
|
||||||
|
- API for domains migration
|
||||||
|
- APIs for collecting statistics on disks and interfaces
|
||||||
|
- lots of assorted bugfixes and cleanups
|
||||||
|
- documentation and localization improvements
|
||||||
|
|
||||||
|
* Thu Aug 16 2007 Daniel Veillard <veillard@redhat.com> - 0.3.1-4.fc8
|
||||||
|
- Fixes missing Requires for libvirt-devel
|
||||||
|
|
||||||
|
* Thu Jul 26 2007 Daniel Veillard <veillard@redhat.com> - 0.3.1-3.fc8
|
||||||
|
- adds fix for bug #249594
|
||||||
|
|
||||||
|
* Wed Jul 25 2007 Jesse Keating <jkeating@redhat.com> - 0.3.1-2
|
||||||
|
- Rebuild for RH #249435
|
||||||
|
|
||||||
|
* Tue Jul 24 2007 Daniel Veillard <veillard@redhat.com> - 0.3.1-1.fc8
|
||||||
|
- Release of 0.3.1
|
||||||
|
- localtime clock support
|
||||||
|
- PS/2 and USB input devices
|
||||||
|
- lots of assorted bugfixes and cleanups
|
||||||
|
- documentation and localization improvements
|
||||||
|
|
||||||
|
* Mon Jul 9 2007 Daniel Veillard <veillard@redhat.com> - 0.3.0-1.fc8
|
||||||
|
- Release of 0.3.0
|
||||||
|
- Secure remote access support
|
||||||
|
- unification of daemons
|
||||||
|
- lots of assorted bugfixes and cleanups
|
||||||
|
- documentation and localization improvements
|
||||||
|
|
||||||
|
* Fri Jun 8 2007 Daniel Veillard <veillard@redhat.com> - 0.2.3-1.fc8
|
||||||
|
- Release of 0.2.3
|
||||||
|
- lot of assorted bugfixes and cleanups
|
||||||
|
- support for Xen-3.1
|
||||||
|
- new scheduler API
|
||||||
|
|
||||||
|
* Tue Apr 17 2007 Daniel Veillard <veillard@redhat.com> - 0.2.2-1
|
||||||
- Release of 0.2.2
|
- Release of 0.2.2
|
||||||
- lot of assorted bugfixes and cleanups
|
- lot of assorted bugfixes and cleanups
|
||||||
- preparing for Xen-3.0.5
|
- preparing for Xen-3.0.5
|
||||||
@@ -206,7 +397,7 @@ fi
|
|||||||
- fix scriptlet error (need to own more directories)
|
- fix scriptlet error (need to own more directories)
|
||||||
- update description text
|
- update description text
|
||||||
|
|
||||||
* Fri Mar 16 2007 Daniel Veillard <veillard@redhat.com> - 0.2.1-1.fc7
|
* Fri Mar 16 2007 Daniel Veillard <veillard@redhat.com> - 0.2.1-1
|
||||||
- Release of 0.2.1
|
- Release of 0.2.1
|
||||||
- lot of bug and portability fixes
|
- lot of bug and portability fixes
|
||||||
- Add support for network autostart and init scripts
|
- Add support for network autostart and init scripts
|
||||||
|
|||||||
Reference in New Issue
Block a user