1import os 2 3if os.getenv('RTT_ROOT'): 4 RTT_ROOT = os.getenv('RTT_ROOT') 5else: 6 RTT_ROOT = '../..' 7 8# CPU options 9ARCH='mips' 10CPU ='common' 11 12# toolchains options 13CROSS_TOOL = 'gcc' 14 15if os.getenv('RTT_CC'): 16 CROSS_TOOL = os.getenv('RTT_CC') 17 18if CROSS_TOOL == 'gcc': 19 PLATFORM = 'gcc' 20 EXEC_PATH = "/opt/mips-2016.05/bin" 21# EXEC_PATH = r'D:\mgc\embedded\codebench\bin' 22else: 23 print('================ERROR===========================') 24 print('Not support %s yet!' % CROSS_TOOL) 25 print('=================================================') 26 exit(0) 27 28if os.getenv('RTT_EXEC_PATH'): 29 EXEC_PATH = os.getenv('RTT_EXEC_PATH') 30 31BUILD = 'debug' 32 33PREFIX = 'mips-sde-elf-' 34CC = PREFIX + 'gcc' 35AS = PREFIX + 'gcc' 36AR = PREFIX + 'ar' 37LINK = PREFIX + 'gcc' 38TARGET_EXT = 'elf' 39SIZE = PREFIX + 'size' 40OBJDUMP = PREFIX + 'objdump' 41OBJCPY = PREFIX + 'objcopy' 42READELF = PREFIX + 'readelf' 43 44DEVICE = ' -mips32r2 -msoft-float -mfp32' 45CFLAGS = DEVICE + ' -EL -G0 -mno-abicalls -fno-pic -fno-builtin -fno-exceptions -ffunction-sections -fomit-frame-pointer' 46AFLAGS = ' -c' + DEVICE + ' -EL -fno-pic -fno-builtin -mno-abicalls -x assembler-with-cpp' 47LFLAGS = DEVICE + ' -nostartfiles -EL -Wl,--gc-sections,-Map=rtthread.map,-cref,-u,Reset_Handler -T mipssim_ram.lds' 48CXXFLAGS = CFLAGS 49 50CPATH = '' 51LPATH = '' 52 53if BUILD == 'debug': 54 CFLAGS += ' -O0 -gdwarf-2' 55 AFLAGS += ' -gdwarf-2' 56else: 57 CFLAGS += ' -O2' 58 59DUMP_ACTION = OBJDUMP + ' -D -S $TARGET > rtt.asm\n' 60READELF_ACTION = READELF + ' -a $TARGET > rtt.map\n' 61POST_ACTION = OBJCPY + ' -O binary $TARGET rtthread.bin\n' + SIZE + ' $TARGET \n' 62