LOCAL_PATH := $(call my-dir) ifeq ($(strip $(MTK_ENABLE_GENIEZONE)),yes) GZ_IMAGE := gz GZ_INSTALLED_TARGET_IMG := $(PRODUCT_OUT)/$(GZ_IMAGE).img GZ_IMAGE_NAME := $(notdir $(GZ_INSTALLED_TARGET_IMG)) include $(CLEAR_VARS) LOCAL_MODULE := gz.img LOCAL_MODULE_CLASS := ETC LOCAL_MODULE_OWNER := mtk LOCAL_PROPRIETARY_MODULE := true LOCAL_MODULE_PATH := $(PRODUCT_OUT) intermediates := $(call local-intermediates-dir) my_geniezone_intermediates := $(intermediates)/GZ_OBJ GZ_COMP_IMAGE_NAME := $(my_geniezone_intermediates)/gz.img LOCAL_PREBUILT_MODULE_FILE := $(GZ_COMP_IMAGE_NAME) include $(BUILD_PREBUILT) GZ_ROOT_DIR := $(LOCAL_PATH) VM_PREBUILTS_EXTERNAL_PATH := $(GZ_ROOT_DIR)/prebuilts/libs/vm VM_PREBUILTS_INTERNAL_PATH := $(GZ_ROOT_DIR)/prebuilts/third-party/vm GZ_PROJECT := GZ_TARGET_BOARD_PLATFORM := VM_PREBUILTS_NEBULA_HEE_BIN := # Supported platform mappings GZ_PROJECT := mtk_armv8_el2 GZ_TARGET_BOARD_PLATFORM := mtk_armv8 ifeq ($(strip $(MTK_NEBULA_VM_SUPPORT)),yes) ifneq ($(wildcard $(VM_PREBUILTS_INTERNAL_PATH)/nebula/nebula_hee.bin),) GZ_PROJECT := mtk_armv8_nebula VM_PREBUILTS_NEBULA_HEE_BIN := $(VM_PREBUILTS_INTERNAL_PATH)/nebula/nebula_hee.bin else ifneq ($(wildcard $(VM_PREBUILTS_EXTERNAL_PATH)/nebula/nebula_hee.bin),) GZ_PROJECT := mtk_armv8_nebula VM_PREBUILTS_NEBULA_HEE_BIN := $(VM_PREBUILTS_EXTERNAL_PATH)/nebula/nebula_hee.bin endif#wildcard endif#MTK_NEBULA_VM_SUPPORT ifeq ($(strip $(GZ_PROJECT)),) $(error Unsupported plaform : $(TARGET_BOARD_PLATFORM)) endif GZ_BUILD_SYSTEM := $(LOCAL_PATH)/trusty/device/arm/mediatek/build GZ_KEY_PATH := $(GZ_ROOT_DIR)/trusty/device/arm/mediatek/project/iv/$(GZ_TARGET_BOARD_PLATFORM) # ------ prebuilt setting ------ GZ_PREBUILTS_LIB_PATH := $(GZ_ROOT_DIR)/prebuilts/libs/$(GZ_PROJECT)/lib GZ_PREBUILTS_APP_PATH := $(GZ_ROOT_DIR)/prebuilts/libs/$(GZ_PROJECT)/app GZ_PREBUILTS_LDSCRIPTS := $(GZ_ROOT_DIR)/prebuilts/libs/$(GZ_PROJECT)/ldscripts GZ_LDSCRIPTS := $(GZ_PREBUILTS_LDSCRIPTS)/system-onesegment.ld GZ_MKIMAGE_TOOL := $(GZ_ROOT_DIR)/prebuilts/libs/tool/mkimage # ------ Toolchain setting ------ GZ_TOOLCHAIN_PREFIX_arm := prebuilts/gcc/linux-x86/arm/arm-eabi-4.9/bin/arm-eabi- GZ_LIBGCC_arm := prebuilts/gcc/linux-x86/arm/arm-eabi-4.9/lib/gcc/arm-eabi/4.9.4/libgcc.a GZ_TOOLCHAIN_PREFIX := prebuilts/gcc/linux-x86/aarch64/aarch64-linux-android-4.9.1/bin/aarch64-linux-android- GZ_LIBGCC := prebuilts/gcc/linux-x86/aarch64/aarch64-linux-android-4.9.1/lib/gcc/aarch64-linux-android/4.9.x/libgcc.a GZ_CC_arm := $(GZ_TOOLCHAIN_PREFIX_arm)gcc GZ_LD_arm := $(GZ_TOOLCHAIN_PREFIX_arm)ld GZ_LD_LIBRARY_PATH_arm := LD_LIBRARY_PATH=prebuilts/gcc/linux-x86/arm/arm-eabi-4.9/libexec/gcc/arm-eabi/4.9.4/libmpfr GZ_CC := $(GZ_TOOLCHAIN_PREFIX)gcc GZ_LD := $(GZ_TOOLCHAIN_PREFIX)ld GZ_OBJDUMP := $(GZ_TOOLCHAIN_PREFIX)objdump GZ_OBJCOPY := $(GZ_TOOLCHAIN_PREFIX)objcopy GZ_SIZE := $(GZ_TOOLCHAIN_PREFIX)size GZ_NM := $(GZ_TOOLCHAIN_PREFIX)nm GZ_AR := $(GZ_TOOLCHAIN_PREFIX)ar GZ_STRIP := $(GZ_TOOLCHAIN_PREFIX)strip GLOBAL_GZ_COMPILEFLAGS := -g -fno-builtin -finline GLOBAL_GZ_COMPILEFLAGS += -Wall GLOBAL_GZ_OPTFLAGS := -O2 GLOBAL_GZ_CFLAGS := --std=gnu99 -Werror-implicit-function-declaration -Wstrict-prototypes -Wwrite-strings GLOBAL_GZ_CFLAGS += -D__TRUSTZONE_TEE__ -DARM_ISA_ARMV7 -DARM_CPU_ARM7 -D__GLIBC__ GLOBAL_GZ_ASMFLAGS := -DASSEMBLY GLOBAL_GZ_LDFLAGS := # For co-exist RPMB parition with GP ifeq ($(strip $(MTK_TEE_GP_SUPPORT)), yes) GLOBAL_GZ_CFLAGS += -DMTK_TEE_GP_SUPPORT endif # MTK_TEE_GP_SUPPORT # ------ User Task ------ GZ_EXECUTABLE := $(GZ_BUILD_SYSTEM)/executable.mk gz_subdir_makefiles := $(call first-makefiles-under, $(GZ_ROOT_DIR)) $(info including $(gz_subdir_makefiles) ...) include $(gz_subdir_makefiles) $(info including $(GZ_ROOT_DIR)/trusty/device/arm/mediatek/app/$(GZ_TARGET_BOARD_PLATFORM).mk ...) include $(GZ_ROOT_DIR)/trusty/device/arm/mediatek/app/$(GZ_TARGET_BOARD_PLATFORM).mk .PHONY: $(GZ_IMAGE) $(GZ_IMAGE_NAME) $(GZ_IMAGE): $(GZ_INSTALLED_TARGET_IMG) $(GZ_IMAGE_NAME) $(GZ_IMAGE_NAME): $(info including $(GZ_BUILD_SYSTEM)/build_tz_image.mk ...) include $(GZ_BUILD_SYSTEM)/build_tz_image.mk endif # MTK_ENABLE_GENIEZONE