include: Clean-up kernel git command options management
authorJohn Crispin <john@openwrt.org>
Mon, 2 Jun 2014 12:45:19 +0000 (12:45 +0000)
committerJohn Crispin <john@openwrt.org>
Mon, 2 Jun 2014 12:45:19 +0000 (12:45 +0000)
The way git options are managed in kernel-defaults.mk makes additions

difficult. If requires different code path for each option; it's
ok so far as we handle only one option, but if we want to make the git
clone mechanism more flexible, more option will be required, which
will become tedious.

So; we'll move the GIT options into a variable, that may or may not be
set depending on the configuration, and we'll pass this variable to the
git command.

Signed-off-by: Mathieu Olivari <mathieu@qca.qualcomm.com>
SVN-Revision: 40945

include/kernel-defaults.mk

index 499ecdf3d80bb6bd0e69f6814ad635e8469a3faf..fd75a3f79ffe542854a691e0a52629d3da7f3f88 100644 (file)
@@ -32,6 +32,12 @@ export HOST_EXTRACFLAGS=-I$(STAGING_DIR_HOST)/include
 
 # defined in quilt.mk
 Kernel/Patch:=$(Kernel/Patch/Default)
+
+KERNEL_GIT_OPTS:=
+ifneq ($(strip $(CONFIG_KERNEL_GIT_LOCAL_REPOSITORY)),"")
+  KERNEL_GIT_OPTS+=--reference $(CONFIG_KERNEL_GIT_LOCAL_REPOSITORY)
+endif
+
 ifeq ($(strip $(CONFIG_EXTERNAL_KERNEL_TREE)),"")
   ifeq ($(strip $(CONFIG_KERNEL_GIT_CLONE_URI)),"")
     define Kernel/Prepare/Default
@@ -41,7 +47,7 @@ ifeq ($(strip $(CONFIG_EXTERNAL_KERNEL_TREE)),"")
     endef
   else
     define Kernel/Prepare/Default
-       git clone $(CONFIG_KERNEL_GIT_CLONE_URI) $(LINUX_DIR)
+       git clone $(KERNEL_GIT_OPTS) $(CONFIG_KERNEL_GIT_CLONE_URI) $(LINUX_DIR)
     endef
   endif
 else