Makefile 1.9 KB

1234567891011121314151617181920212223242526272829303132333435363738394041424344454647484950515253545556575859606162636465666768697071
  1. #
  2. # Copyright (C) 2006 OpenWrt.org
  3. #
  4. # This is free software, licensed under the GNU General Public License v2.
  5. # See /LICENSE for more information.
  6. #
  7. include $(TOPDIR)/rules.mk
  8. KERNEL_BUILD_DIR := $(BUILD_DIR_TOOLCHAIN)
  9. BUILD_DIR := $(KERNEL_BUILD_DIR)
  10. STAGING_DIR_HOST:=$(TOOLCHAIN_DIR)
  11. BUILD_DIR_HOST:=$(BUILD_DIR_TOOLCHAIN)
  12. override QUILT:=
  13. include $(INCLUDE_DIR)/kernel.mk
  14. PKG_NAME:=linux
  15. PKG_VERSION:=$(LINUX_VERSION)
  16. PKG_SOURCE:=$(LINUX_SOURCE)
  17. PKG_SOURCE_URL:=$(LINUX_SITE)
  18. PKG_BUILD_DIR := $(KERNEL_BUILD_DIR)/linux-$(LINUX_VERSION)
  19. PKG_MD5SUM:=$(LINUX_KERNEL_MD5SUM)
  20. LINUX_DIR := $(PKG_BUILD_DIR)
  21. include $(INCLUDE_DIR)/host-build.mk
  22. include $(INCLUDE_DIR)/kernel-defaults.mk
  23. define Build/Prepare/cris
  24. mkdir -p $(BUILD_DIR_TOOLCHAIN)
  25. bzcat $(DL_DIR)/$(PKG_SOURCE) | $(HOST_TAR) -C $(BUILD_DIR_TOOLCHAIN) $(TAR_OPTIONS)
  26. $(PATCH) $(PKG_BUILD_DIR) $(TOPDIR)/target/linux/etrax/patches/generic_2.6
  27. $(PATCH) $(PKG_BUILD_DIR) $(TOPDIR)/target/linux/etrax/patches/cris
  28. ln -sf arch-v10 $(PKG_BUILD_DIR)/include/asm-cris/arch
  29. ln -sf arch-v10 $(PKG_BUILD_DIR)/arch/cris/arch
  30. endef
  31. define Build/Configure/powerpc
  32. $(CP) $(PKG_BUILD_DIR)/include/asm-ppc/* $(PKG_BUILD_DIR)/include/asm-powerpc/
  33. rm -rf $(PKG_BUILD_DIR)/include/asm-ppc
  34. ln -s $(PKG_BUILD_DIR)/include/asm-powerpc $(PKG_BUILD_DIR)/include/asm-ppc
  35. endef
  36. ifneq (,$(findstring uml,$(BOARD)))
  37. LINUX_KARCH:=$(ARCH)
  38. endif
  39. KMAKE := $(MAKE) -C $(PKG_BUILD_DIR) \
  40. ARCH=$(LINUX_KARCH) \
  41. KBUILD_HAVE_NLS=no \
  42. CONFIG_SHELL=$(BASH)
  43. define Build/Prepare
  44. $(if $(Build/Prepare/$(ARCH)),$(Build/Prepare/$(ARCH)),$(call Kernel/Prepare/Default))
  45. $(SED) 's/@expr length/@-expr length/' $(PKG_BUILD_DIR)/Makefile
  46. ln -sf linux-$(LINUX_VERSION) $(LINUX_HEADERS_DIR)
  47. yes '' | $(KMAKE) oldconfig
  48. $(KMAKE) include/linux/version.h include/asm
  49. $(call Build/Configure/$(ARCH))
  50. endef
  51. define Build/Configure
  52. endef
  53. define Build/Compile
  54. endef
  55. define Build/Install
  56. endef
  57. $(eval $(call HostBuild))