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

[Xen-devel] [PATCH v4 3/4] Clone and build upstream Qemu by default



Signed-off-by: Stefano Stabellini <stefano.stabellini@xxxxxxxxxxxxx>

diff -r b17ff49b17d1 .hgignore
--- a/.hgignore Thu Sep 15 11:38:01 2011 +0000
+++ b/.hgignore Thu Sep 15 14:24:05 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 b17ff49b17d1 Config.mk
--- a/Config.mk Thu Sep 15 11:38:01 2011 +0000
+++ b/Config.mk Thu Sep 15 14:24:05 2011 +0000
@@ -192,6 +192,14 @@ else
 QEMU_REMOTE=git://xenbits.xensource.com/qemu-xen-unstable.git
 endif
 
+# Only available through the git protocol at the moment
+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 b17ff49b17d1 Makefile
--- a/Makefile  Thu Sep 15 11:38:01 2011 +0000
+++ b/Makefile  Thu Sep 15 14:24:05 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 b17ff49b17d1 tools/Makefile
--- a/tools/Makefile    Thu Sep 15 11:38:01 2011 +0000
+++ b/tools/Makefile    Thu Sep 15 14:24:05 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) \
@@ -95,6 +97,24 @@ 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 \
+               $(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=/usr/lib/xen/bin \
+               --disable-kvm \
+               $(IOEMU_CONFIGURE_CROSS)
+
 .PHONY: qemu-xen-traditional-dir-force-update
 qemu-xen-traditional-dir-force-update:
        set -ex; \
@@ -112,6 +132,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@xxxxxxxxxxxxxxxxxxx
http://lists.xensource.com/xen-devel


 


Rackspace

Lists.xenproject.org is hosted with RackSpace, monitoring our
servers 24x7x365 and backed by RackSpace's Fanatical Support®.