Browse Source

update the rtconfig.py and SConstruct in the BSP
in order to use buildbot.py

git-svn-id: https://rt-thread.googlecode.com/svn/trunk@2028 bbd45198-f89e-11dd-88c7-29a3b14d5316

dzzxzz@gmail.com 13 năm trước cách đây
mục cha
commit
a7810e12b9

+ 5 - 1
bsp/at91sam9260/SConstruct

@@ -2,7 +2,11 @@ import os
 import sys
 import rtconfig
 
-RTT_ROOT = os.path.normpath(os.getcwd() + '/../..')
+if os.getenv('RTT_ROOT'):
+    RTT_ROOT = os.getenv('RTT_ROOT')
+else:
+    RTT_ROOT = os.path.normpath(os.getcwd() + '/../..')
+
 sys.path = sys.path + [os.path.join(RTT_ROOT, 'tools')]
 from building import *
 

+ 13 - 11
bsp/at91sam9260/rtconfig.py

@@ -1,3 +1,4 @@
+import os
 
 # toolchains options
 ARCH     = 'arm'
@@ -6,12 +7,24 @@ TextBase = '0x20000000'
 
 CROSS_TOOL 	= 'gcc'
 
+if os.getenv('RTT_CC'):
+	CROSS_TOOL = os.getenv('RTT_CC')
+
 if  CROSS_TOOL == 'gcc':
 	PLATFORM 	= 'gcc'
 	EXEC_PATH 	= '/opt/arm-2010q1/bin/'
 elif CROSS_TOOL == 'keil':
 	PLATFORM 	= 'armcc'
 	EXEC_PATH 	= 'E:/Keil'
+elif CROSS_TOOL == 'iar':
+    print '================ERROR============================'
+    print 'Not support yet!'
+    print '================================================='
+    exit(0)
+
+if os.getenv('RTT_EXEC_PATH'):
+	EXEC_PATH = os.getenv('RTT_EXEC_PATH')
+
 #BUILD = 'debug'
 BUILD = 'release'
 
@@ -69,14 +82,3 @@ elif PLATFORM == 'armcc':
         CFLAGS += ' -O2'
 
     POST_ACTION = 'fromelf --bin $TARGET --output rtthread.bin \nfromelf -z $TARGET'
-
-elif PLATFORM == 'iar':
-    # toolchains
-    CC = 'armcc'
-    AS = 'armasm'
-    AR = 'armar'
-    LINK = 'armlink'
-
-    CFLAGS = ''
-    AFLAGS = ''
-    LFLAGS = ''

+ 5 - 1
bsp/avr32uc3b0/SConstruct

@@ -2,7 +2,11 @@ import os
 import sys
 import rtconfig
  
-RTT_ROOT = os.path.normpath(os.getcwd() + '/../..')
+if os.getenv('RTT_ROOT'):
+    RTT_ROOT = os.getenv('RTT_ROOT')
+else:
+    RTT_ROOT = os.path.normpath(os.getcwd() + '/../..')
+
 sys.path = sys.path + [os.path.join(RTT_ROOT, 'tools')]
 from building import *
  

+ 18 - 0
bsp/avr32uc3b0/rtconfig.py

@@ -1,3 +1,4 @@
+import os
 
 # toolchains options
 ARCH     = 'avr32'
@@ -7,9 +8,26 @@ BOARD    = 'USERBOARD'
 
 CROSS_TOOL 	= 'gcc'
 
+if os.getenv('RTT_CC'):
+	CROSS_TOOL = os.getenv('RTT_CC')
+
 if  CROSS_TOOL == 'gcc':
 	PLATFORM 	= 'gcc'
 	EXEC_PATH 	= 'C:/Program Files/Atmel/AVR Tools/AVR Toolchain/bin'
+elif CROSS_TOOL == 'keil':
+    print '================ERROR============================'
+    print 'Not support keil yet!'
+    print '================================================='
+    exit(0)
+elif CROSS_TOOL == 'iar':
+    print '================ERROR============================'
+    print 'Not support iar yet!'
+    print '================================================='
+    exit(0)
+
+if os.getenv('RTT_EXEC_PATH'):
+	EXEC_PATH = os.getenv('RTT_EXEC_PATH')
+
 #BUILD = 'debug'
 BUILD = 'release'
 

+ 5 - 1
bsp/dev3210/SConstruct

@@ -2,7 +2,11 @@ import os
 import sys
 import rtconfig
 
-RTT_ROOT = os.path.normpath(os.getcwd() + '/../..')
+if os.getenv('RTT_ROOT'):
+    RTT_ROOT = os.getenv('RTT_ROOT')
+else:
+    RTT_ROOT = os.path.normpath(os.getcwd() + '/../..')
+
 sys.path = sys.path + [os.path.join(RTT_ROOT, 'tools')]
 from building import *
 

+ 23 - 2
bsp/dev3210/rtconfig.py

