rtconfig.py 1.3 KB

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