From 9a08c0ba807b7e362de5afe78140f3bb4188746c Mon Sep 17 00:00:00 2001 From: Florian Fainelli Date: Wed, 9 Nov 2016 09:34:18 -0800 Subject: include/kernel: Switch to git download method Utilize the existing git download logic from include/download.mk and migrate the kernel download over to it. This avoids repeatedly cloning kernel sources after a make target/linux/clean for instance. Signed-off-by: Florian Fainelli Signed-off-by: Felix Fietkau [fix build error] --- include/kernel-build.mk | 19 +++++++++++++++++++ 1 file changed, 19 insertions(+) (limited to 'include/kernel-build.mk') diff --git a/include/kernel-build.mk b/include/kernel-build.mk index 04878f8..062c458 100644 --- a/include/kernel-build.mk +++ b/include/kernel-build.mk @@ -46,6 +46,24 @@ define Download/kernel MD5SUM:=$(LINUX_KERNEL_MD5SUM) endef +KERNEL_GIT_OPTS:= +ifneq ($(strip $(CONFIG_KERNEL_GIT_LOCAL_REPOSITORY)),"") + KERNEL_GIT_OPTS+=--reference $(CONFIG_KERNEL_GIT_LOCAL_REPOSITORY) +endif + +ifneq ($(strip $(CONFIG_KERNEL_GIT_BRANCH)),"") + KERNEL_GIT_OPTS+=--branch $(CONFIG_KERNEL_GIT_BRANCH) +endif + +define Download/git-kernel + URL:=$(call qstrip,$(CONFIG_KERNEL_GIT_CLONE_URI)) + PROTO:=git + VERSION:=$(CONFIG_KERNEL_GIT_BRANCH) + FILE:=$(LINUX_SOURCE) + SUBDIR:=linux-$(KERNEL_PATCHVER) + OPTS:=$(KERNEL_GIT_OPTS) +endef + ifdef CONFIG_COLLECT_KERNEL_DEBUG define Kernel/CollectDebug rm -rf $(KERNEL_BUILD_DIR)/debug @@ -73,6 +91,7 @@ endif define BuildKernel $(if $(QUILT),$(Build/Quilt)) $(if $(LINUX_SITE),$(call Download,kernel)) + $(if $(call qstrip,$(CONFIG_KERNEL_GIT_CLONE_URI)),$(call Download,git-kernel)) .NOTPARALLEL: -- cgit v1.1