@@ -1,11 +1,32 @@
+import os
+
 # CPU options
 ARCH='mips'
 CPU ='loongson'
 
 # toolchains options
 CROSS_TOOL  = 'gcc'
-PLATFORM    = 'gcc'
-EXEC_PATH   = 'E:/Program Files/CodeSourcery/Sourcery G++ Lite/bin'
+
+if os.getenv('RTT_CC'):
+	CROSS_TOOL = os.getenv('RTT_CC')
+
+if  CROSS_TOOL == 'gcc':
+	PLATFORM    = 'gcc'
+	EXEC_PATH   = 'E:/Program Files/CodeSourcery/Sourcery G++ Lite/bin'
+elif CROSS_TOOL == 'keil':
+    print '================ERROR============================'
+    print 'Not support keil yet!'
+    print '================================================='
+    exit(0)
+elif CROSS_TOOL == 'iar':
+    print '================ERROR============================'
+    print 'Not support iar yet!'
+    print '================================================='
+    exit(0)
+
+if os.getenv('RTT_EXEC_PATH'):
+	EXEC_PATH = os.getenv('RTT_EXEC_PATH')
+
 BUILD       = 'debug'
 
 PREFIX = 'mips-sde-elf-'

+ 5 - 1
bsp/efm32/SConstruct

@@ -2,7 +2,11 @@ import os
 import sys
 import rtconfig
 
-RTT_ROOT = os.path.normpath(os.getcwd() + '/../..')
+if os.getenv('RTT_ROOT'):
+    RTT_ROOT = os.getenv('RTT_ROOT')
+else:
+    RTT_ROOT = os.path.normpath(os.getcwd() + '/../..')
+
 sys.path = sys.path + [os.path.join(RTT_ROOT, 'tools')]
 from building import *
 

+ 18 - 0
bsp/efm32/rtconfig.py

@@ -1,12 +1,30 @@
+import os
+
 # toolchains options
 ARCH        = 'arm'
 CPU         = 'cortex-m3'
 CROSS_TOOL  = 'gcc'
 
+if os.getenv('RTT_CC'):
+	CROSS_TOOL = os.getenv('RTT_CC')
+
 if CROSS_TOOL == 'gcc':
     PLATFORM    = 'gcc'
     EXEC_PATH   = 'C:\Program Files (x86)\CodeSourcery\Sourcery G++ Lite\bin'
     #EXEC_PATH  = 'C:\Program Files (x86)\yagarto\bin'
+elif CROSS_TOOL == 'keil':
+    print '================ERROR============================'
+    print 'Not support keil yet!'
+    print '================================================='
+    exit(0)
+elif CROSS_TOOL == 'iar':
+    print '================ERROR============================'
+    print 'Not support iar yet!'
+    print '================================================='
+    exit(0)
+
+if os.getenv('RTT_EXEC_PATH'):
+	EXEC_PATH = os.getenv('RTT_EXEC_PATH')
 
 BUILD = 'debug'
 # EFM32_BOARD		=  'EFM32_G8XX_STK'

+ 24 - 2
bsp/jz47xx/rtconfig.py

@@ -1,9 +1,31 @@
+import os
+
 # toolchains options
 ARCH     = 'mips'
 CPU      = 'jz47xx'
+
 CROSS_TOOL  = 'gcc'
-PLATFORM 	= 'gcc'
-EXEC_PATH 	= 'E:/Program Files/CodeSourcery/Sourcery G++ Lite/bin'
+
+if os.getenv('RTT_CC'):
+	CROSS_TOOL = os.getenv('RTT_CC')
+
+if  CROSS_TOOL == 'gcc':
+	PLATFORM 	= 'gcc'
+	EXEC_PATH 	= 'E:/Program Files/CodeSourcery/Sourcery G++ Lite/bin'
+elif CROSS_TOOL == 'keil':
+    print '================ERROR============================'
+    print 'Not support keil yet!'
+    print '================================================='
+    exit(0)
+elif CROSS_TOOL == 'iar':
+    print '================ERROR============================'
+    print 'Not support iar yet!'
+    print '================================================='
+    exit(0)
+
+if os.getenv('RTT_EXEC_PATH'):
+	EXEC_PATH = os.getenv('RTT_EXEC_PATH')
+	
 BUILD		= 'debug'
 
 # toolchains

+ 5 - 1
bsp/lm3s8962/SConstruct

@@ -2,7 +2,11 @@ import os
 import sys
 import rtconfig
 
-RTT_ROOT = os.path.normpath(os.getcwd() + '/../..')
+if os.getenv('RTT_ROOT'):
+    RTT_ROOT = os.getenv('RTT_ROOT')
+else:
+    RTT_ROOT = os.path.normpath(os.getcwd() + '/../..')
+
 sys.path = sys.path + [os.path.join(RTT_ROOT, 'tools')]
 from building import *
 

+ 14 - 0
bsp/lm3s8962/rtconfig.py

