add a build system option for collecting all kernel debug information (including modules) in a tarball
SVN-Revision: 22327
This commit is contained in:
		| @@ -155,6 +155,15 @@ menu "Global build settings" | ||||
| 		help | ||||
| 			This removes all ipkg/opkg status data files from the target directory before building the root fs | ||||
|  | ||||
| 	config COLLECT_KERNEL_DEBUG | ||||
| 		bool | ||||
| 		prompt "Colllect kernel debug information" | ||||
| 		select KERNEL_DEBUG_INFO | ||||
| 		default n | ||||
| 		help | ||||
| 			This collects debugging symbols from the kernel and all compiled modules. | ||||
| 			Useful for release builds, so that kernel issues can be debugged offline later. | ||||
|  | ||||
| 	comment "Kernel build options" | ||||
|  | ||||
| 	config KERNEL_DEBUG_FS | ||||
|   | ||||
| @@ -44,6 +44,19 @@ define Download/kernel | ||||
|   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)) | ||||
| @@ -86,6 +99,7 @@ define BuildKernel | ||||
|  | ||||
|   $(LINUX_DIR)/.image: $(STAMP_CONFIGURED) $(if $(CONFIG_STRIP_KERNEL_EXPORTS),$(KERNEL_BUILD_DIR)/symtab.h) FORCE | ||||
| 	$(Kernel/CompileImage) | ||||
| 	$(Kernel/CollectDebug) | ||||
| 	touch $$@ | ||||
| 	 | ||||
|   mostlyclean: FORCE | ||||
|   | ||||
		Reference in New Issue
	
	Block a user
	 Felix Fietkau
					Felix Fietkau