Fix kernel headers for cris (thanks hinkocevar)
authorClaudio Mignanti <c.mignanti@gmail.com>
Wed, 8 Apr 2009 14:13:50 +0000 (14:13 +0000)
committerClaudio Mignanti <c.mignanti@gmail.com>
Wed, 8 Apr 2009 14:13:50 +0000 (14:13 +0000)
SVN-Revision: 15153

target/linux/generic-2.6/patches-2.6.28/985-cris-headers.patch [new file with mode: 0644]
toolchain/kernel-headers/Makefile

diff --git a/target/linux/generic-2.6/patches-2.6.28/985-cris-headers.patch b/target/linux/generic-2.6/patches-2.6.28/985-cris-headers.patch
new file mode 100644 (file)
index 0000000..3baa4ca
--- /dev/null
@@ -0,0 +1,29 @@
+diff -urN linux-2.6.28.clean/arch/cris/include/arch-v10/arch/Kbuild linux-2.6.28.mod/arch/cris/include/arch-v10/arch/Kbuild
+--- linux-2.6.28.clean/arch/cris/include/arch-v10/arch/Kbuild  2008-12-25 00:26:37.000000000 +0100
++++ linux-2.6.28.mod/arch/cris/include/arch-v10/arch/Kbuild    2009-04-07 09:39:12.000000000 +0200
+@@ -1,3 +1,5 @@
++header-y += elf.h
++header-y += ptrace.h
+ header-y += user.h
+ header-y += svinto.h
+ header-y += sv_addr_ag.h
+diff -urN linux-2.6.28.clean/arch/cris/include/asm/Kbuild linux-2.6.28.mod/arch/cris/include/asm/Kbuild
+--- linux-2.6.28.clean/arch/cris/include/asm/Kbuild    2008-12-25 00:26:37.000000000 +0100
++++ linux-2.6.28.mod/arch/cris/include/asm/Kbuild      2009-04-07 10:53:34.000000000 +0200
+@@ -1,11 +1,14 @@
+ include include/asm-generic/Kbuild.asm
+-header-y += arch-v10/
+-header-y += arch-v32/
++header-y += ../arch-v10/arch/
++header-y += ../arch-v32/arch/
++header-y += elf.h
+ header-y += ethernet.h
++header-y += page.h
+ header-y += rtc.h
+ header-y += sync_serial.h
++header-y += user.h
+ unifdef-y += etraxgpio.h
+ unifdef-y += rs485.h
index 37f87dd..47737b0 100644 (file)
@@ -38,11 +38,6 @@ KMAKE := $(MAKE) -C $(HOST_BUILD_DIR) \
        KBUILD_HAVE_NLS=no \
        CONFIG_SHELL=$(BASH)
 
-define Host/Prepare/pre/cris
-       ln -sf $(HOST_BUILD_DIR)/include/asm-cris/arch-v10 $(HOST_BUILD_DIR)/include/asm-cris/arch
-       ln -sf $(HOST_BUILD_DIR)/include/asm-cris/arch-v10 $(HOST_BUILD_DIR)/arch/cris/arch
-endef
-
 define Host/Prepare/pre/powerpc
        if [ -d $(HOST_BUILD_DIR)/include/asm-ppc ]; then \
                mkdir -p $(PKG_BUILD_DIR)/include/asm-powerpc/; \
@@ -79,7 +74,16 @@ define Host/Prepare/lzma
 endef
 
 # XXX: the following are needed to build a cris toolchain
-define Host/Prepare/post/cris
+ifeq ($(strip $(call CompareKernelPatchVer,$(KERNEL_PATCHVER),lt,2.6.28)),1)
+  define Host/Prepare/pre/cris
+       ln -sf $(HOST_BUILD_DIR)/include/asm-cris/arch-v10 $(HOST_BUILD_DIR)/include/asm-cris/arch
+       ln -sf $(HOST_BUILD_DIR)/include/asm-cris/arch-v10 $(HOST_BUILD_DIR)/arch/cris/arch
+  endef
+
+  define Host/Prepare/post/cris
+       $(CP) \
+               $(HOST_BUILD_DIR)/include/linux/user.h \
+               $(BUILD_DIR_TOOLCHAIN)/linux-dev/usr/include/linux/
        $(CP) \
                $(HOST_BUILD_DIR)/include/linux/user.h \
                $(BUILD_DIR_TOOLCHAIN)/linux-dev/usr/include/linux/
@@ -88,6 +92,11 @@ define Host/Prepare/post/cris
                $(HOST_BUILD_DIR)/include/asm-cris/page.h \
                $(HOST_BUILD_DIR)/include/asm-cris/user.h \
                $(BUILD_DIR_TOOLCHAIN)/linux-dev/usr/include/asm/
+       $(CP) \
+               $(HOST_BUILD_DIR)/include/asm-generic/memory_model.h \
+               $(HOST_BUILD_DIR)/include/asm-generic/page.h \
+               $(BUILD_DIR_TOOLCHAIN)/linux-dev/usr/include/asm-generic/
+
        mkdir -p $(BUILD_DIR_TOOLCHAIN)/linux-dev/usr/include/asm/arch
        $(CP) \
                $(HOST_BUILD_DIR)/include/asm-cris/arch/elf.h \
@@ -95,11 +104,17 @@ define Host/Prepare/post/cris
                $(HOST_BUILD_DIR)/include/asm-cris/arch/ptrace.h \
                $(HOST_BUILD_DIR)/include/asm-cris/arch/user.h \
                $(BUILD_DIR_TOOLCHAIN)/linux-dev/usr/include/asm/arch/
+  endef
+else
+  define Host/Prepare/post/cris
        $(CP) \
-               $(HOST_BUILD_DIR)/include/asm-generic/memory_model.h \
-               $(HOST_BUILD_DIR)/include/asm-generic/page.h \
-               $(BUILD_DIR_TOOLCHAIN)/linux-dev/usr/include/asm-generic/
-endef
+               $(HOST_BUILD_DIR)/include/linux/user.h \
+               $(BUILD_DIR_TOOLCHAIN)/linux-dev/usr/include/linux/
+       ln -snf $(BUILD_DIR_TOOLCHAIN)/linux-dev/usr/include/arch-v10/arch \
+               $(BUILD_DIR_TOOLCHAIN)/linux-dev/usr/include/arch
+       $(SED) '/#include <asm\/page\.h>/d' $(BUILD_DIR_TOOLCHAIN)/linux-dev/usr/include/asm/user.h
+  endef
+endif
 
 define Host/Prepare/post/mips
        $(call Host/Prepare/lzma)