@@ -1,8 +1,13 @@
+import os
+
 # toolchains options
 ARCH='arm'
 CPU='cortex-m3'
 CROSS_TOOL 	= 'keil'
 
+if os.getenv('RTT_CC'):
+	CROSS_TOOL = os.getenv('RTT_CC')
+
 #device options
 PART_TYPE = 'PART_LM3S8962'
 
@@ -12,6 +17,15 @@ if  CROSS_TOOL == 'gcc':
 elif CROSS_TOOL == 'keil':
 	PLATFORM 	= 'armcc'
 	EXEC_PATH 	= 'E:/Keil'
+elif CROSS_TOOL == 'iar':	
+    print '================ERROR============================'
+    print 'Not support iar yet!'
+    print '================================================='
+    exit(0)	
+
+if os.getenv('RTT_EXEC_PATH'):
+	EXEC_PATH = os.getenv('RTT_EXEC_PATH')
+
 BUILD = 'debug'
 
 if PLATFORM == 'gcc':

+ 5 - 1
bsp/lm3s9b9x/SConstruct

@@ -2,7 +2,11 @@ import os
 import sys
 import rtconfig
 
-RTT_ROOT = os.path.normpath(os.getcwd() + '/../..')
+if os.getenv('RTT_ROOT'):
+    RTT_ROOT = os.getenv('RTT_ROOT')
+else:
+    RTT_ROOT = os.path.normpath(os.getcwd() + '/../..')
+
 sys.path = sys.path + [os.path.join(RTT_ROOT, 'tools')]
 from building import *
 

+ 14 - 0
bsp/lm3s9b9x/rtconfig.py

@@ -1,8 +1,13 @@
+import os
+
 # toolchains options
 ARCH='arm'
 CPU='cortex-m3'
 CROSS_TOOL 	= 'keil'
 
+if os.getenv('RTT_CC'):
+	CROSS_TOOL = os.getenv('RTT_CC')
+
 #device options
 PART_TYPE = 'PART_LM3S9B96'
 
@@ -12,6 +17,15 @@ if  CROSS_TOOL == 'gcc':
 elif CROSS_TOOL == 'keil':
 	PLATFORM 	= 'armcc'
 	EXEC_PATH 	= 'E:/Keil'
+elif CROSS_TOOL == 'iar':	
+    print '================ERROR============================'
+    print 'Not support iar yet!'
+    print '================================================='
+    exit(0)
+
+if os.getenv('RTT_EXEC_PATH'):
+	EXEC_PATH = os.getenv('RTT_EXEC_PATH')
+
 BUILD = 'debug'
 
 if PLATFORM == 'gcc':

+ 4 - 1
bsp/lm4f232/SConstruct

@@ -2,7 +2,10 @@ import os
 import sys
 import rtconfig
 
-RTT_ROOT = os.path.normpath(os.getcwd() + '/../..')
+if os.getenv('RTT_ROOT'):
+    RTT_ROOT = os.getenv('RTT_ROOT')
+else:
+    RTT_ROOT = os.path.normpath(os.getcwd() + '/../..')
 
 sys.path = sys.path + [os.path.join(RTT_ROOT, 'tools')]
 from building import *

+ 13 - 1
bsp/lm4f232/rtconfig.py

@@ -1,8 +1,13 @@
+import os
+
 # toolchains options
 ARCH='arm'
 CPU='cortex-m4'
 CROSS_TOOL='keil'
 
+if os.getenv('RTT_CC'):
+	CROSS_TOOL = os.getenv('RTT_CC')
+
 #device options
 PART_TYPE = 'PART_LM4F232H5QD'
 
@@ -14,7 +19,14 @@ if  CROSS_TOOL == 'gcc':
 elif CROSS_TOOL == 'keil':
 	PLATFORM 	= 'armcc'
 	EXEC_PATH 	= 'E:/Keil'
-
+elif CROSS_TOOL == 'iar':
+    print '================ERROR============================'
+    print 'Not support iar yet!'
+    print '================================================='
+    exit(0)	
+
+if os.getenv('RTT_EXEC_PATH'):
+	EXEC_PATH = os.getenv('RTT_EXEC_PATH')
 
 BUILD = 'debug'
 

+ 5 - 1
bsp/lpc178x/SConstruct

@@ -2,7 +2,11 @@ import os
 import sys
 import rtconfig
 
-RTT_ROOT = os.path.normpath(os.getcwd() + '/../..')
+if os.getenv('RTT_ROOT'):
+    RTT_ROOT = os.getenv('RTT_ROOT')
+else:
+    RTT_ROOT = os.path.normpath(os.getcwd() + '/../..')
+
 sys.path = sys.path + [os.path.join(RTT_ROOT, 'tools')]
 from building import *
 

+ 15 - 0
bsp/lpc178x/lpc17xx_rom.sct

