Mailing List Archive

[PATCH v6 3/5] Clone and build upstream Qemu by default
Signed-off-by: Stefano Stabellini <stefano.stabellini@eu.citrix.com>

diff -r 5553e17faa80 .hgignore
--- a/.hgignore Fri Sep 23 11:36:44 2011 +0000
+++ b/.hgignore Fri Sep 23 11:37:08 2011 +0000
@@ -293,6 +293,8 @@
^tools/xm-test/tests/.*\.test$
^tools/qemu-xen-traditional-dir-remote
^tools/qemu-xen-traditional-dir$
+^tools/qemu-xen-dir-remote
+^tools/qemu-xen-dir$
^tools/ocaml/.*/.*\.annot$
^tools/ocaml/.*/.*\.cmx?a$
^tools/ocaml/.*/META$
diff -r 5553e17faa80 Config.mk
--- a/Config.mk Fri Sep 23 11:36:44 2011 +0000
+++ b/Config.mk Fri Sep 23 11:37:08 2011 +0000
@@ -192,6 +192,13 @@ else
QEMU_REMOTE=git://xenbits.xensource.com/qemu-xen-unstable.git
endif

+ifeq ($(GIT_HTTP),y)
+QEMU_UPSTREAM_URL ?= http://xenbits.xensource.com/git-http/qemu-upstream-unstable.git
+else
+QEMU_UPSTREAM_URL ?= git://xenbits.xensource.com/qemu-upstream-unstable.git
+endif
+QEMU_UPSTREAM_TAG ?= 6dd84c71dff047f9e492d67e7c99928d09202760
+
# Specify which qemu-dm to use. This may be `ioemu' to use the old
# Mercurial in-tree version, or a local directory, or a git URL.
# CONFIG_QEMU ?= `pwd`/$(XEN_ROOT)/../qemu-xen.git
diff -r 5553e17faa80 Makefile
--- a/Makefile Fri Sep 23 11:36:44 2011 +0000
+++ b/Makefile Fri Sep 23 11:37:08 2011 +0000
@@ -70,7 +70,7 @@ install-tools:
$(MAKE) -C tools install

ifeq ($(CONFIG_IOEMU),y)
-install-tools: tools/qemu-xen-traditional-dir
+install-tools: tools/qemu-xen-traditional-dir tools/qemu-xen-dir
endif

.PHONY: install-kernels
@@ -91,6 +91,9 @@ tools/qemu-xen-traditional-dir:
tools/qemu-xen-traditional-dir-force-update:
$(MAKE) -C tools qemu-xen-traditional-dir-force-update

+tools/qemu-xen-dir:
+ $(MAKE) -C tools qemu-xen-dir-find
+
.PHONY: install-docs
install-docs:
sh ./docs/check_pkgs && $(MAKE) -C docs install || true
diff -r 5553e17faa80 tools/Makefile
--- a/tools/Makefile Fri Sep 23 11:36:44 2011 +0000
+++ b/tools/Makefile Fri Sep 23 11:37:08 2011 +0000
@@ -31,6 +31,7 @@ SUBDIRS-$(LIBXENAPI_BINDINGS) += libxen
# do not recurse in to a dir we are about to delete
ifneq "$(MAKECMDGOALS)" "distclean"
SUBDIRS-$(CONFIG_IOEMU) += qemu-xen-traditional-dir
+SUBDIRS-$(CONFIG_IOEMU) += qemu-xen-dir
endif

SUBDIRS-y += xenpmd
@@ -71,6 +72,7 @@ clean: subdirs-clean
.PHONY: distclean
distclean: subdirs-distclean
rm -rf qemu-xen-traditional-dir qemu-xen-traditional-dir-remote
+ rm -rf qemu-xen-dir qemu-xen-dir-remote

