1import os 2 3# toolchains options 4ARCH='arm' 5CPU='cortex-m3' 6CROSS_TOOL='keil' 7 8print("############rtconfig##############") 9 10# cross_tool provides the cross compiler 11# EXEC_PATH is the compiler execute path, for example, CodeSourcery, Keil MDK, IAR 12if CROSS_TOOL == 'keil': 13 PLATFORM = 'armcc' 14 EXEC_PATH = r'D:\Keil_v5' 15 16if os.getenv('RTT_EXEC_PATH'): 17 EXEC_PATH = os.getenv('RTT_EXEC_PATH') 18 19BUILD = 'debug' 20MCU_TYPE = 'TAE32F53xx' 21 22if PLATFORM == 'armcc': 23 # toolchains 24 CC = 'armcc' 25 AS = 'armasm' 26 AR = 'armar' 27 LINK = 'armlink' 28 TARGET_EXT = 'axf' 29 30 DEVICE = ' --cpu ' + CPU 31 CFLAGS = '-c ' + DEVICE + ' --apcs=interwork --c99' 32 AFLAGS = DEVICE + ' --apcs=interwork ' 33 LFLAGS = DEVICE + ' --scatter "drivers/linker_scripts/tae32f53xx_ac5_sram.sct" --info sizes --info totals --info unused --info veneers --list rtthread.map --strict' 34 35 CFLAGS += ' -I' + EXEC_PATH + '/ARM/ARMCC/INC' 36 LFLAGS += ' --libpath ' + EXEC_PATH + '/ARM/ARMCC/LIB' 37 38 CFLAGS += ' -D__MICROLIB ' 39 AFLAGS += ' --pd "__MICROLIB SETA 1" ' 40 LFLAGS += ' --library_type=microlib ' 41 EXEC_PATH += '/arm/armcc/bin/' 42 43 if BUILD == 'debug': 44 CFLAGS += ' -g -O0' 45 AFLAGS += ' -g' 46 else: 47 CFLAGS += ' -O2' 48 49 POST_ACTION = 'fromelf --bin $TARGET --output rtthread.bin \nfromelf -z $TARGET' 50