add a build system option for collecting all kernel debug information (including modules) in a tarball
SVN-Revision: 22327
This commit is contained in:
parent
91edb99017
commit
fd8142403e
2 changed files with 23 additions and 0 deletions
|
@ -155,6 +155,15 @@ menu "Global build settings"
|
||||||
help
|
help
|
||||||
This removes all ipkg/opkg status data files from the target directory before building the root fs
|
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"
|
comment "Kernel build options"
|
||||||
|
|
||||||
config KERNEL_DEBUG_FS
|
config KERNEL_DEBUG_FS
|
||||||
|
|
|
@ -44,6 +44,19 @@ define Download/kernel
|
||||||
MD5SUM:=$(LINUX_KERNEL_MD5SUM)
|
MD5SUM:=$(LINUX_KERNEL_MD5SUM)
|
||||||
endef
|
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
|
define BuildKernel
|
||||||
$(if $(QUILT),$(Build/Quilt))
|
$(if $(QUILT),$(Build/Quilt))
|
||||||
$(if $(LINUX_SITE),$(call Download,kernel))
|
$(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
|
$(LINUX_DIR)/.image: $(STAMP_CONFIGURED) $(if $(CONFIG_STRIP_KERNEL_EXPORTS),$(KERNEL_BUILD_DIR)/symtab.h) FORCE
|
||||||
$(Kernel/CompileImage)
|
$(Kernel/CompileImage)
|
||||||
|
$(Kernel/CollectDebug)
|
||||||
touch $$@
|
touch $$@
|
||||||
|
|
||||||
mostlyclean: FORCE
|
mostlyclean: FORCE
|
||||||
|
|
Loading…
Reference in a new issue