summaryrefslogtreecommitdiff
path: root/autopkg-head.mk
diff options
context:
space:
mode:
Diffstat (limited to 'autopkg-head.mk')
-rw-r--r--autopkg-head.mk21
1 files changed, 21 insertions, 0 deletions
diff --git a/autopkg-head.mk b/autopkg-head.mk
new file mode 100644
index 0000000..115e1ae
--- /dev/null
+++ b/autopkg-head.mk
@@ -0,0 +1,21 @@
+ifndef AUTOPKG_VARIANT
+ $(error "Don't include autopkg-head.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
+$(shell \
+ if [ ! -d "$(TMP_REPO_PATH)" ]; then \
+ git clone --mirror "$(PKG_SOURCE_URL)" "$(TMP_REPO_PATH)"; \
+ else \
+ git $(GIT_ARGS) remote update origin; \
+ fi)