aboutsummaryrefslogtreecommitdiffstats
diff options
context:
space:
mode:
authorRafał Miłecki <rafal@milecki.pl>2018-12-03 09:16:23 +0100
committerRafał Miłecki <rafal@milecki.pl>2018-12-03 09:34:57 +0100
commit966ba6daa430922e41ca7598385817f5a611c9c7 (patch)
tree786efbdd6acfe24072dd8f0fcd53e0a44870d8c1
parent73127a878dca3da42c35400e2c63a24a2d664088 (diff)
downloadupstream-966ba6daa430922e41ca7598385817f5a611c9c7.tar.gz
upstream-966ba6daa430922e41ca7598385817f5a611c9c7.tar.bz2
upstream-966ba6daa430922e41ca7598385817f5a611c9c7.zip
kernel: fix downloading rcX releases
They are no longer stored in the "testing" subdirectory and are not available as .tar.xz archives. If -rc is detected download it from the git.kernel.org and use .tar.gz. Signed-off-by: Rafał Miłecki <rafal@milecki.pl>
-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))