Advertisement
4javier

Untitled

May 18th, 2016
213
0
Never
Not a member of Pastebin yet? Sign Up, it unlocks many cool features!
text 6.58 KB | None | 0 0
  1. # Copyright Statement:
  2. #
  3. # This software/firmware and related documentation ("MediaTek Software") are
  4. # protected under relevant copyright laws. The information contained herein
  5. # is confidential and proprietary to MediaTek Inc. and/or its licensors.
  6. # Without the prior written permission of MediaTek inc. and/or its licensors,
  7. # any reproduction, modification, use or disclosure of MediaTek Software,
  8. # and information contained herein, in whole or in part, shall be strictly prohibited.
  9. #
  10. # MediaTek Inc. (C) 2010. All rights reserved.
  11. #
  12. # BY OPENING THIS FILE, RECEIVER HEREBY UNEQUIVOCALLY ACKNOWLEDGES AND AGREES
  13. # THAT THE SOFTWARE/FIRMWARE AND ITS DOCUMENTATIONS ("MEDIATEK SOFTWARE")
  14. # RECEIVED FROM MEDIATEK AND/OR ITS REPRESENTATIVES ARE PROVIDED TO RECEIVER ON
  15. # AN "AS-IS" BASIS ONLY. MEDIATEK EXPRESSLY DISCLAIMS ANY AND ALL WARRANTIES,
  16. # EXPRESS OR IMPLIED, INCLUDING BUT NOT LIMITED TO THE IMPLIED WARRANTIES OF
  17. # MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE OR NONINFRINGEMENT.
  18. # NEITHER DOES MEDIATEK PROVIDE ANY WARRANTY WHATSOEVER WITH RESPECT TO THE
  19. # SOFTWARE OF ANY THIRD PARTY WHICH MAY BE USED BY, INCORPORATED IN, OR
  20. # SUPPLIED WITH THE MEDIATEK SOFTWARE, AND RECEIVER AGREES TO LOOK ONLY TO SUCH
  21. # THIRD PARTY FOR ANY WARRANTY CLAIM RELATING THERETO. RECEIVER EXPRESSLY ACKNOWLEDGES
  22. # THAT IT IS RECEIVER'S SOLE RESPONSIBILITY TO OBTAIN FROM ANY THIRD PARTY ALL PROPER LICENSES
  23. # CONTAINED IN MEDIATEK SOFTWARE. MEDIATEK SHALL ALSO NOT BE RESPONSIBLE FOR ANY MEDIATEK
  24. # SOFTWARE RELEASES MADE TO RECEIVER'S SPECIFICATION OR TO CONFORM TO A PARTICULAR
  25. # STANDARD OR OPEN FORUM. RECEIVER'S SOLE AND EXCLUSIVE REMEDY AND MEDIATEK'S ENTIRE AND
  26. # CUMULATIVE LIABILITY WITH RESPECT TO THE MEDIATEK SOFTWARE RELEASED HEREUNDER WILL BE,
  27. # AT MEDIATEK'S OPTION, TO REVISE OR REPLACE THE MEDIATEK SOFTWARE AT ISSUE,
  28. # OR REFUND ANY SOFTWARE LICENSE FEES OR SERVICE CHARGE PAID BY RECEIVER TO
  29. # MEDIATEK FOR SUCH MEDIATEK SOFTWARE AT ISSUE.
  30. #
  31. # The following software/firmware and/or related documentation ("MediaTek Software")
  32. # have been modified by MediaTek Inc. All revisions are subject to any receiver's
  33. # applicable license agreements with MediaTek Inc.
  34.  
  35. ifneq ($(strip $(MTK_PROJECT_NAME)),)
  36.  
  37. LOCAL_PATH := $(call my-dir)
  38. # *************************************************************************
  39. # Set shell align with Android build system
  40. # *************************************************************************
  41. SHELL := /bin/bash
  42. MTK_PROJECT_NAME := $(subst full_,,$(TARGET_PRODUCT))
  43. #MTK_PROJECT_FOLDER := $(shell find device/* -maxdepth 1 -name $(MTK_PROJECT_NAME))
  44. MTK_TRUSTZONE_CFG_FOLDER := vendor/mediatek/proprietary/trustzone/project
  45. MKTOPDIR := $(shell pwd -P)
  46. MTK_PLATFORM_LC := $(shell echo $(MTK_PLATFORM) | tr A-Z a-z )
  47. #PRJ_MF := $(MTK_PROJECT_FOLDER)/ProjectConfig.mk
  48. PRJ_COMMON := $(MTK_TRUSTZONE_CFG_FOLDER)/common.mk
  49. PRJ_CHIP := $(MTK_TRUSTZONE_CFG_FOLDER)/$(MTK_PLATFORM_LC).mk
  50. PRJ_BASE := $(MTK_TRUSTZONE_CFG_FOLDER)/$(MTK_BASE_PROJECT).mk
  51. PRJ_MF := $(MTK_TRUSTZONE_CFG_FOLDER)/$(MTK_TARGET_PROJECT).mk
  52. ifneq ($(wildcard $(PRJ_COMMON)),)
  53. $(info including $(PRJ_COMMON))
  54. include $(PRJ_COMMON)
  55. endif
  56. ifneq ($(wildcard $(PRJ_CHIP)),)
  57. $(info including $(PRJ_CHIP))
  58. include $(PRJ_CHIP)
  59. endif
  60. ifneq ($(wildcard $(PRJ_BASE)),)
  61. $(info including $(PRJ_BASE))
  62. include $(PRJ_BASE)
  63. endif
  64. ifneq ($(wildcard $(PRJ_MF)),)
  65. $(info including $(PRJ_MF))
  66. include $(PRJ_MF)
  67. endif
  68. hide := @
  69.  
  70. SHOWTIMECMD := date "+%Y/%m/%d %H:%M:%S"
  71. SHOWTIME := $(shell $(SHOWTIMECMD))
  72. OUT_DIR ?= out
  73. LOG_DIR := $(OUT_DIR)/target/product/
  74. DEAL_STDOUT := > $(LOG_DIR)$(MTK_PROJECT_NAME)_trustzone.log 2>&1
  75.  
  76. TRUST_TEE_WD := vendor/mediatek/proprietary/trustzone
  77. ATF_BUILD_SCRIPT := vendor/arm/atf/build.sh
  78. TEE_BUILD_SCRIPT := vendor/trustonic/platform/$(PLATFORM)/t-base/build.sh
  79. TZ_BUILD_SCRIPT := $(TRUST_TEE_WD)/build.sh
  80. TRUST_TEE_IMAGES := $(OUT_DIR)/target/product/$(MTK_PROJECT_NAME)/trustzone/bin/trustzone.bin
  81. export ARCH_MTK_PLATFORM := $(MTK_PLATFORM_LC)
  82. export MTK_PROJECT := $(MTK_PROJECT_NAME)
  83. export MTK_MACH_TYPE := ${MTK_MACH_TYPE}
  84. export TARGET_DEVICE := ${TARGET_DEVICE}
  85. TRUSTZONE_PARTITION := no
  86.  
  87. ifeq ($(MTK_ATF_SUPPORT),yes)
  88. TRUSTZONE_PARTITION := yes
  89. endif
  90. ifeq ($(MTK_TEE_SUPPORT),yes)
  91. TRUSTZONE_PARTITION := yes
  92. endif
  93.  
  94. ifeq ($(TRUSTZONE_PARTITION),yes)
  95. export MTK_ATF_SUPPORT
  96. export MTK_TEE_SUPPORT
  97. export TRUSTONIC_TEE_SUPPORT
  98. export MTK_ATF_VERSION
  99. export MKTOPDIR
  100. export TARGET_BUILD_VARIANT
  101. export OUT_DIR
  102. export MTK_TEE_DRAM_SIZE
  103. export MTK_IN_HOUSE_TEE_SUPPORT
  104. endif
  105.  
  106. $(info TARGET_PRODUCT is $(TARGET_PRODUCT))
  107. $(info MTK_PROJECT_NAME is $(MTK_PROJECT_NAME))
  108. $(info TARGET_BUILD_TYPE is $(TARGET_BUILD_TYPE))
  109. $(info MKTOPDIR is $(MKTOPDIR))
  110. $(info JAVA_HOME is $(JAVA_HOME))
  111. $(info MTK_PROJECT is $(MTK_PROJECT))
  112. $(info TARGET_BUILD_VARIANT is $(TARGET_BUILD_VARIANT))
  113. $(info OUT_DIR is $(OUT_DIR))
  114. $(info MTK_ATF_SUPPORT is $(MTK_ATF_SUPPORT))
  115. $(info MTK_TEE_SUPPORT is $(MTK_TEE_SUPPORT))
  116. $(info TRUSTONIC_TEE_SUPPORT is $(TRUSTONIC_TEE_SUPPORT))
  117. $(info TRUSTZONE_PARTITION is $(TRUSTZONE_PARTITION))
  118. $(info MTK_ATF_VERSION is $(MTK_ATF_VERSION))
  119. $(info MTK_IN_HOUSE_TEE_SUPPORT is $(MTK_IN_HOUSE_TEE_SUPPORT))
  120. $(info MTK_MACH_TYPE is $(MTK_MACH_TYPE))
  121. $(info MTK_TEE_DRAM_SIZE is $(MTK_TEE_DRAM_SIZE))
  122.  
  123. ifeq ($(MTK_IN_HOUSE_TEE_SUPPORT),yes)
  124. include $(call all-makefiles-under,$(LOCAL_PATH))
  125. trustzone: $(PRODUCT_OUT)/tz.img
  126. endif
  127.  
  128. ifneq ($(MTK_TEE_SUPPORT),yes)
  129. trustzone:
  130. else
  131. ifeq ($(MTK_IN_HOUSE_TEE_SUPPORT),yes)
  132. # export for build.sh
  133. #include $(MTK_PATH_CUSTOM)/trustzone/custom.mk
  134. #export TEE_DRAM_SIZE:=$(MEMSIZE)
  135. #export MTEE_CUSTOM_CFG_DIR:=$(MTK_PATH_CUSTOM)/trustzone
  136. export HOST_OS
  137. TRUST_TEE_IMAGES := $(OUT_DIR)/target/product/$(MTK_PROJECT_NAME)/trustzone/bin/tz.img
  138. trustzone:
  139. else # for TRUSTONIC_TEE_SUPPORT
  140. trustzone: mcDriverDaemon
  141. endif
  142. endif
  143. ifeq ($(TRUSTZONE_PARTITION),yes)
  144. ifneq ($(wildcard $(TRUST_TEE_WD)/build.sh),)
  145. $(hide) echo $(SHOWTIME) $@ ing ...
  146. $(hide) echo -e \\t\\t\\t\\b\\b\\b\\bLOG: $(LOG_DIR)$(MTK_PROJECT_NAME)_$@.log
  147. $(hide) rm -f $(LOG_DIR)$(MTK_PROJECT_NAME)_$@.log $(LOG_DIR)$(MTK_PROJECT_NAME)_$@.log_err
  148. $(hide) $(SHELL) $(TZ_BUILD_SCRIPT) $(MTK_PROJECT_NAME) $(DEAL_STDOUT)
  149. $(hide) cp -f $(TRUST_TEE_IMAGES) $(LOG_DIR)/$(MTK_PROJECT_NAME)/
  150. $(hide) mkdir -p $(LOG_DIR)/$(MTK_PROJECT_NAME)/system/etc/
  151. $(hide) cp -f $(TRUST_TEE_IMAGES) $(LOG_DIR)/$(MTK_PROJECT_NAME)/system/etc/trustzone.bin
  152. else
  153. $(hide) echo Not find $(TRUST_TEE_WD)/build.sh, skip $@.
  154. endif
  155. else
  156. $(hide) echo Not support $@.
  157. endif
  158.  
  159. droidcore: trustzone
  160.  
  161. endif
Advertisement
Add Comment
Please, Sign In to add comment
Advertisement