cleanup scons building script

git-svn-id: https://rt-thread.googlecode.com/svn/trunk@1065 bbd45198-f89e-11dd-88c7-29a3b14d5316
This commit is contained in:
bernard.xiong@gmail.com
2010-11-20 12:31:00 +00:00
parent 2fce1a91e2
commit 10732a76e9
36 changed files with 716 additions and 1010 deletions

View File

@@ -1,77 +1,3 @@
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_DFS_NFS = False
RT_USING_DFS_ROMFS = False
RT_USING_DFS_DEVFS = False
RT_USING_LWIP = False
RT_USING_WEBSERVER = False
RT_USING_RTGUI = False
RT_USING_MODBUS = False
RT_USING_MODULE = False
RT_USING_FTK = False
RT_USING_NEWLIB = False
RT_USING_PTHREAD = 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
# libc options
if rtconfig_ns.has_key('RT_USING_NEWLIB'):
RT_USING_NEWLIB = True
if rtconfig_ns.has_key('RT_USING_PTHREAD'):
RT_USING_PTHREAD = True
# 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_DFS_ELM_USE_LFN'):
RT_DFS_ELM_USE_LFN = True
if rtconfig_ns.has_key('RT_USING_DFS_YAFFS2'):
RT_USING_DFS_YAFFS2 = True
if rtconfig_ns.has_key('RT_USING_DFS_NFS'):
RT_USING_DFS_NFS = True
if rtconfig_ns.has_key('RT_USING_DFS_ROMFS'):
RT_USING_DFS_ROMFS = True
if rtconfig_ns.has_key('RT_USING_DFS_DEVFS'):
RT_USING_DFS_DEVFS = 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
if rtconfig_ns.has_key('RT_USING_FTK'):
RT_USING_FTK = True
# module options
if rtconfig_ns.has_key('RT_USING_MODULE'):
RT_USING_MODULE = True
# panel options
# 'PNL_A70','PNL_N35', 'PNL_T35'
RT_USING_LCD_TYPE = 'PNL_T35'
@@ -117,9 +43,6 @@ if PLATFORM == 'gcc':
else:
CFLAGS += ' -O2'
if RT_USING_WEBSERVER:
CFLAGS += ' -DWEBS -DUEMF -DRTT -D__NO_FCNTL=1 -DRT_USING_WEBSERVER'
POST_ACTION = OBJCPY + ' -O binary $TARGET rtthread.bin\n' + SIZE + ' $TARGET \n'
elif PLATFORM == 'armcc':
@@ -146,9 +69,6 @@ elif PLATFORM == 'armcc':
else:
CFLAGS += ' -O2'
RT_USING_MINILIBC = False
if RT_USING_WEBSERVER:
CFLAGS += ' -DWEBS -DUEMF -DRTT -D__NO_FCNTL=1 -DRT_USING_WEBSERVER'
POST_ACTION = 'fromelf --bin $TARGET --output rtthread.bin \nfromelf -z $TARGET'
elif PLATFORM == 'iar':