Makefile 4.4 KB

123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103104105106107108109110111112113114115116117118119120121122123124125126127128129130131132133134135136137138139140141142143144145
  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:= 2021.10
  6. PKG_RELEASE:= 1
  7. PKG_HASH:= cde723e19262e646f2670d25e5ec4b1b368490de950d4e26275a988c36df0bd4
  8. PKG_DESCR:= portable bootloader
  9. PKG_SECTION:= base/boot
  10. HOST_BUILDDEP:= libressl-host dtc-host
  11. PKG_BUILDDEP:= python3-host swig-host 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 orange-pi0 raspberry-pi raspberry-pi2 raspberry-pi3 banana-pro solidrun-imx6 solidrun-clearfog raspberry-pi3-64 raspberry-pi3p raspberry-pi3p-64 phytec-imx6 pcduino-3b imgtec-ci20
  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_PHYTEC_IMX6),y)
  26. CONFIG:= pcm058_defconfig
  27. UBOOT:= u-boot.img
  28. endif
  29. ifeq ($(ADK_TARGET_SYSTEM_SOLIDRUN_IMX6),y)
  30. CONFIG:= mx6cuboxi_defconfig
  31. UBOOT:= u-boot.img
  32. endif
  33. ifeq ($(ADK_TARGET_SYSTEM_PCDUINO_3B),y)
  34. CONFIG:= Linksprite_pcDuino3_defconfig
  35. endif
  36. ifeq ($(ADK_TARGET_SYSTEM_RASPBERRY_PI),y)
  37. CONFIG:= rpi_defconfig
  38. endif
  39. ifeq ($(ADK_TARGET_SYSTEM_RASPBERRY_PI2),y)
  40. CONFIG:= rpi_defconfig
  41. endif
  42. ifeq ($(ADK_TARGET_SYSTEM_RASPBERRY_PI3),y)
  43. CONFIG:= rpi_3_32b_defconfig
  44. endif
  45. ifeq ($(ADK_TARGET_SYSTEM_RASPBERRY_PI3P),y)
  46. CONFIG:= rpi_3_32b_defconfig
  47. endif
  48. ifeq ($(ADK_TARGET_SYSTEM_RASPBERRY_PI3_64),y)
  49. CONFIG:= rpi_3_defconfig
  50. endif
  51. ifeq ($(ADK_TARGET_SYSTEM_RASPBERRY_PI3P_64),y)
  52. CONFIG:= rpi_3_defconfig
  53. endif
  54. ifeq ($(ADK_TARGET_SYSTEM_BANANA_PRO),y)
  55. CONFIG:= Bananapro_defconfig
  56. UBOOT:= u-boot-sunxi-with-spl.bin
  57. endif
  58. ifeq ($(ADK_TARGET_SYSTEM_ORANGE_PI0),y)
  59. CONFIG:= orangepi_zero_defconfig
  60. UBOOT:= u-boot-sunxi-with-spl.bin
  61. endif
  62. ifeq ($(ADK_TARGET_SYSTEM_BEAGLEBONE_BLACK),y)
  63. CONFIG:= am335x_evm_defconfig
  64. UBOOT:= u-boot.img
  65. endif
  66. ifeq ($(ADK_TARGET_SYSTEM_IMGTEC_CI20),y)
  67. CONFIG:= ci20_mmc_defconfig
  68. UBOOT:= u-boot-dtb.img
  69. endif
  70. HOST_MAKE_FLAGS+= HOSTCFLAGS="$(HOST_CPPFLAGS) $(HOST_CFLAGS)" \
  71. HOSTLDFLAGS="$(HOST_LDFLAGS) -ldl"
  72. HOST_STYLE:= manual
  73. CONFIG_STYLE:= manual
  74. BUILD_STYLE:= manual
  75. INSTALL_STYLE:= manual
  76. host-build:
  77. (cd $(WRKBUILD) && env $(HOST_MAKE_ENV) $(MAKE) -f $(MAKE_FILE) \
  78. $(HOST_MAKE_FLAGS) sandbox_defconfig )
  79. (cd $(WRKBUILD) && env $(HOST_MAKE_ENV) $(MAKE) -f $(MAKE_FILE) \
  80. $(HOST_MAKE_FLAGS) tools $(MAKE_TRACE) )
  81. u-boot-hostinstall:
  82. $(INSTALL_BIN) $(WRKBUILD)/tools/mk{,env}image \
  83. $(STAGING_HOST_DIR)/usr/bin
  84. do-configure:
  85. (cd $(WRKBUILD) && $(MAKE) $(CONFIG))
  86. do-build:
  87. (cd $(WRKBUILD) && env \
  88. PATH='$(HOST_PATH)' \
  89. CROSS_COMPILE='$(TARGET_CROSS)' \
  90. $(MAKE))
  91. ifneq ($(OS_FOR_BUILD),Darwin)
  92. (cd $(WRKBUILD) && env \
  93. PATH='$(HOST_PATH)' \
  94. CROSS_COMPILE='$(TARGET_CROSS)' \
  95. $(MAKE) env)
  96. endif
  97. u-boot-install:
  98. $(CP) $(WRKBUILD)/$(UBOOT) $(FW_DIR)
  99. ifeq ($(ADK_TARGET_SYSTEM_IMGTEC_CI20),y)
  100. $(CP) $(WRKBUILD)/spl/u-boot-spl.bin $(FW_DIR)
  101. endif
  102. $(INSTALL_DIR) $(IDIR_U_BOOT)/etc
  103. $(CP) ./files/fw_env.config $(IDIR_U_BOOT)/etc
  104. ifneq ($(OS_FOR_BUILD),Darwin)
  105. $(INSTALL_DIR) $(IDIR_U_BOOT)/usr/bin
  106. $(INSTALL_BIN) ./files/uboot_print_env $(IDIR_U_BOOT)/usr/bin
  107. $(INSTALL_BIN) ./files/uboot_set_env $(IDIR_U_BOOT)/usr/bin
  108. endif
  109. ifeq ($(ADK_TARGET_SYSTEM_BANANA_PRO),y)
  110. $(INSTALL_BIN) ./files/boot.script.bpi $(FW_DIR)
  111. endif
  112. ifeq ($(ADK_TARGET_SYSTEM_ORANGE_PI0),y)
  113. $(INSTALL_BIN) ./files/boot.script.opi $(FW_DIR)
  114. endif
  115. ifeq ($(ADK_TARGET_SYSTEM_SOLIDRUN_CLEARFOG),y)
  116. $(INSTALL_BIN) ./files/boot.script.clearfog $(FW_DIR)
  117. endif
  118. ifeq ($(ADK_TARGET_SYSTEM_SOLIDRUN_IMX6),y)
  119. $(INSTALL_BIN) $(WRKBUILD)/SPL $(FW_DIR)
  120. $(INSTALL_BIN) ./files/boot.script.imx6 $(FW_DIR)
  121. endif
  122. ifeq ($(ADK_TARGET_SYSTEM_PHYTEC_IMX6),y)
  123. $(INSTALL_BIN) $(WRKBUILD)/SPL $(FW_DIR)
  124. $(INSTALL_BIN) ./files/boot.script.phytec $(FW_DIR)
  125. endif
  126. ifeq ($(ADK_TARGET_SYSTEM_BEAGLEBONE_BLACK),y)
  127. $(CP) ./files/uEnv.txt.bbb $(FW_DIR)/uEnv.txt
  128. $(INSTALL_BIN) $(WRKBUILD)/MLO $(FW_DIR)
  129. endif
  130. include $(ADK_TOPDIR)/mk/host-bottom.mk
  131. include $(ADK_TOPDIR)/mk/pkg-bottom.mk