kernel: make the kernel build auto-clean the build dir like package builds
Previous behavior can be restored by using QUILT=1 on target/prepare Signed-off-by: Felix Fietkau <nbd@nbd.name>
This commit is contained in:
		| @@ -6,13 +6,14 @@ | |||||||
| # | # | ||||||
| include $(INCLUDE_DIR)/host.mk | include $(INCLUDE_DIR)/host.mk | ||||||
| include $(INCLUDE_DIR)/prereq.mk | include $(INCLUDE_DIR)/prereq.mk | ||||||
|  | include $(INCLUDE_DIR)/depends.mk | ||||||
|  |  | ||||||
| ifneq ($(DUMP),1) | ifneq ($(DUMP),1) | ||||||
|   all: compile |   all: compile | ||||||
| endif | endif | ||||||
|  |  | ||||||
| export QUILT=1 | KERNEL_FILE_DEPENDS=$(GENERIC_PATCH_DIR) $(PATCH_DIR) $(GENERIC_FILES_DIR) $(FILES_DIR) | ||||||
| STAMP_PREPARED:=$(LINUX_DIR)/.prepared | STAMP_PREPARED=$(LINUX_DIR)/.prepared$(if $(QUILT)$(DUMP),,_$(shell $(call find_md5,$(KERNEL_FILE_DEPENDS),))) | ||||||
| STAMP_CONFIGURED:=$(LINUX_DIR)/.configured | STAMP_CONFIGURED:=$(LINUX_DIR)/.configured | ||||||
| include $(INCLUDE_DIR)/download.mk | include $(INCLUDE_DIR)/download.mk | ||||||
| include $(INCLUDE_DIR)/quilt.mk | include $(INCLUDE_DIR)/quilt.mk | ||||||
| @@ -60,12 +61,22 @@ ifdef CONFIG_COLLECT_KERNEL_DEBUG | |||||||
|   endef |   endef | ||||||
| endif | endif | ||||||
|  |  | ||||||
|  | ifeq ($(DUMP)$(filter prereq clean refresh update,$(MAKECMDGOALS)),) | ||||||
|  |   ifneq ($(if $(QUILT),,$(CONFIG_AUTOREBUILD)),) | ||||||
|  |     define Kernel/Autoclean | ||||||
|  |       $(PKG_BUILD_DIR)/.dep_files: $(STAMP_PREPARED) | ||||||
|  |       $(call rdep,${CURDIR} $(PKG_FILE_DEPENDS),$(STAMP_PREPARED),$(PKG_BUILD_DIR)/.dep_files,-x "*/.dep_*") | ||||||
|  |     endef | ||||||
|  |   endif | ||||||
|  | endif | ||||||
|  |  | ||||||
| define BuildKernel | define BuildKernel | ||||||
|   $(if $(QUILT),$(Build/Quilt)) |   $(if $(QUILT),$(Build/Quilt)) | ||||||
|   $(if $(LINUX_SITE),$(call Download,kernel)) |   $(if $(LINUX_SITE),$(call Download,kernel)) | ||||||
|  |  | ||||||
|   .NOTPARALLEL: |   .NOTPARALLEL: | ||||||
|  |  | ||||||
|  |   $(Kernel/Autoclean) | ||||||
|   $(STAMP_PREPARED): $(if $(LINUX_SITE),$(DL_DIR)/$(LINUX_SOURCE)) |   $(STAMP_PREPARED): $(if $(LINUX_SITE),$(DL_DIR)/$(LINUX_SOURCE)) | ||||||
| 	-rm -rf $(KERNEL_BUILD_DIR) | 	-rm -rf $(KERNEL_BUILD_DIR) | ||||||
| 	-mkdir -p $(KERNEL_BUILD_DIR) | 	-mkdir -p $(KERNEL_BUILD_DIR) | ||||||
| @@ -102,7 +113,7 @@ define BuildKernel | |||||||
| 		echo; \ | 		echo; \ | ||||||
| 	) > $$@ | 	) > $$@ | ||||||
|  |  | ||||||
|   $(STAMP_CONFIGURED): $(STAMP_PREPARED) $(LINUX_KCONFIG_LIST) $(TOPDIR)/.config |   $(STAMP_CONFIGURED): $(STAMP_PREPARED) $(LINUX_KCONFIG_LIST) $(TOPDIR)/.config FORCE | ||||||
| 	$(Kernel/Configure) | 	$(Kernel/Configure) | ||||||
| 	touch $$@ | 	touch $$@ | ||||||
|  |  | ||||||
|   | |||||||
| @@ -50,7 +50,7 @@ ifeq ($(strip $(CONFIG_EXTERNAL_KERNEL_TREE)),"") | |||||||
|     define Kernel/Prepare/Default |     define Kernel/Prepare/Default | ||||||
| 	xzcat $(DL_DIR)/$(LINUX_SOURCE) | $(TAR) -C $(KERNEL_BUILD_DIR) $(TAR_OPTIONS) | 	xzcat $(DL_DIR)/$(LINUX_SOURCE) | $(TAR) -C $(KERNEL_BUILD_DIR) $(TAR_OPTIONS) | ||||||
| 	$(Kernel/Patch) | 	$(Kernel/Patch) | ||||||
| 	touch $(LINUX_DIR)/.quilt_used | 	$(if $(QUILT),touch $(LINUX_DIR)/.quilt_used) | ||||||
|     endef |     endef | ||||||
|   else |   else | ||||||
|     define Kernel/Prepare/Default |     define Kernel/Prepare/Default | ||||||
|   | |||||||
| @@ -30,8 +30,8 @@ else | |||||||
|   endif |   endif | ||||||
|  |  | ||||||
|   ifeq ($(TARGET_BUILD),1) |   ifeq ($(TARGET_BUILD),1) | ||||||
|     PATCH_DIR ?= ./patches$(if $(wildcard ./patches-$(KERNEL_PATCHVER)),-$(KERNEL_PATCHVER)) |     PATCH_DIR ?= $(CURDIR)/patches$(if $(wildcard ./patches-$(KERNEL_PATCHVER)),-$(KERNEL_PATCHVER)) | ||||||
|     FILES_DIR ?= $(foreach dir,$(wildcard ./files ./files-$(KERNEL_PATCHVER)),"$(dir)") |     FILES_DIR ?= $(foreach dir,$(wildcard $(CURDIR)/files $(CURDIR)/files-$(KERNEL_PATCHVER)),"$(dir)") | ||||||
|   endif |   endif | ||||||
|   KERNEL_BUILD_DIR ?= $(BUILD_DIR)/linux-$(BOARD)$(if $(SUBTARGET),_$(SUBTARGET)) |   KERNEL_BUILD_DIR ?= $(BUILD_DIR)/linux-$(BOARD)$(if $(SUBTARGET),_$(SUBTARGET)) | ||||||
|   LINUX_DIR ?= $(KERNEL_BUILD_DIR)/linux-$(LINUX_VERSION) |   LINUX_DIR ?= $(KERNEL_BUILD_DIR)/linux-$(LINUX_VERSION) | ||||||
|   | |||||||
| @@ -91,7 +91,7 @@ endef | |||||||
|  |  | ||||||
| kernel_files=$(foreach fdir,$(GENERIC_FILES_DIR) $(FILES_DIR),$(fdir)/.) | kernel_files=$(foreach fdir,$(GENERIC_FILES_DIR) $(FILES_DIR),$(fdir)/.) | ||||||
| define Kernel/Patch/Default | define Kernel/Patch/Default | ||||||
| 	rm -rf $(PKG_BUILD_DIR)/patches; mkdir -p $(PKG_BUILD_DIR)/patches | 	$(if $(QUILT),rm -rf $(PKG_BUILD_DIR)/patches; mkdir -p $(PKG_BUILD_DIR)/patches) | ||||||
| 	$(if $(kernel_files),$(CP) $(kernel_files) $(LINUX_DIR)/) | 	$(if $(kernel_files),$(CP) $(kernel_files) $(LINUX_DIR)/) | ||||||
| 	find $(LINUX_DIR)/ -name \*.rej -or -name \*.orig | $(XARGS) rm -f | 	find $(LINUX_DIR)/ -name \*.rej -or -name \*.orig | $(XARGS) rm -f | ||||||
| 	$(call PatchDir,$(PKG_BUILD_DIR),$(GENERIC_PATCH_DIR),generic/) | 	$(call PatchDir,$(PKG_BUILD_DIR),$(GENERIC_PATCH_DIR),generic/) | ||||||
|   | |||||||
		Reference in New Issue
	
	Block a user
	 Felix Fietkau
					Felix Fietkau