From: Jo-Philipp Wich Date: Sun, 19 Feb 2017 19:45:11 +0000 (+0100) Subject: sdk: emit proper tag references for base URLs X-Git-Url: http://git.lede-project.org./?a=commitdiff_plain;h=7c9f5c7e6b43650315603db1fe03c1c2fb857135;p=openwrt%2Fstaging%2Fyousong.git sdk: emit proper tag references for base URLs Properly resolve symbolic tag names when constructing the base feed Git url and avoid emitting "HEAD" references when building from detached commits. Fixes #495, #501. Signed-off-by: Jo-Philipp Wich --- diff --git a/target/sdk/Makefile b/target/sdk/Makefile index ecaa015595..a1b64155bb 100644 --- a/target/sdk/Makefile +++ b/target/sdk/Makefile @@ -38,12 +38,14 @@ SDK_DIRS = \ $(STAGING_SUBDIR_TOOLCHAIN) GIT_URL:=$(filter git://% http://% https://%,$(shell git config --get remote.origin.url 2>/dev/null)) -GIT_BRANCH:=$(filter-out master,$(shell git rev-parse --abbrev-ref HEAD 2>/dev/null)) +GIT_COMMIT:=$(shell git rev-parse HEAD 2>/dev/null) +GIT_BRANCH:=$(filter-out master HEAD,$(shell git rev-parse --abbrev-ref HEAD 2>/dev/null)) +GIT_TAGNAME:=$(shell git show-ref --tags --dereference 2>/dev/null | sed -ne '/^$(GIT_COMMIT) / { s|^.*/||; s|\^.*||; p }') -BASE_FEED:=$(if $(GIT_URL),src-git base $(GIT_URL)$(if $(GIT_BRANCH),;$(GIT_BRANCH))) +BASE_FEED:=$(if $(GIT_URL),src-git base $(GIT_URL)$(if $(GIT_BRANCH),;$(GIT_BRANCH),$(if $(GIT_TAGNAME),;$(GIT_TAGNAME)))) BASE_FEED:=$(if $(BASE_FEED),$(BASE_FEED),$(shell cd $(TOPDIR); LC_ALL=C git svn info 2>/dev/null | sed -ne 's/^URL: /src-gitsvn base /p')) BASE_FEED:=$(if $(BASE_FEED),$(BASE_FEED),$(shell cd $(TOPDIR); LC_ALL=C svn info 2>/dev/null | sed -ne 's/^URL: /src-svn base /p')) -BASE_FEED:=$(if $(BASE_FEED),$(BASE_FEED),src-git base https://git.lede-project.org/source.git$(if $(GIT_BRANCH),;$(GIT_BRANCH))) +BASE_FEED:=$(if $(BASE_FEED),$(BASE_FEED),src-git base https://git.lede-project.org/source.git$(if $(GIT_BRANCH),;$(GIT_BRANCH),$(if $(GIT_TAGNAME),;$(GIT_TAGNAME)))) KDIR_BASE = $(patsubst $(TOPDIR)/%,%,$(LINUX_DIR))