From mboxrd@z Thu Jan 1 00:00:00 1970 From: Juergen Gross Subject: Re: [PATCH v5 1/4] Introduce git-checkout.sh Date: Wed, 21 Sep 2011 12:23:13 +0200 Message-ID: <4E79BB11.5040005@ts.fujitsu.com> References: <1316598917-21515-1-git-send-email-stefano.stabellini@eu.citrix.com> Mime-Version: 1.0 Content-Type: text/plain; charset=ISO-8859-1; format=flowed Content-Transfer-Encoding: 7bit Return-path: In-Reply-To: <1316598917-21515-1-git-send-email-stefano.stabellini@eu.citrix.com> List-Unsubscribe: , List-Post: List-Help: List-Subscribe: , Sender: xen-devel-bounces@lists.xensource.com Errors-To: xen-devel-bounces@lists.xensource.com To: stefano.stabellini@eu.citrix.com Cc: Ian.Campbell@eu.citrix.com, keir@xen.org, xen-devel@lists.xensource.com, Ian.Jackson@eu.citrix.com List-Id: xen-devel@lists.xenproject.org On 09/21/2011 11:55 AM, stefano.stabellini@eu.citrix.com wrote: > Introduce a script to perform git checkout on an external git tree; use > git-checkout.sh in ioemu-dir-find. > > Signed-off-by: Stefano Stabellini > > diff --git a/.hgignore b/.hgignore > --- a/.hgignore > +++ b/.hgignore > @@ -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$ > diff --git a/scripts/git-checkout.sh b/scripts/git-checkout.sh > new file mode 100755 > --- /dev/null > +++ b/scripts/git-checkout.sh > @@ -0,0 +1,21 @@ > +#!/bin/sh > + > +TREE=$1 > +TAG=$2 > +DIR=$3 > + > + > +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 Can't you use $GIT here? This would enable using GIT="socksify git" (e.g. behind a firewall). Juergen > + cd .. > + fi > + mv $DIR-remote.tmp $DIR-remote > +fi > +rm -f $DIR > +ln -sf $DIR-remote $DIR > 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) \ > @@ -88,20 +88,7 @@ ioemu-dir-find: > 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; \ > + $(XEN_ROOT)/scripts/git-checkout.sh $(CONFIG_QEMU) $(QEMU_TAG) ioemu-dir; \ > fi > set -e; \ > $(buildmakevars2shellvars); \ > @@ -112,7 +99,7 @@ ioemu-dir-find: > 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 > > _______________________________________________ > Xen-devel mailing list > Xen-devel@lists.xensource.com > http://lists.xensource.com/xen-devel > > -- Juergen Gross Principal Developer Operating Systems PDG ES&S SWE OS6 Telephone: +49 (0) 89 3222 2967 Fujitsu Technology Solutions e-mail: juergen.gross@ts.fujitsu.com Domagkstr. 28 Internet: ts.fujitsu.com D-80807 Muenchen Company details: ts.fujitsu.com/imprint.html