Makefile 3.5 KB

123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103104105106107108109110111112113114
  1. # This file is part of the OpenADK project. OpenADK is copyrighted
  2. # material, please see the LICENCE file in the top-level directory.
  3. include $(ADK_TOPDIR)/rules.mk
  4. PKG_NAME:= u-boot
  5. PKG_VERSION:= 2017.01
  6. PKG_RELEASE:= 1
  7. PKG_HASH:= 6c425175f93a4bcf2ec9faf5658ef279633dbd7856a293d95bd1ff516528ecf2
  8. PKG_DESCR:= portable bootloader
  9. PKG_SECTION:= base/boot
  10. HOST_BUILDDEP:= libressl-host dtc-host
  11. PKG_BUILDDEP:= u-boot-host
  12. PKG_URL:= http://www.denx.de/wiki/U-Boot
  13. PKG_SITES:= ftp://ftp.denx.de/pub/u-boot/
  14. DISTFILES:= $(PKG_NAME)-$(PKG_VERSION).tar.bz2
  15. PKG_SYSTEM_DEPENDS:= beaglebone-black raspberry-pi raspberry-pi2 atmel-ngw100 banana-pro solidrun-imx6 solidrun-clearfog
  16. include $(ADK_TOPDIR)/mk/host.mk
  17. include $(ADK_TOPDIR)/mk/package.mk
  18. $(eval $(call HOST_template,U_BOOT,u-boot,$(PKG_VERSION)-$(PKG_RELEASE)))
  19. $(eval $(call PKG_template,U_BOOT,u-boot,$(PKG_VERSION)-$(PKG_RELEASE),$(PKG_DEPENDS),$(PKG_DESCR),$(PKG_SECTION)))
  20. UBOOT:= u-boot.bin
  21. ifeq ($(ADK_TARGET_SYSTEM_SOLIDRUN_CLEARFOG),y)
  22. CONFIG:= clearfog_defconfig
  23. UBOOT:= u-boot-spl.kwb
  24. endif
  25. ifeq ($(ADK_TARGET_SYSTEM_SOLIDRUN_IMX6),y)
  26. CONFIG:= mx6cuboxi_defconfig
  27. UBOOT:= u-boot.img
  28. endif
  29. ifeq ($(ADK_TARGET_SYSTEM_RASPBERRY_PI),y)
  30. CONFIG:= rpi_defconfig
  31. endif
  32. ifeq ($(ADK_TARGET_SYSTEM_RASPBERRY_PI2),y)
  33. CONFIG:= rpi_defconfig
  34. endif
  35. ifeq ($(ADK_TARGET_SYSTEM_ATMEL_NGW100),y)
  36. CONFIG:= atngw100_defconfig
  37. endif
  38. ifeq ($(ADK_TARGET_SYSTEM_BANANA_PRO),y)
  39. CONFIG:= Bananapro_defconfig
  40. UBOOT:= u-boot-sunxi-with-spl.bin
  41. endif
  42. ifeq ($(ADK_TARGET_SYSTEM_BEAGLEBONE_BLACK),y)
  43. CONFIG:= am335x_evm_defconfig
  44. UBOOT:= u-boot.img
  45. endif
  46. HOST_MAKE_FLAGS+= HOSTCFLAGS="$(HOST_CPPFLAGS) $(HOST_CFLAGS)" \
  47. HOSTLDFLAGS="$(HOST_LDFLAGS) -ldl"
  48. HOST_STYLE:= manual
  49. CONFIG_STYLE:= manual
  50. BUILD_STYLE:= manual
  51. INSTALL_STYLE:= manual
  52. host-build:
  53. (cd $(WRKBUILD) && env $(HOST_MAKE_ENV) $(MAKE) -f $(MAKE_FILE) \
  54. $(HOST_MAKE_FLAGS) sandbox_defconfig )
  55. (cd $(WRKBUILD) && env $(HOST_MAKE_ENV) $(MAKE) -f $(MAKE_FILE) \
  56. $(HOST_MAKE_FLAGS) tools $(MAKE_TRACE) )
  57. u-boot-hostinstall:
  58. $(INSTALL_BIN) $(WRKBUILD)/tools/mk{,env}image \
  59. $(STAGING_HOST_DIR)/usr/bin
  60. do-configure:
  61. (cd $(WRKBUILD) && $(MAKE) $(CONFIG))
  62. do-build:
  63. (cd $(WRKBUILD) && env \
  64. PATH='$(HOST_PATH)' \
  65. CROSS_COMPILE='$(TARGET_CROSS)' \
  66. GCC_HONOUR_COPTS=s $(MAKE))
  67. ifneq ($(OS_FOR_BUILD),Darwin)
  68. (cd $(WRKBUILD) && env \
  69. PATH='$(HOST_PATH)' \
  70. CROSS_COMPILE='$(TARGET_CROSS)' \
  71. GCC_HONOUR_COPTS=s $(MAKE) env)
  72. endif
  73. u-boot-install:
  74. $(CP) $(WRKBUILD)/$(UBOOT) $(FW_DIR)
  75. $(INSTALL_DIR) $(IDIR_U_BOOT)/etc
  76. $(CP) ./files/fw_env.config $(IDIR_U_BOOT)/etc
  77. ifneq ($(OS_FOR_BUILD),Darwin)
  78. $(INSTALL_DIR) $(IDIR_U_BOOT)/usr/bin
  79. $(INSTALL_BIN) $(WRKBUILD)/tools/env/fw_printenv \
  80. $(IDIR_U_BOOT)/usr/bin
  81. (cd $(IDIR_U_BOOT)/usr/bin && ln -sf fw_printenv fw_setenv)
  82. $(INSTALL_BIN) ./files/uboot_print_env $(IDIR_U_BOOT)/usr/bin
  83. $(INSTALL_BIN) ./files/uboot_set_env $(IDIR_U_BOOT)/usr/bin
  84. endif
  85. ifeq ($(ADK_TARGET_SYSTEM_BANANA_PRO),y)
  86. $(INSTALL_BIN) ./files/boot.script.bpi $(FW_DIR)
  87. endif
  88. ifeq ($(ADK_TARGET_SYSTEM_SOLIDRUN_CLEARFOG),y)
  89. $(INSTALL_BIN) ./files/boot.script.clearfog $(FW_DIR)
  90. endif
  91. ifeq ($(ADK_TARGET_SYSTEM_SOLIDRUN_IMX6),y)
  92. $(INSTALL_BIN) $(WRKBUILD)/SPL $(FW_DIR)
  93. $(INSTALL_BIN) ./files/boot.script.imx6 $(FW_DIR)
  94. endif
  95. ifeq ($(ADK_TARGET_SYSTEM_BEAGLEBONE_BLACK),y)
  96. $(CP) ./files/uEnv.txt.bbb $(FW_DIR)/uEnv.txt
  97. $(INSTALL_BIN) $(WRKBUILD)/MLO $(FW_DIR)
  98. endif
  99. include $(ADK_TOPDIR)/mk/host-bottom.mk
  100. include $(ADK_TOPDIR)/mk/pkg-bottom.mk