# Mercurial GIT ?= git LINUX_SRCDIR ?= linux-$(LINUX_VER).git # The URL of the remote GIT repository ifeq ($(XEN_LINUX_GIT_URL),) .ERROR: XEN_LINUX_GIT_URL not specified endif # The branch in the remote repository ifeq ($(XEN_LINUX_GIT_REMOTEBRANCH),) .ERROR: XEN_LINUX_GIT_REMOTEBRANCH not specified endif 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_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 -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 $@