1*53ee8cc1Swenshuai.xi 2*53ee8cc1Swenshuai.xi################################################################################ 3*53ee8cc1Swenshuai.xi# 4*53ee8cc1Swenshuai.xi# Copyright (c) 2008-2009 MStar Semiconductor, Inc. 5*53ee8cc1Swenshuai.xi# All rights reserved. 6*53ee8cc1Swenshuai.xi# 7*53ee8cc1Swenshuai.xi# Unless otherwise stipulated in writing, any and all information contained 8*53ee8cc1Swenshuai.xi# herein regardless in any format shall remain the sole proprietary of 9*53ee8cc1Swenshuai.xi# MStar Semiconductor Inc. and be kept in strict confidence 10*53ee8cc1Swenshuai.xi# ("MStar Confidential Information") by the recipient. 11*53ee8cc1Swenshuai.xi# Any unauthorized act including without limitation unauthorized disclosure, 12*53ee8cc1Swenshuai.xi# copying, use, reproduction, sale, distribution, modification, disassembling, 13*53ee8cc1Swenshuai.xi# reverse engineering and compiling of the contents of MStar Confidential 14*53ee8cc1Swenshuai.xi# Information is unlawful and strictly prohibited. MStar hereby reserves the 15*53ee8cc1Swenshuai.xi# rights to any and all damages, losses, costs and expenses resulting therefrom. 16*53ee8cc1Swenshuai.xi# 17*53ee8cc1Swenshuai.xi# 18*53ee8cc1Swenshuai.xi# Makefile used for configuring toolchain 19*53ee8cc1Swenshuai.xi# 20*53ee8cc1Swenshuai.xi# Required ENV 21*53ee8cc1Swenshuai.xi# $(ROOT) e.g //utopia/ 22*53ee8cc1Swenshuai.xi# 23*53ee8cc1Swenshuai.xi# Supported TOOLCHAIN 24*53ee8cc1Swenshuai.xi# mips-linux-gnu 25*53ee8cc1Swenshuai.xi# mips-sde-elf 26*53ee8cc1Swenshuai.xi# mips2_fp_le 27*53ee8cc1Swenshuai.xi# aeon 28*53ee8cc1Swenshuai.xi# mipsisa32-elf (OBSOLETE) 29*53ee8cc1Swenshuai.xi# 30*53ee8cc1Swenshuai.xi# Effected ENV 31*53ee8cc1Swenshuai.xi# CFG_STDLIB_DIR = 32*53ee8cc1Swenshuai.xi# CFG_LINT = 33*53ee8cc1Swenshuai.xi# CFG_CC_OPTS += 34*53ee8cc1Swenshuai.xi# CFG_LD_OPTS += 35*53ee8cc1Swenshuai.xi# CFG_AS_OPTS += 36*53ee8cc1Swenshuai.xi# 37*53ee8cc1Swenshuai.xi################################################################################ 38*53ee8cc1Swenshuai.xi 39*53ee8cc1Swenshuai.xi 40*53ee8cc1Swenshuai.xi# ********************************************** 41*53ee8cc1Swenshuai.xi# Tool Chain Configuration 42*53ee8cc1Swenshuai.xi# ********************************************** 43*53ee8cc1Swenshuai.xi 44*53ee8cc1Swenshuai.xiifeq ($(TOOLCHAIN),mips-sde-elf) 45*53ee8cc1Swenshuai.xiCFG_STDLIB_DIR = $(ROOT)/tools/mips-sde-elf/EL_mips32r2_msoft-float 46*53ee8cc1Swenshuai.xiCFG_CC_OPTS += -$(ENDIAN) -mips32r2 -gdwarf-2 -G0 47*53ee8cc1Swenshuai.xi 48*53ee8cc1Swenshuai.xiifeq ($(FPU_ENABLE), 1) 49*53ee8cc1Swenshuai.xiCFG_CC_OPTS += -mhard-float 50*53ee8cc1Swenshuai.xiCFG_LD_OPTS += -$(ENDIAN) -mhard-float 51*53ee8cc1Swenshuai.xielse 52*53ee8cc1Swenshuai.xiCFG_CC_OPTS += -msoft-float 53*53ee8cc1Swenshuai.xiCFG_LD_OPTS += -$(ENDIAN) -msoft-float 54*53ee8cc1Swenshuai.xiendif 55*53ee8cc1Swenshuai.xi 56*53ee8cc1Swenshuai.xiCFG_AS_OPTS += -$(ENDIAN) -mips32 -gdwarf2 57*53ee8cc1Swenshuai.xiCFG_LINT = $(ROOT)/tools/lint/mips-sde-elf_include 58*53ee8cc1Swenshuai.xiCFG_TOOLCHAIN_VER = 4.3.2 59*53ee8cc1Swenshuai.xiendif 60*53ee8cc1Swenshuai.xi 61*53ee8cc1Swenshuai.xi 62*53ee8cc1Swenshuai.xi#### OBSOLETE #### 63*53ee8cc1Swenshuai.xiifeq ($(TOOLCHAIN),mipsisa32-elf) 64*53ee8cc1Swenshuai.xiCFG_STDLIB_DIR = $(ROOT)/tools/mipsisa32-elf/EL_mips32r2_msoft-float 65*53ee8cc1Swenshuai.xiifeq ($(FPU_ENABLE), 1) 66*53ee8cc1Swenshuai.xiCFG_CC_OPTS += -$(ENDIAN) -mips32 -gdwarf-2 -mhard-float -G0 67*53ee8cc1Swenshuai.xielse 68*53ee8cc1Swenshuai.xiCFG_CC_OPTS += -$(ENDIAN) -mips32 -gdwarf-2 -msoft-float -G0 69*53ee8cc1Swenshuai.xiendif 70*53ee8cc1Swenshuai.xiCFG_LD_OPTS += -$(ENDIAN) 71*53ee8cc1Swenshuai.xiCFG_AS_OPTS += -$(ENDIAN) -mips32 -gdwarf2 72*53ee8cc1Swenshuai.xiCFG_LINT = $(ROOT)/tools/lint/mipsisa32-elf_include 73*53ee8cc1Swenshuai.xiCFG_TOOLCHAIN_VER = 74*53ee8cc1Swenshuai.xiendif 75*53ee8cc1Swenshuai.xi#### OBSOLETE #### 76*53ee8cc1Swenshuai.xi 77*53ee8cc1Swenshuai.xi 78*53ee8cc1Swenshuai.xiifeq ($(TOOLCHAIN),mips2_fp_le) 79*53ee8cc1Swenshuai.xiCFG_STDLIB_DIR = 80*53ee8cc1Swenshuai.xiCFG_CC_OPTS += -mips32 -fPIC -G0 81*53ee8cc1Swenshuai.xiCFG_LD_OPTS += -$(ENDIAN) -fPIC 82*53ee8cc1Swenshuai.xiCFG_AS_OPTS += -$(ENDIAN) -mips32 83*53ee8cc1Swenshuai.xiCFG_LINT = 84*53ee8cc1Swenshuai.xiifeq ($(BLT_TYPE),debug) 85*53ee8cc1Swenshuai.xiCFG_CC_OPTS += -gdwarf-2 86*53ee8cc1Swenshuai.xiCFG_AS_OPTS += -gdwarf2 87*53ee8cc1Swenshuai.xiendif 88*53ee8cc1Swenshuai.xiCFG_TOOLCHAIN_VER = 89*53ee8cc1Swenshuai.xiendif 90*53ee8cc1Swenshuai.xi 91*53ee8cc1Swenshuai.xiifeq ($(TOOLCHAIN),arm-eabi) 92*53ee8cc1Swenshuai.xiifeq ($(PLATFORM), android) 93*53ee8cc1Swenshuai.xi# All flags in project/xxx_android_x.x/Makefile 94*53ee8cc1Swenshuai.xielse 95*53ee8cc1Swenshuai.xiifeq ($(CHIP),kaiser) 96*53ee8cc1Swenshuai.xiCFG_STDLIB_DIR = 97*53ee8cc1Swenshuai.xiCFG_CC_OPTS += -$(ENDIAN) -gdwarf-2 -march=armv7-a 98*53ee8cc1Swenshuai.xiCFG_LD_OPTS += -$(ENDIAN) -Wl,--fix-cortex-a9 99*53ee8cc1Swenshuai.xiCFG_AS_OPTS += -$(ENDIAN) -gdwarf-2 -march=armv7-a 100*53ee8cc1Swenshuai.xiifeq ($(FPU_ENABLE), 1) 101*53ee8cc1Swenshuai.xiCFG_CC_OPTS += -mfpu=neon -mfloat-abi=softfp 102*53ee8cc1Swenshuai.xielse 103*53ee8cc1Swenshuai.xiCFG_CC_OPTS += -mfpu=neon -mfloat-abi=soft 104*53ee8cc1Swenshuai.xiendif 105*53ee8cc1Swenshuai.xiCFG_TOOLCHAIN_VER = 106*53ee8cc1Swenshuai.xiendif 107*53ee8cc1Swenshuai.xiendif 108*53ee8cc1Swenshuai.xiendif 109*53ee8cc1Swenshuai.xi 110*53ee8cc1Swenshuai.xiifeq ($(TOOLCHAIN), arm-unknown-linux-gnueabi) 111*53ee8cc1Swenshuai.xiifeq ($(PLATFORM), android) 112*53ee8cc1Swenshuai.xi# All flags in project/xxx_googletv_x.x/Makefile 113*53ee8cc1Swenshuai.xielse 114*53ee8cc1Swenshuai.xiCFG_STDLIB_DIR = 115*53ee8cc1Swenshuai.xiCFG_CC_OPTS += -$(ENDIAN) 116*53ee8cc1Swenshuai.xiCFG_LD_OPTS += -$(ENDIAN) 117*53ee8cc1Swenshuai.xiCFG_AS_OPTS += -$(ENDIAN) -march=armv7-a -mfpu=neon 118*53ee8cc1Swenshuai.xiifeq ($(FPU_ENABLE), 1) 119*53ee8cc1Swenshuai.xiCFG_CC_OPTS += -mfloat-abi=softfp 120*53ee8cc1Swenshuai.xielse 121*53ee8cc1Swenshuai.xiCFG_CC_OPTS += -mfloat-abi=soft 122*53ee8cc1Swenshuai.xiendif 123*53ee8cc1Swenshuai.xiCFG_TOOLCHAIN_VER = 4.5.3 124*53ee8cc1Swenshuai.xiendif 125*53ee8cc1Swenshuai.xiendif 126*53ee8cc1Swenshuai.xi 127*53ee8cc1Swenshuai.xi 128*53ee8cc1Swenshuai.xiifeq ($(TOOLCHAIN),armv7a-cros-linux-gnueabi) 129*53ee8cc1Swenshuai.xiCFG_STDLIB_DIR = 130*53ee8cc1Swenshuai.xiCFG_CC_OPTS += -$(ENDIAN) -gdwarf-2 -fPIC -march=armv7-a 131*53ee8cc1Swenshuai.xiCFG_LD_OPTS += -$(ENDIAN) -fPIC 132*53ee8cc1Swenshuai.xiCFG_AS_OPTS += -$(ENDIAN) -gdwarf2 -march=armv7-a 133*53ee8cc1Swenshuai.xiifeq ($(FPU_ENABLE), 1) 134*53ee8cc1Swenshuai.xiCFG_CC_OPTS += -mfpu=neon -mfloat-abi=hard 135*53ee8cc1Swenshuai.xielse 136*53ee8cc1Swenshuai.xiCFG_CC_OPTS += -mfpu=vfpv3 -mfloat-abi=soft 137*53ee8cc1Swenshuai.xiendif 138*53ee8cc1Swenshuai.xiendif 139*53ee8cc1Swenshuai.xi 140*53ee8cc1Swenshuai.xi 141*53ee8cc1Swenshuai.xiifeq ($(TOOLCHAIN),arm-none-eabi) 142*53ee8cc1Swenshuai.xiCFG_STDLIB_DIR = 143*53ee8cc1Swenshuai.xiCFG_CC_OPTS += -$(ENDIAN) -gdwarf-2 -fPIC -march=armv7-a 144*53ee8cc1Swenshuai.xiifeq ($(OS_TYPE),ecos) 145*53ee8cc1Swenshuai.xiCFG_CC_OPTS += -fno-short-enums 146*53ee8cc1Swenshuai.xiendif 147*53ee8cc1Swenshuai.xiCFG_LD_OPTS += -$(ENDIAN) -fPIC 148*53ee8cc1Swenshuai.xiCFG_AS_OPTS += -$(ENDIAN) -gdwarf2 -march=armv7-a 149*53ee8cc1Swenshuai.xiifeq ($(FPU_ENABLE), 1) 150*53ee8cc1Swenshuai.xiCFG_CC_OPTS += -mfpu=neon -mfloat-abi=softfp 151*53ee8cc1Swenshuai.xielse 152*53ee8cc1Swenshuai.xiCFG_CC_OPTS += -mfpu=neon -mfloat-abi=soft 153*53ee8cc1Swenshuai.xiCFG_TOOLCHAIN_VER = 154*53ee8cc1Swenshuai.xiendif 155*53ee8cc1Swenshuai.xiendif 156*53ee8cc1Swenshuai.xi 157*53ee8cc1Swenshuai.xiifeq ($(TOOLCHAIN),arm-linux-gnueabihf) 158*53ee8cc1Swenshuai.xiCFG_STDLIB_DIR = 159*53ee8cc1Swenshuai.xiCFG_CC_OPTS += -$(ENDIAN) -gdwarf-2 -fPIC -march=armv7-a 160*53ee8cc1Swenshuai.xiCFG_LD_OPTS += -$(ENDIAN) -fPIC 161*53ee8cc1Swenshuai.xiCFG_AS_OPTS += -$(ENDIAN) -gdwarf2 -march=armv7-a 162*53ee8cc1Swenshuai.xiCFG_CC_EXTRA_OPTS += -fno-peephole2 -Wno-unused-but-set-variable 163*53ee8cc1Swenshuai.xiexport PATH := /tools/arm/MStar/linaro-4.9.3-2014.11-arm-linux-gnueabihf/bin/:$(PATH) 164*53ee8cc1Swenshuai.xiCFG_CC_OPTS += -mfpu=neon -mfloat-abi=hard 165*53ee8cc1Swenshuai.xiCFG_TOOLCHAIN_VER = 166*53ee8cc1Swenshuai.xiendif 167*53ee8cc1Swenshuai.xi 168*53ee8cc1Swenshuai.xiifeq ($(TOOLCHAIN),arm-none-linux-gnueabi) 169*53ee8cc1Swenshuai.xiifeq ($(CHIP), $(filter $(CHIP), eagle eiffel)) 170*53ee8cc1Swenshuai.xiCFG_STDLIB_DIR = 171*53ee8cc1Swenshuai.xiCFG_CC_OPTS += -$(ENDIAN) -gdwarf-2 -fPIC -march=armv7-a 172*53ee8cc1Swenshuai.xiCFG_LD_OPTS += -$(ENDIAN) -fPIC 173*53ee8cc1Swenshuai.xiCFG_AS_OPTS += -$(ENDIAN) -gdwarf2 -march=armv7-a 174*53ee8cc1Swenshuai.xiifeq ($(FPU_ENABLE), 1) 175*53ee8cc1Swenshuai.xiCFG_CC_OPTS += -mfpu=neon -mfloat-abi=softfp 176*53ee8cc1Swenshuai.xielse 177*53ee8cc1Swenshuai.xiCFG_CC_OPTS += -mfpu=vfpv3 -mfloat-abi=soft 178*53ee8cc1Swenshuai.xiendif 179*53ee8cc1Swenshuai.xiCFG_TOOLCHAIN_VER = 4.5.1 180*53ee8cc1Swenshuai.xielse 181*53ee8cc1Swenshuai.xi 182*53ee8cc1Swenshuai.xiifeq ($(CHIP),kaiser) 183*53ee8cc1Swenshuai.xiCFG_STDLIB_DIR = 184*53ee8cc1Swenshuai.xiCFG_CC_OPTS += -$(ENDIAN) -gdwarf-2 -fPIC -march=armv7-a -mcpu=cortex-a9 185*53ee8cc1Swenshuai.xiCFG_LD_OPTS += -$(ENDIAN) -fPIC 186*53ee8cc1Swenshuai.xiCFG_AS_OPTS += -$(ENDIAN) -gdwarf2 -march=armv7-a -mcpu=cortex-a9 187*53ee8cc1Swenshuai.xiifeq ($(FPU_ENABLE), 1) 188*53ee8cc1Swenshuai.xiCFG_CC_OPTS += -mfpu=neon -mfloat-abi=softfp 189*53ee8cc1Swenshuai.xielse 190*53ee8cc1Swenshuai.xiCFG_CC_OPTS += -mfpu=vfpv3 -mfloat-abi=soft 191*53ee8cc1Swenshuai.xiendif 192*53ee8cc1Swenshuai.xiCFG_TOOLCHAIN_VER = 193*53ee8cc1Swenshuai.xielse 194*53ee8cc1Swenshuai.xi 195*53ee8cc1Swenshuai.xiifeq ($(CHIP), $(filter $(CHIP), einstein nike madison miami napoli einstein3 monaco clippers muji munich celtics monet manhattan messi maserati maxim kano k6 curry k6lite k7u M7821 M7621 mustang)) 196*53ee8cc1Swenshuai.xiCFG_STDLIB_DIR = 197*53ee8cc1Swenshuai.xiCFG_CC_OPTS += -$(ENDIAN) -gdwarf-2 -fPIC -march=armv7-a 198*53ee8cc1Swenshuai.xiCFG_LD_OPTS += -$(ENDIAN) -fPIC 199*53ee8cc1Swenshuai.xiCFG_AS_OPTS += -$(ENDIAN) -gdwarf2 -march=armv7-a 200*53ee8cc1Swenshuai.xiCFG_CC_EXTRA_OPTS += -fno-peephole2 -Wno-unused-but-set-variable 201*53ee8cc1Swenshuai.xiexport PATH := /tools/arm/arm-2012.09/bin/:/tools/arm/Google/armv7a-491/bin/:$(PATH) 202*53ee8cc1Swenshuai.xiifeq ($(FPU_ENABLE), 1) 203*53ee8cc1Swenshuai.xiCFG_CC_OPTS += -mfpu=neon -mfloat-abi=softfp 204*53ee8cc1Swenshuai.xielse 205*53ee8cc1Swenshuai.xiCFG_CC_OPTS += -mfpu=vfpv3 -mfloat-abi=soft 206*53ee8cc1Swenshuai.xiendif 207*53ee8cc1Swenshuai.xiCFG_TOOLCHAIN_VER = 208*53ee8cc1Swenshuai.xielse 209*53ee8cc1Swenshuai.xi 210*53ee8cc1Swenshuai.xiCFG_STDLIB_DIR = 211*53ee8cc1Swenshuai.xiCFG_CC_OPTS += -$(ENDIAN) -gdwarf-2 -fPIC -march=armv7-a -mfpu=vfpv3 212*53ee8cc1Swenshuai.xiCFG_LD_OPTS += -$(ENDIAN) -fPIC 213*53ee8cc1Swenshuai.xiCFG_AS_OPTS += -$(ENDIAN) -gdwarf2 -march=armv7-a -mfpu=vfpv3 214*53ee8cc1Swenshuai.xiifeq ($(FPU_ENABLE), 1) 215*53ee8cc1Swenshuai.xiCFG_CC_OPTS += -mfloat-abi=softfp 216*53ee8cc1Swenshuai.xielse 217*53ee8cc1Swenshuai.xiCFG_CC_OPTS += -mfloat-abi=soft 218*53ee8cc1Swenshuai.xiendif 219*53ee8cc1Swenshuai.xiCFG_TOOLCHAIN_VER = 4.5.1 220*53ee8cc1Swenshuai.xiendif 221*53ee8cc1Swenshuai.xiendif 222*53ee8cc1Swenshuai.xiendif 223*53ee8cc1Swenshuai.xiendif 224*53ee8cc1Swenshuai.xi 225*53ee8cc1Swenshuai.xiifeq ($(TOOLCHAIN), aarch64-none-elf) 226*53ee8cc1Swenshuai.xiCFG_STDLIB_DIR = 227*53ee8cc1Swenshuai.xiCFG_CC_OPTS += -$(ENDIAN) -gdwarf-2 -fPIC -march=armv8-a -mabi=lp64 -Werror=int-to-pointer-cast -Werror=pointer-to-int-cast -Wno-unused-but-set-variable 228*53ee8cc1Swenshuai.xiCFG_LD_OPTS += -$(ENDIAN) -fPIC 229*53ee8cc1Swenshuai.xiCFG_AS_OPTS += -$(ENDIAN) -gdwarf2 -march=armv8-a -mabi=lp64 -mcpu=cortex-a53 230*53ee8cc1Swenshuai.xiifeq ($(FPU_ENABLE), 1) 231*53ee8cc1Swenshuai.xiCFG_CC_OPTS += -mcpu=cortex-a53+fp 232*53ee8cc1Swenshuai.xielse 233*53ee8cc1Swenshuai.xiCFG_CC_OPTS += -mcpu=cortex-a53 234*53ee8cc1Swenshuai.xiCFG_TOOLCHAIN_VER = 235*53ee8cc1Swenshuai.xiendif 236*53ee8cc1Swenshuai.xiendif 237*53ee8cc1Swenshuai.xi 238*53ee8cc1Swenshuai.xiifeq ($(TOOLCHAIN), aarch64-linux-gnu) 239*53ee8cc1Swenshuai.xiifeq ($(CHIP), $(filter $(CHIP), muji manhattan messi maserati maxim kano k6 curry k7u M7821 M7621)) 240*53ee8cc1Swenshuai.xiCFG_STDLIB_DIR = 241*53ee8cc1Swenshuai.xiCFG_CC_OPTS += -$(ENDIAN) -gdwarf-2 -fPIC -march=armv8-a -mabi=lp64 -Werror=int-to-pointer-cast -Werror=pointer-to-int-cast -Wno-unused-but-set-variable 242*53ee8cc1Swenshuai.xiCFG_LD_OPTS += -$(ENDIAN) -fPIC -Wl,-fix-cortex-a53-843419 243*53ee8cc1Swenshuai.xiCFG_AS_OPTS += -$(ENDIAN) -gdwarf2 -march=armv8-a -mabi=lp64 -mcpu=cortex-a53 244*53ee8cc1Swenshuai.xiexport PATH := /tools/arm/MStar/linaro-aarch64_linux-2014.09_843419-patched/bin/:$(PATH) 245*53ee8cc1Swenshuai.xiifeq ($(FPU_ENABLE), 1) 246*53ee8cc1Swenshuai.xiCFG_CC_OPTS += -mcpu=cortex-a53+fp 247*53ee8cc1Swenshuai.xielse 248*53ee8cc1Swenshuai.xiCFG_CC_OPTS += -mcpu=cortex-a53 249*53ee8cc1Swenshuai.xiCFG_TOOLCHAIN_VER = 250*53ee8cc1Swenshuai.xiendif 251*53ee8cc1Swenshuai.xielse 252*53ee8cc1Swenshuai.xiCFG_STDLIB_DIR = 253*53ee8cc1Swenshuai.xiCFG_CC_OPTS += -$(ENDIAN) -gdwarf-2 -fPIC -march=armv8-a -mabi=lp64 -Werror=int-to-pointer-cast -Werror=pointer-to-int-cast -Wno-unused-but-set-variable 254*53ee8cc1Swenshuai.xiCFG_LD_OPTS += -$(ENDIAN) -fPIC 255*53ee8cc1Swenshuai.xiCFG_AS_OPTS += -$(ENDIAN) -gdwarf2 -march=armv8-a -mabi=lp64 -mcpu=cortex-a53 256*53ee8cc1Swenshuai.xiifeq ($(FPU_ENABLE), 1) 257*53ee8cc1Swenshuai.xiCFG_CC_OPTS += -mcpu=cortex-a53+fp 258*53ee8cc1Swenshuai.xielse 259*53ee8cc1Swenshuai.xiCFG_CC_OPTS += -mcpu=cortex-a53 260*53ee8cc1Swenshuai.xiCFG_TOOLCHAIN_VER = 261*53ee8cc1Swenshuai.xiendif 262*53ee8cc1Swenshuai.xiendif 263*53ee8cc1Swenshuai.xiendif 264*53ee8cc1Swenshuai.xi 265*53ee8cc1Swenshuai.xiifeq ($(TOOLCHAIN_ALIAS), mips-linux-gnu-uclibc) 266*53ee8cc1Swenshuai.xiTOOLCHAIN = mips-linux-gnu 267*53ee8cc1Swenshuai.xiifeq ($(TOOLCHAIN),mips-linux-gnu) 268*53ee8cc1Swenshuai.xiifeq ($(PLATFORM), android) 269*53ee8cc1Swenshuai.xiCFG_STDLIB_DIR = 270*53ee8cc1Swenshuai.xiCFG_CC_OPTS += -$(ENDIAN) -fPIC -march=mips32r2 -mtune=mips32r2 -mips32r2 -G0 -muclibc 271*53ee8cc1Swenshuai.xiCFG_LD_OPTS += -$(ENDIAN) -fPIC -muclibc 272*53ee8cc1Swenshuai.xiCFG_AS_OPTS += -$(ENDIAN) -march=mips32r2 -mtune=mips32r2 -mips32r2 273*53ee8cc1Swenshuai.xi#CFG_LINT = 274*53ee8cc1Swenshuai.xiifeq ($(FPU_ENABLE), 1) 275*53ee8cc1Swenshuai.xiCFG_CC_OPTS += -mhard-float 276*53ee8cc1Swenshuai.xielse 277*53ee8cc1Swenshuai.xiCFG_CC_OPTS += -msoft-float 278*53ee8cc1Swenshuai.xiendif 279*53ee8cc1Swenshuai.xiCFG_TOOLCHAIN_VER = 4.4.3 280*53ee8cc1Swenshuai.xi 281*53ee8cc1Swenshuai.xielse # PLATFORM != android 282*53ee8cc1Swenshuai.xiCFG_STDLIB_DIR = 283*53ee8cc1Swenshuai.xiCFG_CC_OPTS += -$(ENDIAN) -gdwarf-2 -fPIC -G0 -muclibc 284*53ee8cc1Swenshuai.xiCFG_LD_OPTS += -$(ENDIAN) -fPIC -muclibc 285*53ee8cc1Swenshuai.xiCFG_AS_OPTS += -$(ENDIAN) -gdwarf2 286*53ee8cc1Swenshuai.xiCFG_LINT = $(ROOT)/tools/lint/mips-linux-gnu_include 287*53ee8cc1Swenshuai.xiifeq ($(MIPS16_ENABLE), 1) 288*53ee8cc1Swenshuai.xiCFG_CC_OPTS += -mips16 -D__MIPS16E__ 289*53ee8cc1Swenshuai.xiCFG_AS_OPTS += -mips16 -D__MIPS16E__ 290*53ee8cc1Swenshuai.xielse 291*53ee8cc1Swenshuai.xiCFG_CC_OPTS += -mips32 292*53ee8cc1Swenshuai.xiCFG_AS_OPTS += -mips32 293*53ee8cc1Swenshuai.xiendif 294*53ee8cc1Swenshuai.xiifeq ($(FPU_ENABLE), 1) 295*53ee8cc1Swenshuai.xiCFG_CC_OPTS += -mhard-float 296*53ee8cc1Swenshuai.xielse 297*53ee8cc1Swenshuai.xiCFG_CC_OPTS += -msoft-float 298*53ee8cc1Swenshuai.xiendif 299*53ee8cc1Swenshuai.xiCFG_TOOLCHAIN_VER = 300*53ee8cc1Swenshuai.xiendif 301*53ee8cc1Swenshuai.xiendif 302*53ee8cc1Swenshuai.xi 303*53ee8cc1Swenshuai.xielse # TOOLCHAIN_ALIAS != mips-linux-gnu-uclibc 304*53ee8cc1Swenshuai.xiifeq ($(TOOLCHAIN),mips-linux-gnu) 305*53ee8cc1Swenshuai.xiifeq ($(PLATFORM), android) 306*53ee8cc1Swenshuai.xiCFG_STDLIB_DIR = 307*53ee8cc1Swenshuai.xiCFG_CC_OPTS += -$(ENDIAN) -fPIC -march=mips32r2 -mtune=mips32r2 -mips32r2 -G0 308*53ee8cc1Swenshuai.xiCFG_LD_OPTS += -$(ENDIAN) -fPIC 309*53ee8cc1Swenshuai.xiCFG_AS_OPTS += -$(ENDIAN) -march=mips32r2 -mtune=mips32r2 -mips32r2 310*53ee8cc1Swenshuai.xi#CFG_LINT = 311*53ee8cc1Swenshuai.xiifeq ($(FPU_ENABLE), 1) 312*53ee8cc1Swenshuai.xiCFG_CC_OPTS += -mhard-float 313*53ee8cc1Swenshuai.xielse 314*53ee8cc1Swenshuai.xiCFG_CC_OPTS += -msoft-float 315*53ee8cc1Swenshuai.xiendif 316*53ee8cc1Swenshuai.xiCFG_TOOLCHAIN_VER = 4.4.3 317*53ee8cc1Swenshuai.xi 318*53ee8cc1Swenshuai.xielse # PLATFORM != android 319*53ee8cc1Swenshuai.xiCFG_STDLIB_DIR = 320*53ee8cc1Swenshuai.xiCFG_CC_OPTS += -$(ENDIAN) -gdwarf-2 -fPIC -G0 321*53ee8cc1Swenshuai.xiCFG_LD_OPTS += -$(ENDIAN) -fPIC 322*53ee8cc1Swenshuai.xiCFG_AS_OPTS += -$(ENDIAN) -gdwarf2 323*53ee8cc1Swenshuai.xiCFG_LINT = $(ROOT)/tools/lint/mips-linux-gnu_include 324*53ee8cc1Swenshuai.xiifeq ($(MIPS16_ENABLE), 1) 325*53ee8cc1Swenshuai.xiCFG_CC_OPTS += -mips16 -D__MIPS16E__ 326*53ee8cc1Swenshuai.xiCFG_AS_OPTS += -mips16 -D__MIPS16E__ 327*53ee8cc1Swenshuai.xielse 328*53ee8cc1Swenshuai.xiCFG_CC_OPTS += -mips32 329*53ee8cc1Swenshuai.xiCFG_AS_OPTS += -mips32 330*53ee8cc1Swenshuai.xiendif 331*53ee8cc1Swenshuai.xiifeq ($(FPU_ENABLE), 1) 332*53ee8cc1Swenshuai.xiCFG_CC_OPTS += -mhard-float 333*53ee8cc1Swenshuai.xielse 334*53ee8cc1Swenshuai.xiCFG_CC_OPTS += -msoft-float 335*53ee8cc1Swenshuai.xiendif 336*53ee8cc1Swenshuai.xiCFG_TOOLCHAIN_VER = 337*53ee8cc1Swenshuai.xiendif 338*53ee8cc1Swenshuai.xiendif 339*53ee8cc1Swenshuai.xiendif 340*53ee8cc1Swenshuai.xi 341*53ee8cc1Swenshuai.xiifeq ($(TOOLCHAIN),aeon-linux) 342*53ee8cc1Swenshuai.xiCFG_STDLIB_DIR = 343*53ee8cc1Swenshuai.xiCFG_CC_OPTS += -$(ENDIAN) -march=aeonR2 -fPIC -G0 344*53ee8cc1Swenshuai.xiCFG_LD_OPTS += 345*53ee8cc1Swenshuai.xiCFG_AS_OPTS += -$(ENDIAN) 346*53ee8cc1Swenshuai.xiCFG_LINT = $(ROOT)/tools/lint/aeon_include 347*53ee8cc1Swenshuai.xiifeq ($(COPRO_TYPE), R2) 348*53ee8cc1Swenshuai.xiCFG_CC_OPTS += -march=aeonR2 349*53ee8cc1Swenshuai.xiCFG_TOOLCHAIN_VER = 4.4.3 350*53ee8cc1Swenshuai.xiPATH:=/tools/aeon-elf443/aeon-elf-linux/bin:$(PATH) 351*53ee8cc1Swenshuai.xiexport PATH 352*53ee8cc1Swenshuai.xiendif 353*53ee8cc1Swenshuai.xiifeq ($(COPRO_TYPE), AEON) 354*53ee8cc1Swenshuai.xiCFG_TOOLCHAIN_VER = 4.1.2 355*53ee8cc1Swenshuai.xiPATH:=/tools/aeon/bin:$(PATH) 356*53ee8cc1Swenshuai.xiexport PATH 357*53ee8cc1Swenshuai.xiendif 358*53ee8cc1Swenshuai.xiifeq ($(CHIP), maria10) 359*53ee8cc1Swenshuai.xiCFG_TOOLCHAIN_VER = 4.1.2 360*53ee8cc1Swenshuai.xiPATH:=/tools/aeon/bin:$(PATH) 361*53ee8cc1Swenshuai.xiexport PATH 362*53ee8cc1Swenshuai.xiendif 363*53ee8cc1Swenshuai.xiifeq ($(CHIP), macaw12) 364*53ee8cc1Swenshuai.xiCFG_TOOLCHAIN_VER = 4.1.2 365*53ee8cc1Swenshuai.xiPATH:=/tools/aeon/bin:$(PATH) 366*53ee8cc1Swenshuai.xiexport PATH 367*53ee8cc1Swenshuai.xiendif 368*53ee8cc1Swenshuai.xiendif 369*53ee8cc1Swenshuai.xi 370*53ee8cc1Swenshuai.xiifeq ($(TOOLCHAIN),aeon) 371*53ee8cc1Swenshuai.xiCFG_STDLIB_DIR = 372*53ee8cc1Swenshuai.xiCFG_CC_OPTS += -$(ENDIAN) -mredzone-size=4 -mhard-mul -mhard-div -G0 373*53ee8cc1Swenshuai.xiCFG_LD_OPTS += 374*53ee8cc1Swenshuai.xiCFG_AS_OPTS += -$(ENDIAN) 375*53ee8cc1Swenshuai.xiCFG_LINT = $(ROOT)/tools/lint/aeon_include 376*53ee8cc1Swenshuai.xiifeq ($(COPRO_TYPE), R2) 377*53ee8cc1Swenshuai.xiCFG_CC_OPTS += -march=aeonR2 378*53ee8cc1Swenshuai.xiCFG_TOOLCHAIN_VER = 4.4.3 379*53ee8cc1Swenshuai.xiPATH:=/tools/aeon-elf443/aeon-elf-linux/bin:$(PATH) 380*53ee8cc1Swenshuai.xiexport PATH 381*53ee8cc1Swenshuai.xiendif 382*53ee8cc1Swenshuai.xiifeq ($(COPRO_TYPE), AEON) 383*53ee8cc1Swenshuai.xiCFG_TOOLCHAIN_VER = 4.1.2 384*53ee8cc1Swenshuai.xiPATH:=/tools/aeon/bin:$(PATH) 385*53ee8cc1Swenshuai.xiexport PATH 386*53ee8cc1Swenshuai.xiendif 387*53ee8cc1Swenshuai.xiifeq ($(CHIP), maria10) 388*53ee8cc1Swenshuai.xiCFG_TOOLCHAIN_VER = 4.1.2 389*53ee8cc1Swenshuai.xiPATH:=/tools/aeon/bin:$(PATH) 390*53ee8cc1Swenshuai.xiexport PATH 391*53ee8cc1Swenshuai.xiendif 392*53ee8cc1Swenshuai.xiifeq ($(CHIP), macaw12) 393*53ee8cc1Swenshuai.xiCFG_TOOLCHAIN_VER = 4.1.2 394*53ee8cc1Swenshuai.xiPATH:=/tools/aeon/bin:$(PATH) 395*53ee8cc1Swenshuai.xiexport PATH 396*53ee8cc1Swenshuai.xiendif 397*53ee8cc1Swenshuai.xiifeq ($(CHIP), eden) 398*53ee8cc1Swenshuai.xiCFG_TOOLCHAIN_VER = 4.1.2 399*53ee8cc1Swenshuai.xiPATH:=/tools/aeon/bin:$(PATH) 400*53ee8cc1Swenshuai.xiexport PATH 401*53ee8cc1Swenshuai.xiendif 402*53ee8cc1Swenshuai.xiifeq ($(CHIP), euler) 403*53ee8cc1Swenshuai.xiCFG_TOOLCHAIN_VER = 4.1.2 404*53ee8cc1Swenshuai.xiPATH:=/tools/aeon/bin:$(PATH) 405*53ee8cc1Swenshuai.xiexport PATH 406*53ee8cc1Swenshuai.xiendif 407*53ee8cc1Swenshuai.xiendif 408*53ee8cc1Swenshuai.xi 409*53ee8cc1Swenshuai.xiifeq ($(GCOV), 1) 410*53ee8cc1Swenshuai.xiCFG_CC_OPTS += -fprofile-arcs -ftest-coverage 411*53ee8cc1Swenshuai.xiendif 412*53ee8cc1Swenshuai.xi 413*53ee8cc1Swenshuai.xiifeq ($(PARA), 1) 414*53ee8cc1Swenshuai.xiCC = cpptestscan --cpptestscanProjectName=unittest $(TOOLCHAIN)-gcc 415*53ee8cc1Swenshuai.xiAS = cpptestscan --cpptestscanProjectName=unittest $(TOOLCHAIN)-as 416*53ee8cc1Swenshuai.xiLD = cpptestscan --cpptestscanProjectName=unittest $(TOOLCHAIN)-ld 417*53ee8cc1Swenshuai.xiAR = cpptestscan --cpptestscanProjectName=unittest $(TOOLCHAIN)-ar 418*53ee8cc1Swenshuai.xielse 419*53ee8cc1Swenshuai.xi 420*53ee8cc1Swenshuai.xiifeq ($(CFG_TOOLCHAIN_VER),) 421*53ee8cc1Swenshuai.xiCC = $(TOOLCHAIN)-gcc 422*53ee8cc1Swenshuai.xiAS = $(TOOLCHAIN)-as 423*53ee8cc1Swenshuai.xielse 424*53ee8cc1Swenshuai.xiCC = $(TOOLCHAIN)-gcc -V $(CFG_TOOLCHAIN_VER) 425*53ee8cc1Swenshuai.xiAS = $(TOOLCHAIN)-as 426*53ee8cc1Swenshuai.xiendif 427*53ee8cc1Swenshuai.xi 428*53ee8cc1Swenshuai.xiLD = $(TOOLCHAIN)-ld 429*53ee8cc1Swenshuai.xiAR = $(TOOLCHAIN)-ar 430*53ee8cc1Swenshuai.xiendif 431*53ee8cc1Swenshuai.xiOBJCOPY = $(TOOLCHAIN)-objcopy 432*53ee8cc1Swenshuai.xiOBJDUMP = $(TOOLCHAIN)-objdump 433*53ee8cc1Swenshuai.xiSIZE = $(TOOLCHAIN)-size 434*53ee8cc1Swenshuai.xiNM = $(TOOLCHAIN)-nm 435*53ee8cc1Swenshuai.xiSTRIP = $(TOOLCHAIN)-strip 436