@@ -0,0 +1,15 @@
+; *************************************************************
+; *** Scatter-Loading Description File generated by uVision ***
+; *************************************************************
+
+LR_IROM1 0x00000000 0x00080000  {    ; load region size_region
+  ER_IROM1 0x00000000 0x00080000  {  ; load address = execution address
+   *.o (RESET, +First)
+   *(InRoot$$Sections)
+   .ANY (+RO)
+  }
+  RW_IRAM1 0x10000000 0x00010000  {  ; RW data
+   .ANY (+RW +ZI)
+  }
+}
+

+ 9 - 0
bsp/lpc178x/rtconfig.py

@@ -1,8 +1,13 @@
+import os
+
 # toolchains options
 ARCH='arm'
 CPU='cortex-m3'
 CROSS_TOOL='keil'
 
+if os.getenv('RTT_CC'):
+	CROSS_TOOL = os.getenv('RTT_CC')
+
 if  CROSS_TOOL == 'gcc':
 	PLATFORM 	= 'gcc'
 	EXEC_PATH 	= 'E:/Program Files/CodeSourcery/Sourcery G++ Lite/bin'
@@ -12,6 +17,10 @@ elif CROSS_TOOL == 'keil':
 elif CROSS_TOOL == 'iar':
 	PLATFORM 	= 'iar'
 	EXEC_PATH 	= 'E:/Program Files/IAR Systems/Embedded Workbench 6.0/arm/bin'
+
+if os.getenv('RTT_EXEC_PATH'):
+	EXEC_PATH = os.getenv('RTT_EXEC_PATH')
+
 BUILD = 'debug'
 
 if PLATFORM == 'gcc':

+ 5 - 1
bsp/lpc2148/SConstruct

@@ -2,7 +2,11 @@ import os
 import sys
 import rtconfig
 
-RTT_ROOT = os.path.normpath(os.getcwd() + '/../..')
+if os.getenv('RTT_ROOT'):
+    RTT_ROOT = os.getenv('RTT_ROOT')
+else:
+    RTT_ROOT = os.path.normpath(os.getcwd() + '/../..')
+
 sys.path = sys.path + [os.path.join(RTT_ROOT, 'tools')]
 from building import *
 

+ 13 - 0
bsp/lpc2148/rtconfig.py

@@ -1,14 +1,27 @@
+import os
+
 # toolchains options
 ARCH='arm'
 CPU='lpc214x'
 CROSS_TOOL='keil'
 
+if os.getenv('RTT_CC'):
+	CROSS_TOOL = os.getenv('RTT_CC')
+
 if  CROSS_TOOL == 'gcc':
 	PLATFORM 	= 'gcc'
 	EXEC_PATH 	= 'D:/SourceryGCC/bin'
 elif CROSS_TOOL == 'keil':
 	PLATFORM 	= 'armcc'
 	EXEC_PATH 	= 'G:\Keil_MDK_380'
+elif CROSS_TOOL == 'iar':
+    print '================ERROR============================'
+    print 'Not support iar yet!'
+    print '================================================='
+    exit(0)	
+	
+if os.getenv('RTT_EXEC_PATH'):
+	EXEC_PATH = os.getenv('RTT_EXEC_PATH')	
 
 BUILD = 'debug'
 

+ 5 - 1
bsp/lpc2478/SConstruct

@@ -2,7 +2,11 @@ import os
 import sys
 import rtconfig
 
-RTT_ROOT = os.path.normpath(os.getcwd() + '/../..')
+if os.getenv('RTT_ROOT'):
+    RTT_ROOT = os.getenv('RTT_ROOT')
+else:
+    RTT_ROOT = os.path.normpath(os.getcwd() + '/../..')
+
 sys.path = sys.path + [os.path.join(RTT_ROOT, 'tools')]
 from building import *
 

+ 14 - 0
bsp/lpc2478/rtconfig.py

@@ -1,8 +1,13 @@
+import os
+
 # toolchains options
 ARCH='arm'
 CPU='lpc24xx'
 CROSS_TOOL='keil'
 
+if os.getenv('RTT_CC'):
+	CROSS_TOOL = os.getenv('RTT_CC')
+
 if  CROSS_TOOL == 'gcc':
 	PLATFORM 	= 'gcc'
 	EXEC_PATH 	= 'E:/Program Files/CodeSourcery/Sourcery G++ Lite/bin'
@@ -12,6 +17,15 @@ elif CROSS_TOOL == 'keil':
 elif CROSS_TOOL == 'iar':
 	PLATFORM 	= 'iar'
 	EXEC_PATH 	= 'E:/Program Files/IAR Systems/Embedded Workbench 6.0/arm/bin'
+elif CROSS_TOOL == 'iar':
+    print '================ERROR============================'
+    print 'Not support iar yet!'
+    print '================================================='
+    exit(0)
+
+if os.getenv('RTT_EXEC_PATH'):
+	EXEC_PATH = os.getenv('RTT_EXEC_PATH')
+
 BUILD = 'debug'
 
 if PLATFORM == 'gcc':

