fix kernel-headers patching (#1878)
[openwrt/openwrt.git] / toolchain / kernel-headers / Makefile
index f95c8b95a92dd2465afaf66847f7b56ab5f828d4..57887ad1821135e08cd1c4b034ade701f4e06ca7 100644 (file)
@@ -15,16 +15,35 @@ PKG_SOURCE_URL=$(LINUX_SITE)
 
 PKG_BUILD_DIR:=$(TOOLCHAIN_BUILD_DIR)/linux-$(PKG_VERSION)
 
+LINUX_DIR:=$(PKG_BUILD_DIR)
+KERNEL_BUILD_DIR:=$(TOOLCHAIN_BUILD_DIR)
 include $(INCLUDE_DIR)/host-build.mk
+include $(INCLUDE_DIR)/kernel-defaults.mk
 
-define Build/Prepare
+
+define Build/Prepare/cris
        mkdir -p $(TOOLCHAIN_BUILD_DIR)
        bzcat $(DL_DIR)/$(PKG_SOURCE) | $(HOST_TAR) -C $(TOOLCHAIN_BUILD_DIR) $(TAR_OPTIONS)
-       $(PATCH) $(PKG_BUILD_DIR) $(TOPDIR)/target/linux/generic-$(KERNEL)/patches
+       $(PATCH) $(PKG_BUILD_DIR) $(TOPDIR)/target/linux/etrax-2.6/patches/generic_2.6
+       $(PATCH) $(PKG_BUILD_DIR) $(TOPDIR)/target/linux/etrax-2.6/patches/cris
+       ln -sf $(PKG_BUILD_DIR)/include/asm-cris/arch-v10 $(PKG_BUILD_DIR)/include/asm-cris/arch
+       ln -sf $(PKG_BUILD_DIR)/arch/cris/arch-v10 $(PKG_BUILD_DIR)/arch/cris/arch
        $(SED) 's/@expr length/@-expr length/' $(PKG_BUILD_DIR)/Makefile
        ln -sf $(PKG_BUILD_DIR) $(LINUX_HEADERS_DIR)
 endef
 
+ifdef Build/Prepare/$(ARCH)
+define Build/Prepare
+       $(call Build/Prepare/$(ARCH))
+endef
+else
+define Build/Prepare
+       $(call Kernel/Prepare/Default)
+       $(SED) 's/@expr length/@-expr length/' $(PKG_BUILD_DIR)/Makefile
+       ln -sf $(PKG_BUILD_DIR) $(LINUX_HEADERS_DIR)
+endef
+endif
+
 define Build/Configure/powerpc
        $(CP) $(PKG_BUILD_DIR)/include/asm-ppc/* $(PKG_BUILD_DIR)/include/asm-powerpc/
        rm -rf $(PKG_BUILD_DIR)/include/asm-ppc
@@ -32,15 +51,13 @@ define Build/Configure/powerpc
 endef
 
 ifneq (,$(findstring uml,$(BOARD)))
-  KMAKE := $(MAKE) -C $(PKG_BUILD_DIR) \
-               ARCH=i386 \
-               CONFIG_SHELL=$(BASH)
-else
-  KMAKE := $(MAKE) -C $(PKG_BUILD_DIR) \
-               ARCH=$(LINUX_KARCH) \
-               CONFIG_SHELL=$(BASH)
+  LINUX_KARCH:=$(ARCH)
 endif
 
+KMAKE := $(MAKE) -C $(PKG_BUILD_DIR) \
+       ARCH=$(LINUX_KARCH) \
+       CONFIG_SHELL=$(BASH)
+
 define Build/Configure
        yes '' | $(KMAKE) oldconfig
        $(KMAKE) include/linux/version.h include/asm