From mboxrd@z Thu Jan 1 00:00:00 1970 From: Subject: [PATCH v7 3/5] Clone and build upstream Qemu by default Date: Fri, 30 Sep 2011 15:20:38 +0100 Message-ID: <1317392440-4137-3-git-send-email-stefano.stabellini@eu.citrix.com> References: Mime-Version: 1.0 Content-Type: text/plain Return-path: In-Reply-To: List-Unsubscribe: , List-Post: List-Help: List-Subscribe: , Sender: xen-devel-bounces@lists.xensource.com Errors-To: xen-devel-bounces@lists.xensource.com To: xen-devel@lists.xensource.com Cc: Ian.Campbell@eu.citrix.com, keir@xen.org, Stefano Stabellini , Ian.Jackson@eu.citrix.com, Stefano.Stabellini@eu.citrix.com List-Id: xen-devel@lists.xenproject.org Signed-off-by: Stefano Stabellini 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