+ 1 - 0
bsp/ls1bdev/SConstruct

@@ -6,6 +6,7 @@ if os.getenv('RTT_ROOT'):
     RTT_ROOT = os.getenv('RTT_ROOT')
 else:
     RTT_ROOT = os.path.normpath(os.getcwd() + '/../..')
+
 sys.path = sys.path + [os.path.join(RTT_ROOT, 'tools')]
 from building import *
 

+ 23 - 2
bsp/ls1bdev/rtconfig.py

@@ -1,11 +1,32 @@
+import os
+
 # CPU options
 ARCH='mips'
 CPU ='loongson_1b'
 
 # toolchains options
 CROSS_TOOL  = 'gcc'
-PLATFORM    = 'gcc'
-EXEC_PATH   = 'E:/Program Files/CodeSourcery/Sourcery G++ Lite/bin'
+
+if os.getenv('RTT_CC'):
+	CROSS_TOOL = os.getenv('RTT_CC')
+
+if  CROSS_TOOL == 'gcc':
+	PLATFORM    = 'gcc'
+	EXEC_PATH   = 'C:/Program Files/CodeSourcery/Sourcery_CodeBench_Lite_for_MIPS_ELF/bin'
+elif CROSS_TOOL == 'keil':
+    print '================ERROR============================'
+    print 'Not support keil yet!'
+    print '================================================='
+    exit(0)
+elif CROSS_TOOL == 'iar':
+    print '================ERROR============================'
+    print 'Not support iar yet!'
+    print '================================================='
+    exit(0)
+
+if os.getenv('RTT_EXEC_PATH'):
+	EXEC_PATH = os.getenv('RTT_EXEC_PATH')
+
 BUILD       = 'debug'
 
 PREFIX = 'mips-sde-elf-'

+ 5 - 1
bsp/m16c62p/SConstruct

@@ -2,7 +2,11 @@ import os
 import sys
 import rtconfig
 
-RTT_ROOT = os.path.normpath(os.getcwd() + '/../..')
+if os.getenv('RTT_ROOT'):
+    RTT_ROOT = os.getenv('RTT_ROOT')
+else:
+    RTT_ROOT = os.path.normpath(os.getcwd() + '/../..')
+
 sys.path = sys.path + [os.path.join(RTT_ROOT, 'tools')]
 from building import *
 

+ 13 - 0
bsp/m16c62p/rtconfig.py

@@ -1,9 +1,14 @@
+import os
+
 # toolchains options
 ARCH     = 'm16c'
 CPU      = 'm16c62p'
 
 CROSS_TOOL 	= 'iar'
 
+if os.getenv('RTT_CC'):
+	CROSS_TOOL = os.getenv('RTT_CC')
+
 if  CROSS_TOOL == 'gcc':
 	PLATFORM 	= 'gcc'
 	EXEC_PATH 	= 'E:/Program Files/CodeSourcery/Sourcery G++ Lite/bin'
@@ -11,6 +16,14 @@ elif CROSS_TOOL == 'iar':
 	PLATFORM 	= 'iar'
 	IAR_PATH = 'C:/Program Files/IAR Systems/Embedded Workbench Evaluation 6.0'
 #	EXEC_PATH 	= 'C:/Program Files/IAR Systems/Embedded Workbench Evaluation 6.0'
+elif CROSS_TOOL == 'keil':
+    print '================ERROR============================'
+    print 'Not support keil yet!'
+    print '================================================='
+    exit(0)	
+
+if os.getenv('RTT_EXEC_PATH'):
+	EXEC_PATH = os.getenv('RTT_EXEC_PATH')
 
 BUILD = 'debug'
 

+ 8 - 0
bsp/mb9bf500r/rtconfig.py

@@ -1,8 +1,13 @@
+import os
+
 # toolchains options
 ARCH='arm'
 CPU='cortex-m3'
 CROSS_TOOL='gcc'
 
+if os.getenv('RTT_CC'):
+	CROSS_TOOL = os.getenv('RTT_CC')
+
 # cross_tool provides the cross compiler
 # EXEC_PATH is the compiler execute path, for example, CodeSourcery, Keil MDK, IAR
 
@@ -16,6 +21,9 @@ elif CROSS_TOOL == 'iar':
 	PLATFORM 	= 'iar'
 	IAR_PATH 	= 'C:/Program Files/IAR Systems/Embedded Workbench 6.0 Evaluation'
 
+if os.getenv('RTT_EXEC_PATH'):
+	EXEC_PATH = os.getenv('RTT_EXEC_PATH')
+
 BUILD = 'debug'
 
 if PLATFORM == 'gcc':

+ 15 - 0
bsp/mb9bf506r/fm3_rom.sct

