ifndef AUTOPKG_VARIANT $(error "Don't include autopkg-common.mk directly!") endif ifndef PKG_NAME $(error You have to define PKG_NAME before pkgauto.mk include) endif ifndef PKG_SOURCE_URL $(error You have to define PKG_SOURCE_URL before pkgauto.mk include) endif TMP_REPO_PATH=$(DL_DIR)/autopkg/$(PKG_NAME) GIT_ARGS=--git-dir='$(TMP_REPO_PATH)' --bare # Clone/update git history to bare repository # TODO it is possible that this won't fetch when there is force push to repository $(shell \ if [ ! -d "$(TMP_REPO_PATH)" ]; then \ git clone --bare "$(PKG_SOURCE_URL)" "$(TMP_REPO_PATH)"; \ else \ git $(GIT_ARGS) fetch --prune --prune-tags --force "$(PKG_SOURCE_URL)"; \ fi) define AUTOPKG_TAIL PKG_SOURCE_PROTO:=git PKG_SOURCE:=$(PKG_NAME)-$(PKG_SOURCE_VERSION).tar.gz PKG_SOURCE_SUBDIR:=$(PKG_NAME) PKG_BUILD_DIR:=$(BUILD_DIR)/$(PKG_NAME) HOST_BUILD_DIR:=$(BUILD_DIR_HOST)/$(PKG_NAME) undefine TMP_REPO_PATH undefine GIT_ARGS undefine AUTOPKG_TAIL endef