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 v2 1/4] Move the ioemu-dir-find shell script to an ex

To: xen-devel@xxxxxxxxxxxxxxxxxxx
Subject: [Xen-devel] [PATCH v2 1/4] Move the ioemu-dir-find shell script to an external file
From: <stefano.stabellini@xxxxxxxxxxxxx>
Date: Thu, 8 Sep 2011 18:47:15 +0100
Cc: keir@xxxxxxx, Ian.Campbell@xxxxxxxxxx, stefano.stabellini@xxxxxxxxxxxxx
Delivery-date: Thu, 08 Sep 2011 10:39:43 -0700
Envelope-to: www-data@xxxxxxxxxxxxxxxxxxx
List-help: <mailto:xen-devel-request@lists.xensource.com?subject=help>
List-id: Xen developer discussion <xen-devel.lists.xensource.com>
List-post: <mailto:xen-devel@lists.xensource.com>
List-subscribe: <http://lists.xensource.com/mailman/listinfo/xen-devel>, <mailto:xen-devel-request@lists.xensource.com?subject=subscribe>
List-unsubscribe: <http://lists.xensource.com/mailman/listinfo/xen-devel>, <mailto:xen-devel-request@lists.xensource.com?subject=unsubscribe>
Sender: xen-devel-bounces@xxxxxxxxxxxxxxxxxxx
Add support for configuring upstream qemu and rename ioemu-remote
ioemu-dir-remote.

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

diff --git a/tools/Makefile b/tools/Makefile
--- a/tools/Makefile
+++ b/tools/Makefile
@@ -70,7 +70,7 @@ clean: subdirs-clean
 
 .PHONY: distclean
 distclean: subdirs-distclean
-       rm -rf ioemu-dir ioemu-remote
+       rm -rf ioemu-dir ioemu-dir-remote
 
 ifneq ($(XEN_COMPILE_ARCH),$(XEN_TARGET_ARCH))
 IOEMU_CONFIGURE_CROSS ?= --cpu=$(XEN_TARGET_ARCH) \
@@ -78,41 +78,14 @@ IOEMU_CONFIGURE_CROSS ?= --cpu=$(XEN_TAR
                         --interp-prefix=$(CROSS_SYS_ROOT)
 endif
 
-QEMU_ROOT := $(shell if [ -d "$(CONFIG_QEMU)" ]; then echo "$(CONFIG_QEMU)"; 
else echo .; fi)
-ifneq ($(QEMU_ROOT),.)
-export QEMU_ROOT
-endif
-
 ioemu-dir-find:
-       set -ex; \
-       if test -d $(CONFIG_QEMU); then \
-               mkdir -p ioemu-dir; \
-       else \
-               if [ ! -d ioemu-remote ]; then \
-                       rm -rf ioemu-remote ioemu-remote.tmp; \
-                       mkdir ioemu-remote.tmp; rmdir ioemu-remote.tmp; \
-                       $(GIT) clone $(CONFIG_QEMU) ioemu-remote.tmp; \
-                       if [ "$(QEMU_TAG)" ]; then                      \
-                               cd ioemu-remote.tmp;                    \
-                               $(GIT) branch -D dummy >/dev/null 2>&1 ||:; \
-                               $(GIT) checkout -b dummy $(QEMU_TAG);   \
-                               cd ..;                                  \
-                       fi;                                             \
-                       mv ioemu-remote.tmp ioemu-remote; \
-               fi; \
-               rm -f ioemu-dir; \
-               ln -sf ioemu-remote ioemu-dir; \
-       fi
-       set -e; \
-               $(buildmakevars2shellvars); \
-               cd ioemu-dir; \
-               $(QEMU_ROOT)/xen-setup $(IOEMU_CONFIGURE_CROSS)
-
+       $(XEN_ROOT)/tools/qemu-checkout.sh $(CONFIG_QEMU) $(QEMU_TAG) ioemu-dir
+       
 .PHONY: ioemu-dir-force-update
 ioemu-dir-force-update:
        set -ex; \
        if [ "$(QEMU_TAG)" ]; then \
-               cd ioemu-remote; \
+               cd ioemu-dir-remote; \
                $(GIT) fetch origin; \
                $(GIT) reset --hard $(QEMU_TAG); \
        fi
diff --git a/tools/qemu-checkout.sh b/tools/qemu-checkout.sh
new file mode 100755
--- /dev/null
+++ b/tools/qemu-checkout.sh
@@ -0,0 +1,44 @@
+#!/bin/bash
+
+TREE=$1
+TAG=$2
+DIR=$3
+
+
+if test -d $TREE; then
+       mkdir -p $DIR
+       ROOT=$TREE
+else
+       if test \! -d $DIR-remote; then
+               rm -rf $DIR-remote $DIR-remote.tmp;
+               mkdir $DIR-remote.tmp; rmdir $DIR-remote.tmp;
+               git clone $TREE $DIR-remote.tmp;
+               if test "$TAG" ; then
+                       cd $DIR-remote.tmp
+                       git branch -D dummy >/dev/null 2>&1 ||:
+                       git checkout -b dummy $TAG
+                       cd ..
+               fi
+               mv $DIR-remote.tmp $DIR-remote
+       fi
+       rm -f $DIR
+       ln -sf $DIR-remote $DIR
+       ROOT=.
+fi
+
+set -e
+cd $DIR
+if test -f $ROOT/xen-setup; then
+       $ROOT/xen-setup $IOEMU_CONFIGURE_CROSS
+else
+       cd $ROOT
+       ./configure --enable-xen --target-list=i386-softmmu \
+               --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
+fi

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