@@ -0,0 +1,15 @@
+; *************************************************************
+; *** Scatter-Loading Description File generated by uVision ***
+; *************************************************************
+
+LR_IROM1 0x00000000 0x00080000  {    ; load region size_region
+  ER_IROM1 0x00000000 0x00080000  {  ; load address = execution address
+   *.o (RESET, +First)
+   *(InRoot$$Sections)
+   .ANY (+RO)
+  }
+  RW_IRAM1 0x20000000 0x00008000  {  ; RW data
+   .ANY (+RW +ZI)
+  }
+}
+

+ 9 - 1
bsp/mb9bf506r/rtconfig.py

@@ -1,8 +1,13 @@
+import os
+
 # toolchains options
 ARCH='arm'
 CPU='cortex-m3'
 CROSS_TOOL='gcc'
 
+if os.getenv('RTT_CC'):
+	CROSS_TOOL = os.getenv('RTT_CC')
+
 # cross_tool provides the cross compiler
 # EXEC_PATH is the compiler execute path, for example, CodeSourcery, Keil MDK, IAR
 
@@ -16,6 +21,9 @@ elif CROSS_TOOL == 'iar':
 	PLATFORM 	= 'iar'
 	IAR_PATH 	= 'C:/Program Files/IAR Systems/Embedded Workbench 6.0 Evaluation'
 
+if os.getenv('RTT_EXEC_PATH'):
+	EXEC_PATH = os.getenv('RTT_EXEC_PATH')
+
 BUILD = 'debug'
 
 if PLATFORM == 'gcc':
@@ -56,7 +64,7 @@ elif PLATFORM == 'armcc':
     DEVICE = ' --device DARMSTM'
     CFLAGS = DEVICE + ' --apcs=interwork'
     AFLAGS = DEVICE
-    LFLAGS = DEVICE + ' --info sizes --info totals --info unused --info veneers --list rtthread-stm32.map --scatter stm32_rom.sct'
+    LFLAGS = DEVICE + ' --info sizes --info totals --info unused --info veneers --list rtthread-fm3.map --scatter fm3_rom.sct'
 
     CFLAGS += ' -I' + EXEC_PATH + '/ARM/RV31/INC'
     LFLAGS += ' --libpath ' + EXEC_PATH + '/ARM/RV31/LIB'

+ 14 - 0
bsp/mini2440/rtconfig.py

@@ -1,3 +1,5 @@
+import os
+
 # panel options
 # 'PNL_A70','PNL_N35', 'PNL_T35' , 'PNL_X35'
 RT_USING_LCD_TYPE = 'PNL_T35'
@@ -9,12 +11,24 @@ TextBase = '0x30000000'
 
 CROSS_TOOL 	= 'gcc'
 
+if os.getenv('RTT_CC'):
+	CROSS_TOOL = os.getenv('RTT_CC')
+
 if  CROSS_TOOL == 'gcc':
 	PLATFORM 	= 'gcc'
 	EXEC_PATH 	= 'C:/Program Files/CodeSourcery/Sourcery G++ Lite/bin'
 elif CROSS_TOOL == 'keil':
 	PLATFORM 	= 'armcc'
 	EXEC_PATH 	= 'C:/Keil'
+elif CROSS_TOOL == 'iar':
+    print '================ERROR============================'
+    print 'Not support iar yet!'
+    print '================================================='
+    exit(0)
+
+if os.getenv('RTT_EXEC_PATH'):
+	EXEC_PATH = os.getenv('RTT_EXEC_PATH')
+
 BUILD = 'debug'
 
 if PLATFORM == 'gcc':

+ 5 - 1
bsp/mini4020/SConstruct

@@ -2,7 +2,11 @@ import os
 import sys
 import rtconfig
 
-RTT_ROOT = os.path.normpath(os.getcwd() + '/../..')
+if os.getenv('RTT_ROOT'):
+    RTT_ROOT = os.getenv('RTT_ROOT')
+else:
+    RTT_ROOT = os.path.normpath(os.getcwd() + '/../..')
+
 sys.path = sys.path + [os.path.join(RTT_ROOT, 'tools')]
 from building import *
 

+ 14 - 11
bsp/mini4020/rtconfig.py

@@ -1,15 +1,29 @@
+import os
+
 # toolchains options
 ARCH     = 'arm'
 CPU      = 'sep4020'
 
 CROSS_TOOL 	= 'keil'
 
+if os.getenv('RTT_CC'):
+	CROSS_TOOL = os.getenv('RTT_CC')
+
 if  CROSS_TOOL == 'gcc':
 	PLATFORM 	= 'gcc'
 	EXEC_PATH 	= 'E:/Program Files/CodeSourcery/Sourcery G++ Lite/bin'
 elif CROSS_TOOL == 'keil':
 	PLATFORM 	= 'armcc'
 	EXEC_PATH 	= 'c:/Keil'
+elif CROSS_TOOL == 'iar':
+    print '================ERROR============================'
+    print 'Not support iar yet!'
+    print '================================================='
+    exit(0)
+
+if os.getenv('RTT_EXEC_PATH'):
+	EXEC_PATH = os.getenv('RTT_EXEC_PATH')
+
 BUILD = 'debug'
 
 if PLATFORM == 'gcc':
