Move the ioemu-dir-find shell script to an external file

Add support for configuring upstream qemu and rename ioemu-remote
ioemu-dir-remote.

Signed-off-by: Stefano Stabellini <stefano.stabellini@eu.citrix.com>
This commit is contained in:
Stefano Stabellini committed 2011-09-13 10:27:20 +01:00
1 parent 5b6fdcc0d8
commit 088276d615
3 files changed
+50 -31

No files matched your search

+1 -1
View File
@@ -291,7 +291,7 @@
^tools/xm-test/lib/XmTestLib/config.py$
^tools/xm-test/lib/XmTestReport/xmtest.py$
^tools/xm-test/tests/.*\.test$
^tools/ioemu-remote
^tools/ioemu-dir-remote
^tools/ioemu-dir$
^tools/ocaml/.*/.*\.annot$
^tools/ocaml/.*/.*\.cmx?a$
+46
View File
@@ -0,0 +1,46 @@
#!/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
# is this qemu-xen-traditional?
if test -f $ROOT/xen-setup; then
$ROOT/xen-setup $IOEMU_CONFIGURE_CROSS
# is this qemu-xen?
elif test -f $ROOT/configure; then
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
+3 -30
View File
@@ -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_TARGET_ARCH) \
--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)/scripts/git-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
Reference in new issue
Block a user
Blocking a user prevents them from interacting with repositories, such as opening or commenting on pull requests or issues. Learn more about blocking a user.