ifneq ($(XEN_COMPILE_ARCH),$(XEN_TARGET_ARCH))
IOEMU_CONFIGURE_CROSS ?= --cpu=$(XEN_TARGET_ARCH) \
@@ -96,6 +98,25 @@ qemu-xen-traditional-dir-find:
cd qemu-xen-traditional-dir; \
$(QEMU_ROOT)/xen-setup $(IOEMU_CONFIGURE_CROSS)

+qemu-xen-dir-find:
+ if test -d $(QEMU_UPSTREAM_URL) ; then \
+ ln -sf $(QEMU_UPSTREAM_URL) qemu-xen-dir; \
+ else \
+ export GIT=$(GIT); \
+ $(XEN_ROOT)/scripts/git-checkout.sh $(QEMU_UPSTREAM_URL) $(QEMU_UPSTREAM_TAG) qemu-xen-dir ; \
+ fi
+ cd qemu-xen-dir; \
+ ./configure --enable-xen --target-list=i386-softmmu \
+ --source-path=$$ROOT \
+ --extra-cflags="-I$(XEN_ROOT)/tools/include \
+ -I$(XEN_ROOT)/tools/libxc \
+ -I$(XEN_ROOT)/tools/xenstore" \
+ --extra-ldflags="-L$(XEN_ROOT)/tools/libxc \
+ -L$(XEN_ROOT)/tools/libxenstore" \
+ --bindir=$(LIBEXEC) \
+ --disable-kvm \
+ $(IOEMU_CONFIGURE_CROSS)
+
.PHONY: qemu-xen-traditional-dir-force-update
qemu-xen-traditional-dir-force-update:
set -ex; \
@@ -113,6 +134,14 @@ subdir-clean-qemu-xen-traditional-dir:
$(MAKE) -C qemu-xen-traditional-dir clean; \
fi

+subdir-all-qemu-xen-dir subdir-install-qemu-xen-dir: qemu-xen-dir-find
+
+subdir-clean-qemu-xen-dir:
+ set -e; if test -d qemu-xen-dir/.; then \
+ $(buildmakevars2shellvars); \
+ $(MAKE) -C qemu-xen-dir clean; \
+ fi
+
subdir-clean-debugger/gdbsx subdir-distclean-debugger/gdbsx: .phony
$(MAKE) -C debugger/gdbsx clean


_______________________________________________
Xen-devel mailing list
Xen-devel@lists.xensource.com
http://lists.xensource.com/xen-devel
Re: [PATCH v6 3/5] Clone and build upstream Qemu by default [ In reply to ]
stefano.stabellini@eu.citrix.com writes ("[Xen-devel] [PATCH v6 3/5] Clone and build upstream Qemu by default"):
> +qemu-xen-dir-find:
> + if test -d $(QEMU_UPSTREAM_URL) ; then \
> + ln -sf $(QEMU_UPSTREAM_URL) qemu-xen-dir; \
> + else \
> + export GIT=$(GIT); \
> + $(XEN_ROOT)/scripts/git-checkout.sh $(QEMU_UPSTREAM_URL) $(QEMU_UPSTREAM_TAG) qemu-xen-dir ; \
> + fi
> + cd qemu-xen-dir; \
> + ./configure --enable-xen --target-list=i386-softmmu \
> + --source-path=$$ROOT \
> + --extra-cflags="-I$(XEN_ROOT)/tools/include \
> + -I$(XEN_ROOT)/tools/libxc \
> + -I$(XEN_ROOT)/tools/xenstore" \
> + --extra-ldflags="-L$(XEN_ROOT)/tools/libxc \
> + -L$(XEN_ROOT)/tools/libxenstore" \
> + --bindir=$(LIBEXEC) \
> + --disable-kvm \
> + $(IOEMU_CONFIGURE_CROSS)

This looks OK in principle although of course I would like to test it.

Ian.

_______________________________________________
Xen-devel mailing list
Xen-devel@lists.xensource.com
http://lists.xensource.com/xen-devel