summaryrefslogtreecommitdiff
path: root/bsp
diff options
context:
space:
mode:
authorprife <[email protected]>2013-09-14 08:20:28 -0700
committerprife <[email protected]>2013-09-14 08:20:28 -0700
commit63394f5d1b14c23fd5f2ff2b1deb523f1858e03e (patch)
treebe3a6f8e18d4f9759c6a8aaa43cbeadd3efcdad6 /bsp
parent2bcb9edd91df59e068f82b2ce438215e2c5df32b (diff)
parentdacd2cb9a9d9563b1986e6cef856d8f5017fe4ff (diff)
Merge pull request #155 from grissiom/simulator
Simulator
Diffstat (limited to 'bsp')
-rwxr-xr-xbsp/simulator/SConstruct11
-rw-r--r--bsp/simulator/drivers/SConscript14
-rwxr-xr-xbsp/simulator/rtconfig.py15
3 files changed, 26 insertions, 14 deletions
diff --git a/bsp/simulator/SConstruct b/bsp/simulator/SConstruct
index af6534906b..4db7328f2a 100755
--- a/bsp/simulator/SConstruct
+++ b/bsp/simulator/SConstruct
@@ -73,6 +73,10 @@ elif rtconfig.PLATFORM == 'mingw':
LINK = rtconfig.LINK, LINKFLAGS = rtconfig.LFLAGS)
env['LIBS']=libs
env.PrependENVPath('PATH', rtconfig.EXEC_PATH)
+elif rtconfig.CROSS_TOOL == 'clang-analyze':
+ TARGET = 'rtthread'
+ env = Environment(toolpath=[os.path.join(RTT_ROOT, 'tools', 'tools')],
+ tools = [rtconfig.CROSS_TOOL])
else:
TARGET = 'rtthread'
env['CC']=rtconfig.CC
@@ -84,13 +88,6 @@ else:
objs = PrepareBuilding(env, RTT_ROOT, has_libcpu=False, remove_components=['rtgui'])
if GetDepend('RT_USING_RTGUI'):
- sdl_lib = ['SDL', 'SDLmain']
- sdl_lib_path = [os.path.abspath('SDL/lib/x86')]
- sdl_include_path = [os.path.abspath('SDL/include')]
- env.Append(LIBS=sdl_lib)
- env.Append(LIBPATH=sdl_lib_path)
- env.Append(CPPPATH=sdl_include_path)
-
if RTT_RTGUI:
objs += SConscript(os.path.join(RTT_RTGUI, 'SConscript'),
variant_dir='build/components/rtgui',
diff --git a/bsp/simulator/drivers/SConscript b/bsp/simulator/drivers/SConscript
index d939535da8..eb491b810e 100644
--- a/bsp/simulator/drivers/SConscript
+++ b/bsp/simulator/drivers/SConscript
@@ -3,10 +3,19 @@ from building import *
cwd = GetCurrentDir()
src = Glob('*.c')
+LIBS = []
+LIBPATH = []
+CPPPATH = [cwd]
# remove no need file.
if GetDepend('RT_USING_RTGUI') == False:
SrcRemove(src, 'sdl_fb.c')
+else:
+ LIBS.append('SDL')
+ if sys.platform == 'win32':
+ LIBPATH.append(os.path.abspath(os.path.join(cwd, '../SDL/lib/x86')))
+ CPPPATH.append(os.path.abspath(os.path.join(cwd, '../SDL/include')))
+
if GetDepend('RT_USING_DFS') == False or GetDepend('RT_USING_DFS_ELMFAT') == False:
SrcRemove(src, 'sd_sim.c')
if GetDepend('RT_USING_DFS') == False or GetDepend('RT_USING_MTD_NAND') == False:
@@ -20,8 +29,7 @@ if GetDepend('RT_USING_MODULE') == False:
if sys.platform[0:5]=="linux": #check whether under linux
SrcRemove(src, ['module_win32.c', 'dfs_win32.c'])
-CPPPATH = [cwd]
-
-group = DefineGroup('Drivers', src, depend = [''], CPPPATH = CPPPATH)
+group = DefineGroup('Drivers', src, depend = [''],
+ CPPPATH = CPPPATH, LIBS=LIBS, LIBPATH=LIBPATH)
Return('group')
diff --git a/bsp/simulator/rtconfig.py b/bsp/simulator/rtconfig.py
index 7a42bddbcf..d3ed2599d5 100755
--- a/bsp/simulator/rtconfig.py
+++ b/bsp/simulator/rtconfig.py
@@ -1,3 +1,5 @@
+import os
+
# toolchains options
ARCH='sim'
#CROSS_TOOL='msvc' or 'gcc' or 'mingw'
@@ -5,12 +7,15 @@ ARCH='sim'
# 'gcc' is for linux
CROSS_TOOL='msvc'
+if os.getenv('RTT_CC'):
+ CROSS_TOOL = os.getenv('RTT_CC')
+
# cross_tool provides the cross compiler
# EXEC_PATH is the compiler execute path
-if CROSS_TOOL == 'gcc':
+if CROSS_TOOL == 'gcc' or CROSS_TOOL == 'clang-analyze':
CPU = 'posix'
PLATFORM = 'gcc'
- EXEC_PATH = '/usr/bin/gcc'
+ EXEC_PATH = ''
elif CROSS_TOOL == 'mingw':
CPU = 'win32'
@@ -21,11 +26,13 @@ elif CROSS_TOOL == 'msvc':
CPU = 'win32'
PLATFORM = 'cl'
EXEC_PATH = ''
-
-else :
+else:
print "bad CROSS TOOL!"
exit(1)
+if os.getenv('RTT_EXEC_PATH'):
+ EXEC_PATH = os.getenv('RTT_EXEC_PATH')
+
BUILD = 'debug'
#BUILD = ''