aboutsummaryrefslogtreecommitdiffstats
diff options
context:
space:
mode:
-rw-r--r--include/kernel-defaults.mk10
-rw-r--r--include/kernel.mk11
2 files changed, 17 insertions, 4 deletions
diff --git a/include/kernel-defaults.mk b/include/kernel-defaults.mk
index 5e905a2faa..cc1e2361be 100644
--- a/include/kernel-defaults.mk
+++ b/include/kernel-defaults.mk
@@ -21,16 +21,22 @@ export HOST_EXTRACFLAGS=-I$(STAGING_DIR_HOST)/include
# defined in quilt.mk
Kernel/Patch:=$(Kernel/Patch/Default)
+ifneq (,$(findstring .xz,$(LINUX_SOURCE)))
+ LINUX_CAT:=xzcat
+else
+ LINUX_CAT:=zcat
+endif
+
ifeq ($(strip $(CONFIG_EXTERNAL_KERNEL_TREE)),"")
ifeq ($(strip $(CONFIG_KERNEL_GIT_CLONE_URI)),"")
define Kernel/Prepare/Default
- xzcat $(DL_DIR)/$(LINUX_SOURCE) | $(TAR) -C $(KERNEL_BUILD_DIR) $(TAR_OPTIONS)
+ $(LINUX_CAT) $(DL_DIR)/$(LINUX_SOURCE) | $(TAR) -C $(KERNEL_BUILD_DIR) $(TAR_OPTIONS)
$(Kernel/Patch)
$(if $(QUILT),touch $(LINUX_DIR)/.quilt_used)
endef
else
define Kernel/Prepare/Default
- xzcat $(DL_DIR)/$(LINUX_SOURCE) | $(TAR) -C $(KERNEL_BUILD_DIR) $(TAR_OPTIONS)
+ $(LINUX_CAT) $(DL_DIR)/$(LINUX_SOURCE) | $(TAR) -C $(KERNEL_BUILD_DIR) $(TAR_OPTIONS)
endef
endif
else
diff --git a/include/kernel.mk b/include/kernel.mk
index 62a8e99e2d..38613756c7 100644
--- a/include/kernel.mk
+++ b/include/kernel.mk
@@ -59,8 +59,15 @@ else
LINUX_KERNEL:=$(KERNEL_BUILD_DIR)/vmlinux
- LINUX_SOURCE:=linux-$(LINUX_VERSION).tar.xz
- ifeq ($(call qstrip,$(CONFIG_EXTERNAL_KERNEL_TREE))$(call qstrip,$(CONFIG_KERNEL_GIT_CLONE_URI)),)
+ ifneq (,$(findstring -rc,$(LINUX_VERSION)))
+ LINUX_SOURCE:=linux-$(LINUX_VERSION).tar.gz
+ else
+ LINUX_SOURCE:=linux-$(LINUX_VERSION).tar.xz
+ endif
+
+ ifneq (,$(findstring -rc,$(LINUX_VERSION)))
+ LINUX_SITE:=https://git.kernel.org/torvalds/t
+ else ifeq ($(call qstrip,$(CONFIG_EXTERNAL_KERNEL_TREE))$(call qstrip,$(CONFIG_KERNEL_GIT_CLONE_URI)),)
LINUX_SITE:=@KERNEL/linux/kernel/v$(word 1,$(subst ., ,$(KERNEL_BASE))).x
else
LINUX_UNAME_VERSION:=$(strip $(shell cat $(LINUX_DIR)/include/config/kernel.release 2>/dev/null))