rules.mk 4.1 KB

123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103104105106107108109110111112113114115116117118119120121122123124125126127128129130131132133134135136137138139140141142143144145146147148149150151152153154155156157
  1. LOCAL_DIR := $(GET_LOCAL_DIR)
  2. INCLUDES += -I$(LOCAL_DIR)/include
  3. INCLUDES += -Iplatform/$(PLATFORM)/include/platform
  4. ##############################################################################
  5. # Check build type. (Begin)
  6. ##############################################################################
  7. # For backward compatibility, USER_BUILD is also defined on userdebug build.
  8. ##############################################################################
  9. ifneq ($(filter user, $(TARGET_BUILD_VARIANT)),)
  10. DEFINES += USER_BUILD USER_LOAD
  11. else ifneq ($(filter userdebug, $(TARGET_BUILD_VARIANT)),)
  12. DEFINES += USERDEBUG_BUILD USER_BUILD
  13. else ifneq ($(filter eng, $(TARGET_BUILD_VARIANT)),)
  14. DEFINES += ENG_BUILD
  15. else
  16. DEFINES += USER_BUILD # If none of the keywords is found, define USER_BUILD.
  17. endif
  18. ##############################################################################
  19. # Check build type. (End)
  20. ##############################################################################
  21. ifeq ($(PLATFORM_FASTBOOT_EMPTY_STORAGE), yes)
  22. DEFINES += PLATFORM_FASTBOOT_EMPTY_STORAGE
  23. endif
  24. # for fastboot to update partition table (fastboot flash gpt PGPT)
  25. ifneq ($(wildcard $(LOCAL_DIR)/../../../../../../../../keystone-tools),)
  26. DEFINES += MTK_GPT_UPDATE_SUPPORT
  27. endif
  28. ifeq ($(MTK_RC_TO_VENDOR), yes)
  29. DEFINES += MTK_RC_TO_VENDOR
  30. endif
  31. ifeq ($(strip $(MICROTRUST_TEE_LITE_SUPPORT)),yes)
  32. ifneq (,$(filter mt6570 mt6580,$(PLATFORM)))
  33. DEFINES += CFG_MICROTRUST_TEE_LITE_SUPPORT
  34. OBJS += $(LOCAL_DIR)/RoT/avb_RoT_teei.o
  35. endif
  36. endif #MICROTRUST_TEE_LITE_SUPPORT
  37. # RoT for ARMv8
  38. ifneq ($(strip $(MTK_SECURITY_SW_SUPPORT)),no)
  39. ifeq (,$(filter mt6570 mt6580,$(PLATFORM)))
  40. ifeq ($(MTK_AVB20_SUPPORT),yes)
  41. OBJS += $(LOCAL_DIR)/RoT/avb_RoT.o
  42. else #MTK_AVB20_SUPPORT
  43. OBJS += $(LOCAL_DIR)/RoT/RoT.o
  44. endif #MTK_AVB20_SUPPORT
  45. endif
  46. endif
  47. ifeq ($(MTK_ATM_SUPPORT), yes)
  48. DEFINES += MTK_ATM_SUPPORT
  49. endif
  50. OBJS += $(LOCAL_DIR)/atm.o
  51. OBJS += $(LOCAL_DIR)/sec_wrapper.o
  52. OBJS += $(LOCAL_DIR)/profiling.o
  53. OBJS += $(LOCAL_DIR)/meta.o
  54. OBJS += $(LOCAL_DIR)/recovery.o
  55. OBJS += $(LOCAL_DIR)/fpga_boot_argument.o
  56. OBJS += $(LOCAL_DIR)/error.o
  57. ifeq ($(CFG_MTK_UART_COMMON),yes)
  58. MODULES += $(LOCAL_DIR)/uart
  59. endif
  60. MODULES += $(LOCAL_DIR)/loader
  61. MODULES += $(LOCAL_DIR)/storage
  62. MODULES += $(LOCAL_DIR)/timer
  63. MODULES += $(LOCAL_DIR)/partition
  64. MODULES += $(LOCAL_DIR)/plinfo
  65. ifeq ($(MTK_AB_OTA_UPDATER),yes)
  66. #RECOVERY_AS_BOOT is always enabled with MTK_AB_OTA_UPDATER (BOARD_USES_RECOVERY_AS_BOOT)
  67. DEFINES += MTK_AB_OTA_UPDATER
  68. DEFINES += RECOVERY_AS_BOOT
  69. ifeq ($(MTK_BOOTCTRL_VERSION),1.0)
  70. MTK_BOOTCTRL_VERSION = 1.0
  71. DEFINES += MTK_BOOTCTRL_VERSION
  72. else
  73. MTK_BOOTCTRL_VERSION = 2.0
  74. DEFINES += MTK_BOOTCTRL_VERSION
  75. endif
  76. MODULES += $(LOCAL_DIR)/bootctrl
  77. endif
  78. ifeq ($(MTK_SSUSB), yes)
  79. MODULES += $(LOCAL_DIR)/mt_ssusb
  80. endif
  81. ifeq ($(MTK_MUSB), yes)
  82. MODULES += $(LOCAL_DIR)/mt_musb
  83. endif
  84. ifneq ($(SYSTEM_AS_ROOT),no)
  85. DEFINES += SYSTEM_AS_ROOT
  86. endif
  87. ifeq ($(LK_LD_MD_SUPPORT), yes)
  88. MODULES += $(LOCAL_DIR)/md
  89. endif
  90. ifeq ($(MTK_CHARGER_NEW_ARCH), yes)
  91. MODULES += $(LOCAL_DIR)/power
  92. endif
  93. # aee platform debug
  94. ifeq ($(MTK_AEE_PLATFORM_DEBUG_SUPPORT),yes)
  95. MODULES += $(LOCAL_DIR)/aee_platform_debug
  96. MODULES += $(LOCAL_DIR)/spm
  97. endif
  98. ifeq ($(MTK_AVB20_SUPPORT),yes)
  99. MODULES += $(LOCAL_DIR)/avb
  100. DEFINES += MTK_AVB20_SUPPORT
  101. endif
  102. MODULES += $(LOCAL_DIR)/atf
  103. MODULES += $(LOCAL_DIR)/boot
  104. ifeq ($(MTK_RECOVERY_RAMDISK_SPLIT),yes)
  105. DEFINES += MTK_RECOVERY_RAMDISK_SPLIT
  106. MODULES += lib/ramdisk_merge
  107. OBJS += $(LOCAL_DIR)/ramdisk/load_ramdisk.o
  108. OBJS += $(LOCAL_DIR)/ramdisk/load_vfy_ramdisk.o
  109. # Must bind with ram split to avoid misuse ramdisk in boot
  110. ifeq ($(RECOVERY_AS_BOOT),yes)
  111. DEFINES += RECOVERY_AS_BOOT
  112. endif
  113. endif
  114. ifeq (yes,$(strip $(MTK_BUILD_ENHANCE_MENU)))
  115. DEFINES += MTK_BUILD_ENHANCE_MENU
  116. endif
  117. # log_store platform debug
  118. ifeq ($(CFG_LOG_STORE_SUPPORT),yes)
  119. MODULES += $(LOCAL_DIR)/log_store
  120. DEFINES += LOG_STORE_SUPPORT
  121. ifneq ($(wildcard $(LOCAL_DIR)/../../../../../../internal/mtklog_enable),)
  122. DEFINES += UART_SWITCH_SUPPORT
  123. endif
  124. DEFINES += FASTBOOT_DUMP_LOG
  125. endif
  126. ifeq ($(DUMP_CODE_SECTION), yes)
  127. DEFINES += DUMP_CODE_SECTION
  128. endif
  129. ifeq ($(LK_MAIN_DTB_BUILT_IN),yes)
  130. MODULES += $(LOCAL_DIR)/lk_main_dtb_loader
  131. DEFINES += LK_MAIN_DTB_BUILT_IN
  132. endif