summaryrefslogtreecommitdiff
path: root/components/finsh/SConscript
diff options
context:
space:
mode:
authorbernard <[email protected]>2014-01-01 23:14:45 +0800
committerbernard <[email protected]>2014-01-01 23:14:45 +0800
commitb9241041295d3a3356ecd7f4a6a2b7bca3dc4737 (patch)
tree1bb4e310a61b2725a0c7afb0b6b56848b3f7ac7e /components/finsh/SConscript
parent9993c9e60c2b523643fb645478991f83d1fb0749 (diff)
Add FINSH_USING_MSH_ONLY option
Diffstat (limited to 'components/finsh/SConscript')
-rw-r--r--components/finsh/SConscript34
1 files changed, 32 insertions, 2 deletions
diff --git a/components/finsh/SConscript b/components/finsh/SConscript
index 3fd0961f72..80c53bfc61 100644
--- a/components/finsh/SConscript
+++ b/components/finsh/SConscript
@@ -2,13 +2,43 @@ Import('rtconfig')
from building import *
cwd = GetCurrentDir()
-src = Glob('*.c')
+src = Split('''
+shell.c
+symbol.c
+cmd.c
+''')
+
+fsh_src = Split('''
+finsh_compiler.c
+finsh_error.c
+finsh_heap.c
+finsh_init.c
+finsh_node.c
+finsh_ops.c
+finsh_parser.c
+finsh_var.c
+finsh_vm.c
+finsh_token.c
+''')
+
+msh_src = Split('''
+msh_cmd.c
+msh.c
+''')
+
CPPPATH = [cwd]
if rtconfig.CROSS_TOOL == 'keil':
- LINKFLAGS = ' --keep __fsym_* --keep __vsym_* '
+ LINKFLAGS = ' --keep __fsym_*'
+
+ if not GetDepend('FINSH_USING_MSH_ONLY'):
+ LINKFLAGS = LINKFLAGS + ' --keep __vsym_* '
else:
LINKFLAGS = ''
+src = src + msh_src
+if not GetDepend('FINSH_USING_MSH_ONLY'):
+ src = src + fsh_src
+
group = DefineGroup('finsh', src, depend = ['RT_USING_FINSH'], CPPPATH = CPPPATH, LINKFLAGS = LINKFLAGS)
Return('group')