|
@@ -294,6 +294,7 @@ TOOLCHAIN_EXTERNAL_SOURCE = mips-2013.11-36-mips-linux-gnu-i686-pc-linux-gnu.tar
|
|
|
else ifeq ($(BR2_TOOLCHAIN_EXTERNAL_CODESOURCERY_NIOSII201305),y)
|
|
|
TOOLCHAIN_EXTERNAL_SITE = http://sourcery.mentor.com/public/gnu_toolchain/nios2-linux-gnu/
|
|
|
TOOLCHAIN_EXTERNAL_SOURCE = sourceryg++-2013.05-43-nios2-linux-gnu-i686-pc-linux-gnu.tar.bz2
|
|
|
+TOOLCHAIN_EXTERNAL_POST_INSTALL_STAGING_HOOKS += TOOLCHAIN_EXTERNAL_SANITIZE_KERNEL_HEADERS
|
|
|
else ifeq ($(BR2_TOOLCHAIN_EXTERNAL_CODESOURCERY_POWERPC201009),y)
|
|
|
TOOLCHAIN_EXTERNAL_SITE = http://sourcery.mentor.com/public/gnu_toolchain/powerpc-linux-gnu/
|
|
|
TOOLCHAIN_EXTERNAL_SOURCE = freescale-2010.09-55-powerpc-linux-gnu-i686-pc-linux-gnu.tar.bz2
|
|
@@ -630,6 +631,18 @@ define TOOLCHAIN_EXTERNAL_INSTALL_WRAPPER
|
|
|
-o $(HOST_DIR)/usr/bin/ext-toolchain-wrapper
|
|
|
endef
|
|
|
|
|
|
+# This sed magic is taken from Linux headers_install.sh script.
|
|
|
+define TOOLCHAIN_EXTERNAL_SANITIZE_KERNEL_HEADERS
|
|
|
+ $(Q)$(call MESSAGE,"Sanitizing kernel headers");
|
|
|
+ find $(STAGING_DIR)/usr/include/linux/ -name "*.h" | xargs sed -r -i \
|
|
|
+ -e 's/([ \t(])(__user|__force|__iomem)[ \t]/\1/g' \
|
|
|
+ -e 's/__attribute_const__([ \t]|$$)/\1/g' \
|
|
|
+ -e 's@^#include <linux/compiler.h>@@' \
|
|
|
+ -e 's/(^|[^a-zA-Z0-9])__packed([^a-zA-Z0-9_]|$$)/\1__attribute__((packed))\2/g' \
|
|
|
+ -e 's/(^|[ \t(])(inline|asm|volatile)([ \t(]|$$)/\1__\2__\3/g' \
|
|
|
+ -e 's@#(ifndef|define|endif[ \t]*/[*])[ \t]*_UAPI@#\1 @'
|
|
|
+endef
|
|
|
+
|
|
|
# Even though we're installing things in both the staging, the host
|
|
|
# and the target directory, we do everything within the
|
|
|
# install-staging step, arbitrarily.
|