diff options
author | Felix Fietkau <nbd@nbd.name> | 2016-08-05 14:08:47 +0200 |
---|---|---|
committer | Felix Fietkau <nbd@nbd.name> | 2016-08-05 14:17:08 +0200 |
commit | 22ef1c83b35cd5633b0c58c9c38a43494a906a6a (patch) | |
tree | e790cae0c3ca6ed67e48d184999c3e46ae96d483 /include/kernel-build.mk | |
parent | 51e70267bd7ba886314f87317f31342f8e39f602 (diff) | |
download | upstream-22ef1c83b35cd5633b0c58c9c38a43494a906a6a.tar.gz upstream-22ef1c83b35cd5633b0c58c9c38a43494a906a6a.tar.bz2 upstream-22ef1c83b35cd5633b0c58c9c38a43494a906a6a.zip |
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>
Diffstat (limited to 'include/kernel-build.mk')
-rw-r--r-- | include/kernel-build.mk | 17 |
1 files changed, 14 insertions, 3 deletions
diff --git a/include/kernel-build.mk b/include/kernel-build.mk index a52c90d9e7..0ba6db806d 100644 --- a/include/kernel-build.mk +++ b/include/kernel-build.mk @@ -6,13 +6,14 @@ # include $(INCLUDE_DIR)/host.mk include $(INCLUDE_DIR)/prereq.mk +include $(INCLUDE_DIR)/depends.mk ifneq ($(DUMP),1) all: compile endif -export QUILT=1 -STAMP_PREPARED:=$(LINUX_DIR)/.prepared +KERNEL_FILE_DEPENDS=$(GENERIC_PATCH_DIR) $(PATCH_DIR) $(GENERIC_FILES_DIR) $(FILES_DIR) +STAMP_PREPARED=$(LINUX_DIR)/.prepared$(if $(QUILT)$(DUMP),,_$(shell $(call find_md5,$(KERNEL_FILE_DEPENDS),))) STAMP_CONFIGURED:=$(LINUX_DIR)/.configured include $(INCLUDE_DIR)/download.mk include $(INCLUDE_DIR)/quilt.mk @@ -60,12 +61,22 @@ ifdef CONFIG_COLLECT_KERNEL_DEBUG endef 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 $(if $(QUILT),$(Build/Quilt)) $(if $(LINUX_SITE),$(call Download,kernel)) .NOTPARALLEL: + $(Kernel/Autoclean) $(STAMP_PREPARED): $(if $(LINUX_SITE),$(DL_DIR)/$(LINUX_SOURCE)) -rm -rf $(KERNEL_BUILD_DIR) -mkdir -p $(KERNEL_BUILD_DIR) @@ -102,7 +113,7 @@ define BuildKernel echo; \ ) > $$@ - $(STAMP_CONFIGURED): $(STAMP_PREPARED) $(LINUX_KCONFIG_LIST) $(TOPDIR)/.config + $(STAMP_CONFIGURED): $(STAMP_PREPARED) $(LINUX_KCONFIG_LIST) $(TOPDIR)/.config FORCE $(Kernel/Configure) touch $$@ |