WARNING - OLD ARCHIVES

This is an archived copy of the Xen.org mailing list, which we have preserved to ensure that existing links to archives are not broken. The live archive, which contains the latest emails, can be found at http://lists.xen.org/
   
 
 
Xen 
 
Home Products Support Community News
 
   
 

xen-devel

[Xen-devel] [PATCH v6 3/5] Clone and build upstream Qemu by default

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

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@xxxxxxxxxxxxxxxxxxx
http://lists.xensource.com/xen-devel