@@ -65,14 +79,3 @@ elif PLATFORM == 'armcc':
         CFLAGS += ' -O2'
 
     POST_ACTION = 'fromelf --bin $TARGET --output rtthread.bin \nfromelf -z $TARGET'
-
-elif PLATFORM == 'iar':
-    # toolchains
-    CC = 'armcc'
-    AS = 'armasm'
-    AR = 'armar'
-    LINK = 'armlink'
-
-    CFLAGS = ''
-    AFLAGS = ''
-    LFLAGS = ''

+ 14 - 0
bsp/sam7x/rtconfig.py

@@ -1,3 +1,5 @@
+import os
+
 # panel options
 # 'PNL_A70','PNL_N35', 'PNL_T35'
 RT_USING_LCD_TYPE = 'PNL_T35'
@@ -8,12 +10,24 @@ CPU      = 'AT91SAM7X'
 
 CROSS_TOOL 	= 'gcc'
 
+if os.getenv('RTT_CC'):
+	CROSS_TOOL = os.getenv('RTT_CC')
+
 if  CROSS_TOOL == 'gcc':
 	PLATFORM 	= 'gcc'
 	EXEC_PATH 	= 'C:/Program Files/CodeSourcery/Sourcery G++ Lite/bin'
 elif CROSS_TOOL == 'keil':
 	PLATFORM 	= 'armcc'
 	EXEC_PATH 	= 'C:/Keil'
+elif CROSS_TOOL == 'iar':
+    print '================ERROR============================'
+    print 'Not support iar yet!'
+    print '================================================='
+    exit(0)
+
+if os.getenv('RTT_EXEC_PATH'):
+	EXEC_PATH = os.getenv('RTT_EXEC_PATH')
+
 BUILD = 'debug'
 
 if PLATFORM == 'gcc':

+ 5 - 1
bsp/stm32f107/SConstruct

@@ -2,7 +2,11 @@ import os
 import sys
 import rtconfig
 
-RTT_ROOT = os.path.normpath(os.getcwd() + '/../..')
+if os.getenv('RTT_ROOT'):
+    RTT_ROOT = os.getenv('RTT_ROOT')
+else:
+    RTT_ROOT = os.path.normpath(os.getcwd() + '/../..')
+
 sys.path = sys.path + [os.path.join(RTT_ROOT, 'tools')]
 from building import *
 

+ 8 - 0
bsp/stm32f107/rtconfig.py

@@ -1,8 +1,13 @@
+import os
+
 # toolchains options
 ARCH='arm'
 CPU='cortex-m3'
 CROSS_TOOL='keil'
 
+if os.getenv('RTT_CC'):
+	CROSS_TOOL = os.getenv('RTT_CC')
+
 # cross_tool provides the cross compiler
 # EXEC_PATH is the compiler execute path, for example, CodeSourcery, Keil MDK, IAR
 
@@ -16,6 +21,9 @@ elif CROSS_TOOL == 'iar':
 	PLATFORM 	= 'iar'
 	IAR_PATH 	= 'E:/Program Files/IAR Systems/Embedded Workbench 6.0'
 
+if os.getenv('RTT_EXEC_PATH'):
+	EXEC_PATH = os.getenv('RTT_EXEC_PATH')
+
 BUILD = 'debug'
 STM32_TYPE = 'STM32F10X_CL'
 

+ 5 - 1
bsp/stm32f10x/SConstruct

@@ -2,7 +2,11 @@ import os
 import sys
 import rtconfig
 
-RTT_ROOT = os.path.normpath(os.getcwd() + '/../..')
+if os.getenv('RTT_ROOT'):
+    RTT_ROOT = os.getenv('RTT_ROOT')
+else:
+    RTT_ROOT = os.path.normpath(os.getcwd() + '/../..')
+
 sys.path = sys.path + [os.path.join(RTT_ROOT, 'tools')]
 from building import *
 

+ 8 - 0
bsp/stm32f10x/rtconfig.py

@@ -1,8 +1,13 @@
+import os
+
 # toolchains options
 ARCH='arm'
 CPU='cortex-m3'
 CROSS_TOOL='keil'
 
+if os.getenv('RTT_CC'):
+	CROSS_TOOL = os.getenv('RTT_CC')
+
 #device options
 # STM32_TYPE = 
 # 'STM32F10X_LD','STM32F10X_LD_VL',
@@ -28,6 +33,9 @@ elif CROSS_TOOL == 'iar':
 	PLATFORM 	= 'iar'
 	IAR_PATH 	= 'E:/Program Files/IAR Systems/Embedded Workbench 6.0'
 
+if os.getenv('RTT_EXEC_PATH'):
+	EXEC_PATH = os.getenv('RTT_EXEC_PATH')
+
 BUILD = 'debug'
 
 if PLATFORM == 'gcc':

