MD5SUM:=$(LINUX_KERNEL_MD5SUM)
endef
+ifdef CONFIG_COLLECT_KERNEL_DEBUG
+ define Kernel/CollectDebug
+ rm -rf $(KERNEL_BUILD_DIR)/debug
+ mkdir -p $(KERNEL_BUILD_DIR)/debug/modules
+ $(CP) $(LINUX_DIR)/vmlinux $(KERNEL_BUILD_DIR)/debug/
+ -$(CP) \
+ $(STAGING_DIR_ROOT)/lib/modules/$(LINUX_VERSION)/* \
+ $(KERNEL_BUILD_DIR)/debug/modules/
+ $(FIND) $(KERNEL_BUILD_DIR)/debug -type f | $(XARGS) $(KERNEL_CROSS)strip --only-keep-debug
+ $(TAR) c -C $(KERNEL_BUILD_DIR) debug | bzip2 -c -9 > $(BIN_DIR)/kernel-debug.tar.bz2
+ endef
+endif
+
define BuildKernel
$(if $(QUILT),$(Build/Quilt))
$(if $(LINUX_SITE),$(call Download,kernel))
$(LINUX_DIR)/.image: $(STAMP_CONFIGURED) $(if $(CONFIG_STRIP_KERNEL_EXPORTS),$(KERNEL_BUILD_DIR)/symtab.h) FORCE
$(Kernel/CompileImage)
+ $(Kernel/CollectDebug)
touch $$@
mostlyclean: FORCE
compile: $(LINUX_DIR)/.modules
$(MAKE) -C image compile TARGET_BUILD=
- oldconfig menuconfig: $(STAMP_PREPARED) $(STAMP_CHECKED) FORCE
+ oldconfig menuconfig nconfig: $(STAMP_PREPARED) $(STAMP_CHECKED) FORCE
[ -e "$(LINUX_CONFIG)" ] || touch "$(LINUX_CONFIG)"
$(LINUX_CONFCMD) > $(LINUX_DIR)/.config
touch $(LINUX_CONFIG)
$(_SINGLE)$(MAKE) -C $(LINUX_DIR) $(KERNEL_MAKEOPTS) $$@
- $(SCRIPT_DIR)/kconfig.pl '>' $(GENERIC_LINUX_CONFIG) $(LINUX_DIR)/.config > $(if $(LINUX_SUBCONFIG),$(LINUX_SUBCONFIG),$(LINUX_CONFIG))
+ $(SCRIPT_DIR)/kconfig.pl '>' $(if $(LINUX_SUBCONFIG),'+' $(GENERIC_LINUX_CONFIG) $(LINUX_CONFIG),$(GENERIC_LINUX_CONFIG)) \
+ $(LINUX_DIR)/.config > $(if $(LINUX_SUBCONFIG),$(LINUX_SUBCONFIG),$(LINUX_CONFIG))
$(Kernel/Configure)
install: $(LINUX_DIR)/.image