rtconfig.py 2.6 KB

123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103104105106107108109110111112113114
  1. # toolchains options
  2. ARCH='sim'
  3. #CROSS_TOOL='msvc' or 'gcc' or 'mingw' (mingw is not supported yet!)
  4. CROSS_TOOL='mingw'
  5. # cross_tool provides the cross compiler
  6. # EXEC_PATH is the compiler execute path
  7. if CROSS_TOOL == 'gcc':
  8. CPU = 'posix'
  9. PLATFORM = 'gcc'
  10. EXEC_PATH = '/usr/bin/gcc'
  11. elif CROSS_TOOL == 'mingw':
  12. CPU = 'win32'
  13. PLATFORM = 'mingw'
  14. EXEC_PATH = r'D:\Program Files\CodeBlocks\MinGW\bin'
  15. elif CROSS_TOOL == 'msvc':
  16. CPU = 'win32'
  17. PLATFORM = 'cl'
  18. EXEC_PATH = ''
  19. else :
  20. print "bad CROSS TOOL!"
  21. exit(1)
  22. BUILD = 'debug'
  23. #BUILD = ''
  24. if PLATFORM == 'gcc':
  25. # toolchains
  26. PREFIX = ''
  27. CC = PREFIX + 'gcc'
  28. AS = PREFIX + 'gcc'
  29. AR = PREFIX + 'ar'
  30. LINK = PREFIX + 'gcc'
  31. TARGET_EXT = 'axf'
  32. SIZE = PREFIX + 'size'
  33. OBJDUMP = PREFIX + 'objdump'
  34. OBJCPY = PREFIX + 'objcopy'
  35. DEVICE = ' -ffunction-sections -fdata-sections'
  36. DEVICE = ' '
  37. CFLAGS = DEVICE + ' -I/usr/include -w -D_REENTRANT'
  38. AFLAGS = ' -c' + DEVICE + ' -x assembler-with-cpp'
  39. #LFLAGS = DEVICE + ' -Wl,--gc-sections,-Map=rtthread-linux.map -lpthread'
  40. LFLAGS = DEVICE + ' -Wl,-Map=rtthread-linux.map -pthread -T gcc.ld'
  41. CPATH = ''
  42. LPATH = ''
  43. if BUILD == 'debug':
  44. CFLAGS += ' -g -O0 -gdwarf-2'
  45. AFLAGS += ' -gdwarf-2'
  46. else:
  47. CFLAGS += ' -O2'
  48. POST_ACTION = ''
  49. elif PLATFORM == 'mingw':
  50. # toolchains
  51. PREFIX = ''
  52. CC = PREFIX + 'gcc'
  53. AS = PREFIX + 'gcc'
  54. AR = PREFIX + 'ar'
  55. LINK = PREFIX + 'gcc'
  56. TARGET_EXT = 'exe'
  57. SIZE = PREFIX + 'size'
  58. OBJDUMP = PREFIX + 'objdump'
  59. OBJCPY = PREFIX + 'objcopy'
  60. DEVICE = ' -ffunction-sections -fdata-sections'
  61. DEVICE = ' '
  62. CFLAGS = DEVICE
  63. AFLAGS = ' -c' + DEVICE + ' -x assembler-with-cpp'
  64. DEFFILE_LFLAGS = DEVICE + ' -Wl,-Map=rtthread-win32.map,--output-def,rtthread.def -T mingw.ld '
  65. LFLAGS = DEVICE + ' -Wl,-Map=rtthread-win32.map -T mingw.ld '
  66. CPATH = ''
  67. LPATH = ''
  68. if BUILD == 'debug':
  69. CFLAGS += ' -g -O0 -gdwarf-2'
  70. AFLAGS += ' -gdwarf-2'
  71. else:
  72. CFLAGS += ' -O2'
  73. POST_ACTION = ''
  74. elif PLATFORM == 'cl':
  75. # toolchains
  76. PREFIX = ''
  77. TARGET_EXT = 'exe'
  78. AS = PREFIX + 'cl'
  79. CC = PREFIX + 'cl'
  80. AR = PREFIX + 'cl'
  81. LINK = PREFIX + 'cl'
  82. AFLAGS = ''
  83. CFLAGS = ''
  84. LFLAGS = ''
  85. if BUILD == 'debug':
  86. CFLAGS += ' /MTd'
  87. LFLAGS += ' /DEBUG'
  88. else:
  89. CFLAGS += ' /MT'
  90. LFLAGS += ''
  91. CFLAGS += ' /ZI /Od /W 3 /WL '
  92. LFLAGS += ' /SUBSYSTEM:CONSOLE /MACHINE:X86 '
  93. CPATH = ''
  94. LPATH = ''
  95. POST_ACTION = ''