summaryrefslogtreecommitdiff
path: root/personal-pkgs-repo/files/autopkg-branch.mk
diff options
context:
space:
mode:
authorKarel Kočí <karel.koci@nic.cz>2018-08-30 11:18:06 +0200
committerKarel Kočí <karel.koci@nic.cz>2018-08-30 11:18:06 +0200
commitd7b7793976ee2d1fac1763c224edcc7405168c57 (patch)
tree0a58b6767a306fc430816829c73cc88f6a601767 /personal-pkgs-repo/files/autopkg-branch.mk
parentcef196855f630f7bfd1850e0e50c8fb21bfe8891 (diff)
downloadopenwrt-personal-pkgs-d7b7793976ee2d1fac1763c224edcc7405168c57.tar.gz
openwrt-personal-pkgs-d7b7793976ee2d1fac1763c224edcc7405168c57.tar.bz2
openwrt-personal-pkgs-d7b7793976ee2d1fac1763c224edcc7405168c57.zip
Move autopkg to package so it is accessible
Diffstat (limited to 'personal-pkgs-repo/files/autopkg-branch.mk')
-rw-r--r--personal-pkgs-repo/files/autopkg-branch.mk24
1 files changed, 24 insertions, 0 deletions
diff --git a/personal-pkgs-repo/files/autopkg-branch.mk b/personal-pkgs-repo/files/autopkg-branch.mk
new file mode 100644
index 0000000..871cffb
--- /dev/null
+++ b/personal-pkgs-repo/files/autopkg-branch.mk
@@ -0,0 +1,24 @@
+# Autopkg tracking given branch
+AUTOPKG_VARIANT:=branch
+$(call include_mk, autopkg-common.mk)
+
+ifndef PKG_SOURCE_BRANCH
+$(error You have to define PKG_SOURCE_BRANCH before pkgauto.mk include)
+endif
+
+PKG_SOURCE_VERSION:=$(shell git $(GIT_ARGS) rev-parse "$(PKG_SOURCE_BRANCH)")
+PKG_VERSION:=$(shell git $(GIT_ARGS) describe --abbrev=0 --tags "$(PKG_SOURCE_BRANCH)")
+
+ifeq ($(PKG_VERSION),)
+# Count commits since initial commit.
+PKG_RELEASE:=$(shell git $(GIT_ARGS) rev-list --count "$(PKG_SOURCE_VERSION)")
+# No previous version found (no tag) so we use 9999 instead
+PKG_VERSION:=9999
+else
+# Count commits since last version tag
+PKG_RELEASE:=$(shell git $(GIT_ARGS) rev-list --count "$(PKG_VERSION)..$(PKG_SOURCE_VERSION)")
+# .9999 is appended to not collide with possible existing package versions in repository
+PKG_VERSION:=$(PKG_VERSION:v%=%).9999
+endif
+
+$(eval $(call AUTOPKG_TAIL))