add an optional config option for stripping all unnecessary symbol exports from the...
[openwrt/staging/florian.git] / include / kernel-defaults.mk
index de07b9118937a258d9aee19170f3e6cfa12a508e..0ba1e056a69a30c5c626e66d6e66d6190aeaac8b 100644 (file)
@@ -22,6 +22,11 @@ KERNEL_MAKEOPTS := -C $(LINUX_DIR) \
        KBUILD_HAVE_NLS=no \
        CONFIG_SHELL="$(BASH)"
 
+ifdef CONFIG_STRIP_KERNEL_EXPORTS
+  KERNEL_MAKEOPTS += \
+       EXTRA_LDSFLAGS="-I$(KERNEL_BUILD_DIR) -include symtab.h"
+endif
+
 INITRAMFS_EXTRA_FILES ?= $(GENERIC_PLATFORM_DIR)/image/initramfs-base-files.txt
 
 ifneq (,$(KERNEL_CC))
@@ -66,6 +71,8 @@ ifeq ($(KERNEL),2.6)
                echo 'CONFIG_INITRAMFS_SOURCE="$(strip $(TARGET_DIR) $(INITRAMFS_EXTRA_FILES))"' >> $(LINUX_DIR)/.config
                echo 'CONFIG_INITRAMFS_ROOT_UID=$(shell id -u)' >> $(LINUX_DIR)/.config
                echo 'CONFIG_INITRAMFS_ROOT_GID=$(shell id -g)' >> $(LINUX_DIR)/.config
+               echo 'CONFIG_INITRAMFS_COMPRESSION_NONE=y' >> $(LINUX_DIR)/.config
+               echo '# CONFIG_INITRAMFS_COMPRESSION_LZMA is not set' >> $(LINUX_DIR)/.config
     endef
   else
     define Kernel/SetInitramfs
@@ -105,7 +112,7 @@ define Kernel/CompileModules/Default
        +$(MAKE) $(KERNEL_MAKEOPTS) modules
 endef
 
-OBJCOPY_STRIP = -R .reginfo -R .note -R .comment -R .mdebug -R .note.gnu.build-id
+OBJCOPY_STRIP = -R .reginfo -R .notes -R .note -R .comment -R .mdebug -R .note.gnu.build-id
 
 define Kernel/CompileImage/Default
        $(if $(CONFIG_TARGET_ROOTFS_INITRAMFS),,rm -f $(TARGET_DIR)/init)