1 2# ********************************************** 3# Build Configuration 4# ********************************************** 5 6# Make Type: lib / exe / lint 7MAKE_TYPE ?= lib 8 9# Link Type: static / dynamic(Linux) 10LINK_TYPE ?= static 11 12# Build Type: debug / retail 13BLT_TYPE ?= retail 14 15# Debug Level: Level 1(HAL), Level 2(Driver), Level 3(Middleware), Level 4(API), Level 5(Application) 16DEBUGLEVEL = 5 17 18# FW Type: external / embedded 19FW_TYPE ?= embedded 20# MCU: aeon / mips4ke / mips34k / mips74k /arm9 21# TOOLCHAIN: 22# ELF: mips-sde-elf / aeon / mipsisa32-elf 23# Linux: mips-linux-gnu / mips2_fp_le / arm-none-linux-gnueabi / arm-none-eabi 24# Android: mips-linux-gnu(mipsfroyo_2.2) / arm-eabi(gingerbread_2.3) / arm-linux-androideabi(ics_4.0/jb_4.1) 25# GoogleTV: arm-unknown-linux-gnueabi(honeycomb_3.2) 26MCU_TYPE = arm_ca12 27TOOLCHAIN = arm-linux-androideabi 28 29# OS: ecos / linux / nos 30OS_TYPE = linux 31PLATFORM = android 32FPU_ENABLE = 1 33 34# Endianess: mlittle-endian only 35ENDIAN = mlittle-endian 36 37# Chip: manhattan 38CHIP = kano 39 40# TS2_SUPPORT: y / n 41TS2_ENABLE = y 42 43# VQ_ENABLE: y / n 44VQ_ENABLE = y 45 46# EXT_FILTER_ENABLE: y / n 47EXT_FILTER_ENABLE = y 48 49# MMFILEIN_ENABLE: y / n 50MMFILEIN_ENABLE = y 51 52# MMFI3D_ENABLE: y / n 53MMFI3D_ENABLE = y 54 55# MMFIMOBF_ENABLE: y / n 56MMFIMOBF_ENABLE = y 57 58# STC64_ENABLE: y / n 59STC64_ENABLE = y 60 61# HW_PCR_ENABLE: y / n 62HW_PCR_ENABLE = n 63 64# MOBF_ENABLE: y / n 65MOBF_ENABLE = y 66 67# DSCMB_CSA_ENABLE: y / n 68DSCMB_CSA_ENABLE = y 69 70# DSCMB_MULTI2_ENABLE: y/n 71DSCMB_MULTI2_ENABLE = y 72 73# Project name 74PROJNAME = MDDI 75 76# Image name 77IMAGENAME = $(CHIP)_$(OS_TYPE) 78 79#TODO: I hate this!! 80# working processor: HK/co-processor (used for HW mutex) 81PROCESSOR = HK 82 83# Lint Command, option file 84LINT_OPT = opt_linux.lnt 85ifeq ($(shell uname -o),Cygwin) 86LINT_CMD = $(CURDIR)/../../tools/lint/lint-nt.exe -b -v -zero -fff 87LINT_CMD += -i$(shell cygpath -m $(CURDIR)/../../tools/lint/lnt) $(LINT_OPT) 88else 89LINT_CMD = $(CURDIR)/../../tools/lint/flint -b -v -zero -fff 90LINT_CMD += -i$(CURDIR)/../../tools/lint/lnt $(LINT_OPT) 91endif 92 93 94# ********************************************** 95# Build Option 96# ********************************************** 97 98CFG_BOARD = BD_MST215A-D01A 99 100CFG_CC_DEFS = -D'CHIP_KANO' -D'MS_BOARD_TYPE_SEL=$(CFG_BOARD)' -D'MS_C_STDLIB' 101CFG_CC_OPTS = 102CFG_LD_OPTS = 103 104ifeq ($(MCU_TYPE),aeon) 105CFG_CC_DEFS += -D'MCU_AEON' 106endif 107ifeq ($(MCU_TYPE),mips4ke) 108CFG_CC_DEFS += -D'MCU_MIPS_4KE' 109endif 110ifeq ($(MCU_TYPE),mips34k) 111CFG_CC_DEFS += -D'MCU_MIPS_34K' 112endif 113ifeq ($(MCU_TYPE),mips74k) 114CFG_CC_DEFS += -D'MCU_MIPS_74K' 115endif 116ifeq ($(MCU_TYPE),arm9) 117CFG_CC_DEFS += -D'MCU_ARM_9' 118endif 119ifeq ($(MCU_TYPE),arm_ca12) 120CFG_CC_DEFS += -D'MCU_ARM_CA12' 121endif 122 123ifeq ($(OS_TYPE),ecos) 124CFG_CC_DEFS += -D'MSOS_TYPE_ECOS' 125endif 126ifeq ($(OS_TYPE),linux) 127CFG_CC_DEFS += -D'MSOS_TYPE_LINUX' 128endif 129ifeq ($(OS_TYPE),nos) 130CFG_CC_DEFS += -D'MSOS_TYPE_NOS' 131endif 132 133ifeq ($(FW_TYPE),external) 134CFG_CC_DEFS += -D'FW_EXTERNAL_BIN' 135endif 136ifeq ($(FW_TYPE),embedded) 137CFG_CC_DEFS += -D'FW_EMBEDDED_ASC' 138endif 139 140ifeq ($(CHIP),edison) #if CHIP edison 141 142ifeq ($(TS2_ENABLE),y) 143CFG_CC_DEFS += -D'TS2_IF_SUPPORT' 144endif 145ifeq ($(VQ_ENABLE),y) 146CFG_CC_DEFS += -D'VQ_ENABLE' 147endif 148ifeq ($(EXT_FILTER_ENABLE),y) 149CFG_CC_DEFS += -D'EXT_FILTER_SUPPORT' 150endif 151ifeq ($(MMFILEIN_ENABLE),y) 152CFG_CC_DEFS += -D'MMFILEIN' 153endif 154ifeq ($(MMFI3D_ENABLE),y) 155CFG_CC_DEFS += -D'MMFI_VD3D' 156endif 157ifeq ($(MMFIMOBF_ENABLE),y) 158CFG_CC_DEFS += -D'MM_MOBF' 159endif 160ifeq ($(STC64_ENABLE),y) 161CFG_CC_DEFS += -D'STC64_SUPPORT' 162endif 163ifeq ($(HW_PCR_ENABLE),y) 164CFG_CC_DEFS += -D'HWPCR_ENABLE' 165endif 166ifeq ($(MOBF_ENABLE),y) 167CFG_CC_DEFS += -D'MOBF_ENABLE' 168endif 169ifeq ($(DSCMB_CSA_ENABLE),y) 170CFG_CC_DEFS += -D'DSCMB_CSA_ENABLE' 171endif 172ifeq ($(DSCMB_MULTI2_ENABLE),y) 173CFG_CC_DEFS += -D'DSCMB_MULTI2_ENABLE' 174endif 175 176endif #endif CHIP edison 177 178# ********************************************** 179# Tool Chain Configuration 180# 181# Required ENV 182# $(ROOT) e.g //utopia/ 183# 184# Supported TOOLCHAIN 185# mips-linux-gnu 186# mips-sde-elf 187# mips2_fp_le 188# aeon 189# mipsisa32-elf (OBSOLETE) 190# arm-none-linux-gnueabi 191# arm-eabi 192# 193# Effected ENV 194# CFG_STDLIB_DIR = 195# CFG_LINT = 196# CFG_CC_OPTS += 197# CFG_LD_OPTS += 198# CFG_AS_OPTS += 199# ********************************************** 200 201include $(ROOTLIB)/cfg_tool.mk 202 203 204ifeq ($(LINK_TYPE),dynamic) 205CFG_LD_OPTS += -shared 206LIB_EXT = so 207else 208CFG_LD_OPTS += --gc-sections -static 209LIB_EXT = a 210endif