From: Felix Fietkau <nbd@nbd.name>
Date: Wed, 25 Apr 2018 09:52:20 +0000 (+0200)
Subject: build: add support for git submodules with CONFIG_SRC_TREE_OVERRIDE
X-Git-Url: http://git.cdn.openwrt.org/?a=commitdiff_plain;h=6fa88be4868836e77b7472dcdde0aeb4f78f8203;p=openwrt%2Fstaging%2Fansuel.git

build: add support for git submodules with CONFIG_SRC_TREE_OVERRIDE

Also work around an issue where git would store the modified workdir in
the submodule git config files

Signed-off-by: Felix Fietkau <nbd@nbd.name>
---

diff --git a/include/package.mk b/include/package.mk
index 78ea5d0ef8..9912c86d6b 100644
--- a/include/package.mk
+++ b/include/package.mk
@@ -120,7 +120,12 @@ ifdef USE_GIT_TREE
   define Build/Prepare/Default
 	mkdir -p $(PKG_BUILD_DIR)
 	ln -s $(CURDIR)/git-src $(PKG_BUILD_DIR)/.git
-	( cd $(PKG_BUILD_DIR); git checkout .)
+	( cd $(PKG_BUILD_DIR); \
+		git checkout .; \
+		git submodule update --recursive; \
+		git submodule foreach git config --unset core.worktree; \
+		git submodule foreach git checkout .; \
+	)
   endef
 endif
 ifdef USE_SOURCE_DIR