Update git pull machinery This is needed to pull a non-default branch, and to allow the test infrastructure's bisection machinery to work. Signed-off-by: Jeremy Fitzhardinge diff -r 8e8dd38374e9 buildconfigs/src.git-clone --- a/buildconfigs/src.git-clone Wed Aug 11 16:44:03 2010 +0100 +++ b/buildconfigs/src.git-clone Thu Aug 12 10:42:45 2010 -0700 @@ -13,19 +13,20 @@ .ERROR: XEN_LINUX_GIT_REMOTEBRANCH not specified endif -XEN_LINUX_GIT_LOCALBRANCH ?= master +XEN_GIT_ORIGIN ?= xen + +XEN_LINUX_GIT_LOCALBRANCH ?= $(XEN_LINUX_GIT_REMOTEBRANCH) # Set XEN_LINUX_GITREV to update to a particlar revision. -XEN_LINUX_GITREV ?= +XEN_LINUX_GITREV ?= $(XEN_GIT_ORIGIN)/$(XEN_LINUX_GIT_REMOTEBRANCH) $(LINUX_SRCDIR)/.valid-src: $(__XEN_LINUX_UPDATE) set -ex; \ if ! [ -d $(LINUX_SRCDIR) ]; then \ rm -rf $(LINUX_SRCDIR) $(LINUX_SRCDIR).tmp; \ mkdir $(LINUX_SRCDIR).tmp; rmdir $(LINUX_SRCDIR).tmp; \ - $(GIT) clone $(XEN_LINUX_GIT_URL) $(LINUX_SRCDIR).tmp; \ - cd $(LINUX_SRCDIR).tmp; \ - $(GIT) checkout $(XEN_LINUX_GIT_REMOTEBRANCH); \ - cd ..; mv $(LINUX_SRCDIR).tmp $(LINUX_SRCDIR); \ + $(GIT) clone -o $(XEN_GIT_ORIGIN) -n $(XEN_LINUX_GIT_URL) $(LINUX_SRCDIR).tmp; \ + (cd $(LINUX_SRCDIR).tmp; git checkout -b $(XEN_LINUX_GIT_LOCALBRANCH) $(XEN_LINUX_GITREV) ); \ + mv $(LINUX_SRCDIR).tmp $(LINUX_SRCDIR); \ fi touch $@