+ 5 - 1
bsp/stm32f20x/SConstruct

@@ -2,7 +2,11 @@ import os
 import sys
 import rtconfig
 
-RTT_ROOT = os.path.normpath(os.getcwd() + '/../..')
+if os.getenv('RTT_ROOT'):
+    RTT_ROOT = os.getenv('RTT_ROOT')
+else:
+    RTT_ROOT = os.path.normpath(os.getcwd() + '/../..')
+
 sys.path = sys.path + [os.path.join(RTT_ROOT, 'tools')]
 from building import *
 

+ 8 - 0
bsp/stm32f20x/rtconfig.py

@@ -1,8 +1,13 @@
+import os
+
 # toolchains options
 ARCH='arm'
 CPU='cortex-m3'
 CROSS_TOOL='keil'
 
+if os.getenv('RTT_CC'):
+	CROSS_TOOL = os.getenv('RTT_CC')
+
 if  CROSS_TOOL == 'gcc':
 	PLATFORM 	= 'gcc'
 	EXEC_PATH 	= 'E:/SourceryGCC/bin'
@@ -13,6 +18,9 @@ elif CROSS_TOOL == 'iar':
 	PLATFORM 	= 'iar'
 	IAR_PATH 	= 'E:/Program Files/IAR Systems/Embedded Workbench 5.4 Evaluation_0'	
 
+if os.getenv('RTT_EXEC_PATH'):
+	EXEC_PATH = os.getenv('RTT_EXEC_PATH')
+
 BUILD = 'debug'
 
 if PLATFORM == 'gcc':

+ 4 - 1
bsp/stm32f40x/SConstruct

@@ -2,7 +2,10 @@ import os
 import sys
 import rtconfig
 
-RTT_ROOT = os.path.normpath(os.getcwd() + '/../..')
+if os.getenv('RTT_ROOT'):
+    RTT_ROOT = os.getenv('RTT_ROOT')
+else:
+    RTT_ROOT = os.path.normpath(os.getcwd() + '/../..')
 
 sys.path = sys.path + [os.path.join(RTT_ROOT, 'tools')]
 from building import *

+ 8 - 1
bsp/stm32f40x/rtconfig.py

@@ -1,8 +1,13 @@
+import os
+
 # toolchains options
 ARCH='arm'
 CPU='cortex-m4'
 CROSS_TOOL='keil'
 
+if os.getenv('RTT_CC'):
+	CROSS_TOOL = os.getenv('RTT_CC')
+
 # cross_tool provides the cross compiler
 # EXEC_PATH is the compiler execute path, for example, CodeSourcery, Keil MDK, IAR
 if  CROSS_TOOL == 'gcc':
@@ -15,7 +20,9 @@ elif CROSS_TOOL == 'iar':
 	PLATFORM 	= 'iar'
 	IAR_PATH 	= 'E:/Program Files/IAR Systems/Embedded Workbench 6.0'
 
-#
+if os.getenv('RTT_EXEC_PATH'):
+	EXEC_PATH = os.getenv('RTT_EXEC_PATH')
+
 BUILD = 'debug'
 STM32_TYPE = 'STM32F4XX'
 

+ 5 - 1
bsp/x86/SConstruct

@@ -2,7 +2,11 @@ import os
 import sys
 import rtconfig
 
-RTT_ROOT = os.path.normpath(os.getcwd() + '/../..')
+if os.getenv('RTT_ROOT'):
+    RTT_ROOT = os.getenv('RTT_ROOT')
+else:
+    RTT_ROOT = os.path.normpath(os.getcwd() + '/../..')
+
 sys.path = sys.path + [os.path.join(RTT_ROOT, 'tools')]
 from building import *
 

+ 18 - 0
bsp/x86/rtconfig.py

@@ -1,14 +1,32 @@
+import os
+
 # toolchains options
 ARCH='ia32'
 CPU=''
 CROSS_TOOL='gcc'
 
+if os.getenv('RTT_CC'):
+	CROSS_TOOL = os.getenv('RTT_CC')
+
 # cross_tool provides the cross compiler
 # EXEC_PATH is the compiler execute path, for example, CodeSourcery,
 
 if  CROSS_TOOL == 'gcc':
 	PLATFORM 	= 'gcc'
 	EXEC_PATH 	= 'E:/Program Files/CodeSourcery/Sourcery_CodeBench_Lite_for_IA32_ELF/bin'
+elif CROSS_TOOL == 'keil':
+    print '================ERROR============================'
+    print 'Not support keil yet!'
+    print '================================================='
+    exit(0)
+elif CROSS_TOOL == 'iar':
+    print '================ERROR============================'
+    print 'Not support iar yet!'
+    print '================================================='
+    exit(0)
+
+if os.getenv('RTT_EXEC_PATH'):
+	EXEC_PATH = os.getenv('RTT_EXEC_PATH')
 
 BUILD = 'debug'