summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorJo-Philipp Wich <jo@mein.io>2017-01-20 09:51:38 +0100
committerJo-Philipp Wich <jo@mein.io>2017-01-20 10:11:15 +0100
commit2c4d158d8089c3cf79f7a8279f641d7272a4250a (patch)
treef79dab8ec046c3dba1cab93f0ea9430d0dd635e9
parentcf5f7aa0b6a8ea220ec31c01324ad715ebaa6392 (diff)
downloadmtk-20170518-2c4d158d8089c3cf79f7a8279f641d7272a4250a.zip
mtk-20170518-2c4d158d8089c3cf79f7a8279f641d7272a4250a.tar.gz
mtk-20170518-2c4d158d8089c3cf79f7a8279f641d7272a4250a.tar.bz2
sdk: fix Git URL detection
Instead of relying on complex sed patterns that trip up make syntax rules, use GNU Makes builtin filter function to match desired URLs. Signed-off-by: Jo-Philipp Wich <jo@mein.io>
-rw-r--r--target/sdk/Makefile7
1 files changed, 5 insertions, 2 deletions
diff --git a/target/sdk/Makefile b/target/sdk/Makefile
index c93e317..47a7382 100644
--- a/target/sdk/Makefile
+++ b/target/sdk/Makefile
@@ -36,10 +36,13 @@ SDK_DIRS = \
$(STAGING_SUBDIR_HOST) \
$(STAGING_SUBDIR_TOOLCHAIN)
-BASE_FEED:=$(shell git config --get remote.origin.url 2>/dev/null | sed -ne '\#\(git\|http\|https\)://#s/^/src-git base /p')
+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))
+
+BASE_FEED:=$(if $(GIT_URL),src-git base $(GIT_URL)$(if $(GIT_BRANCH),;$(GIT_BRANCH)))
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$(filter-out ;master,;$(shell git rev-parse --abbrev-ref HEAD)))
+BASE_FEED:=$(if $(BASE_FEED),$(BASE_FEED),src-git base https://git.lede-project.org/source.git$(if $(GIT_BRANCH),;$(GIT_BRANCH)))
KDIR_BASE = $(patsubst $(TOPDIR)/%,%,$(LINUX_DIR))