From 49fda5e4d9d5f0f195894d82b3554deb88dfe413 Mon Sep 17 00:00:00 2001
From: Jo-Philipp Wich <jow@openwrt.org>
Date: Sun, 8 Feb 2015 22:54:27 +0000
Subject: sdk: use prepare target to initialize git snapshot

The new approach is less prone to race conditions and will properly
snapshot the symlinks prepared by the prereq-build target.

Signed-off-by: Jo-Philipp Wich <jow@openwrt.org>

SVN-Revision: 44330
---
 target/sdk/Makefile                 |  1 +
 target/sdk/files/Makefile           | 12 +-----------
 target/sdk/files/include/prepare.mk | 17 +++++++++++++++++
 3 files changed, 19 insertions(+), 11 deletions(-)
 create mode 100644 target/sdk/files/include/prepare.mk

(limited to 'target/sdk')

diff --git a/target/sdk/Makefile b/target/sdk/Makefile
index 8ae63c4314..d81c2375e0 100644
--- a/target/sdk/Makefile
+++ b/target/sdk/Makefile
@@ -98,6 +98,7 @@ $(BIN_DIR)/$(SDK_NAME).tar.bz2: clean
 		$(TOPDIR)/.config \
 		./files/Config.in \
 		./files/Makefile \
+		./files/include/prepare.mk \
 		./files/README.SDK \
 		$(SDK_BUILD_DIR)/
 	$(CP) \
diff --git a/target/sdk/files/Makefile b/target/sdk/files/Makefile
index 01c1e1c788..2edf7b3a20 100644
--- a/target/sdk/files/Makefile
+++ b/target/sdk/files/Makefile
@@ -1,6 +1,6 @@
 # Makefile for OpenWrt
 #
-# Copyright (C) 2007 OpenWrt.org
+# Copyright (C) 2007-2015 OpenWrt.org
 #
 # This is free software, licensed under the GNU General Public License v2.
 # See /LICENSE for more information.
@@ -14,16 +14,6 @@ export TOPDIR LC_ALL LANG SDK
 
 world:
 
-# Initialize SDK snapshot
-.git/config:
-	@( \
-		echo -n "Initializing SDK ... "; \
-		git init -q .; \
-		find . -mindepth 1 -maxdepth 1 -not -name feeds | xargs git add; \
-		git commit -q -m "Initial state"; \
-		echo "ok."; \
-	)
-
 include $(TOPDIR)/include/host.mk
 
 ifneq ($(OPENWRT_BUILD),1)
diff --git a/target/sdk/files/include/prepare.mk b/target/sdk/files/include/prepare.mk
new file mode 100644
index 0000000000..76bad05a02
--- /dev/null
+++ b/target/sdk/files/include/prepare.mk
@@ -0,0 +1,17 @@
+#
+# Copyright (C) 2015 OpenWrt.org
+#
+# This is free software, licensed under the GNU General Public License v2.
+# See /LICENSE for more information.
+#
+
+prepare: .git/config
+
+.git/config:
+	@( \
+		printf "Initializing SDK ... "; \
+		git init -q .; \
+		find . -mindepth 1 -maxdepth 1 -not -name feeds | xargs git add; \
+		git commit -q -m "Initial state"; \
+		echo "ok."; \
+	)
-- 
cgit v1.2.3