diff options
| author | [email protected] <[email protected]> | 2011-02-27 13:44:32 +0000 |
|---|---|---|
| committer | [email protected] <[email protected]> | 2011-02-27 13:44:32 +0000 |
| commit | 338155eddc3de4c7ee73fb4022be4959e51d8835 (patch) | |
| tree | 886f89cb9070a826d366d5f4ffe336cfed548406 /bsp | |
| parent | c217af8061b40ae6b7000b5cc50aed87d95033c2 (diff) | |
update building script for jz47xx.
git-svn-id: https://rt-thread.googlecode.com/svn/trunk@1295 bbd45198-f89e-11dd-88c7-29a3b14d5316
Diffstat (limited to 'bsp')
| -rw-r--r-- | bsp/jz47xx/SConscript | 29 | ||||
| -rw-r--r-- | bsp/jz47xx/SConstruct | 32 | ||||
| -rw-r--r-- | bsp/jz47xx/rtconfig.py | 54 |
3 files changed, 21 insertions, 94 deletions
diff --git a/bsp/jz47xx/SConscript b/bsp/jz47xx/SConscript index a3ff4c0a51..e4d3dd791a 100644 --- a/bsp/jz47xx/SConscript +++ b/bsp/jz47xx/SConscript @@ -1,29 +1,12 @@ -Import('env')
-Import('projects')
+import rtconfig
Import('RTT_ROOT')
-Import('rtconfig')
-
-# group definitions
-group = {}
-group['name'] = 'Startup'
-group['CCFLAGS'] = ''
-group['CPPPATH'] = [RTT_ROOT + '/bsp/jz47xx']
-group['CPPDEFINES'] = []
-group['LINKFLAGS'] = ''
+from building import *
src_bsp = ['application.c', 'startup.c', 'board.c']
src_drv = ['uart.c']
-group['src'] = File(src_bsp + src_drv)
-
-# add group to project list
-projects.append(group)
-
-env.Append(CCFLAGS = group['CCFLAGS'])
-env.Append(CPPPATH = group['CPPPATH'])
-env.Append(CPPDEFINES = group['CPPDEFINES'])
-env.Append(LINKFLAGS = group['LINKFLAGS'])
-
-obj = env.Object(group['src'])
+src = File(src_bsp + src_drv)
+CPPPATH = Dir('#')
+group = DefineGroup('Startup', src, depend = [''], CPPPATH = CPPPATH)
-Return('obj')
+Return('group')
diff --git a/bsp/jz47xx/SConstruct b/bsp/jz47xx/SConstruct index 21e393cf98..8922b1a466 100644 --- a/bsp/jz47xx/SConstruct +++ b/bsp/jz47xx/SConstruct @@ -2,12 +2,15 @@ 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')]
-import mdk
+from building import *
-target = 'rtthread-jz47xx'
-projects = []
+TARGET = 'rtthread-jz47xx.' + rtconfig.TARGET_EXT
env = Environment(tools = ['mingw'],
AS = rtconfig.AS, ASFLAGS = rtconfig.AFLAGS,
@@ -16,23 +19,14 @@ env = Environment(tools = ['mingw'], LINK = rtconfig.LINK, LINKFLAGS = rtconfig.LFLAGS)
env.PrependENVPath('PATH', rtconfig.EXEC_PATH)
-Export('env')
Export('RTT_ROOT')
Export('rtconfig')
-Export('projects')
-
-# kernel building script
-objs = SConscript(RTT_ROOT + '/src/SConscript', variant_dir='build/src', duplicate=0)
-# arch building script
-objs = objs + SConscript(RTT_ROOT + '/libcpu/SConscript', variant_dir='build/libcpu', duplicate=0)
-# component script
-Repository(RTT_ROOT)
-objs = objs + SConscript('components/SConscript')
+# prepare building environment
+objs = PrepareBuilding(env, RTT_ROOT)
-# board build script
-objs = objs + SConscript('SConscript', variant_dir='build/bsp', duplicate=0)
-
-TARGET = target + '.' + rtconfig.TARGET_EXT
+# build program
env.Program(TARGET, objs)
-env.AddPostAction(TARGET, rtconfig.POST_ACTION)
+
+# end building
+EndBuilding(TARGET)
diff --git a/bsp/jz47xx/rtconfig.py b/bsp/jz47xx/rtconfig.py index 53d59e4f2b..ea679a279e 100644 --- a/bsp/jz47xx/rtconfig.py +++ b/bsp/jz47xx/rtconfig.py @@ -1,56 +1,6 @@ -import SCons.cpp
-
-# component options
-
-# make all component false
-RT_USING_FINSH = False
-RT_USING_DFS = False
-RT_USING_DFS_ELMFAT = False
-RT_USING_DFS_YAFFS2 = False
-RT_USING_LWIP = False
-RT_USING_WEBSERVER = False
-RT_USING_RTGUI = False
-RT_USING_MODULE = False
-
-# parse rtconfig.h to get used component
-PreProcessor = SCons.cpp.PreProcessor()
-f = file('rtconfig.h', 'r')
-contents = f.read()
-f.close()
-PreProcessor.process_contents(contents)
-rtconfig_ns = PreProcessor.cpp_namespace
-
-# finsh shell options
-if rtconfig_ns.has_key('RT_USING_FINSH'):
- RT_USING_FINSH = True
-
-# device virtual filesystem options
-if rtconfig_ns.has_key('RT_USING_DFS'):
- RT_USING_DFS = True
-
- if rtconfig_ns.has_key('RT_USING_DFS_ELMFAT'):
- RT_USING_DFS_ELMFAT = True
- if rtconfig_ns.has_key('RT_USING_DFS_YAFFS2'):
- RT_USING_DFS_YAFFS2 = True
-
-# lwip options
-if rtconfig_ns.has_key('RT_USING_LWIP'):
- RT_USING_LWIP = True
- if rtconfig_ns.has_key('RT_USING_WEBSERVER'):
- RT_USING_WEBSERVER = True
-
-# rtgui options
-if rtconfig_ns.has_key('RT_USING_RTGUI'):
- RT_USING_RTGUI = True
-
-# module options
-if rtconfig_ns.has_key('RT_USING_MODULE'):
- RT_USING_MODULE = True
-
# toolchains options
-ARCH='mips'
-CPU='jz47xx'
-
+ARCH = 'mips'
+CPU = 'jz47xx'
CROSS_TOOL = 'gcc'
PLATFORM = 'gcc'
EXEC_PATH = 'E:/Program Files/CodeSourcery/Sourcery G++ Lite/bin'
|
