summaryrefslogtreecommitdiff
path: root/components/libc/compilers/common/SConscript
diff options
context:
space:
mode:
Diffstat (limited to 'components/libc/compilers/common/SConscript')
-rw-r--r--components/libc/compilers/common/SConscript34
1 files changed, 23 insertions, 11 deletions
diff --git a/components/libc/compilers/common/SConscript b/components/libc/compilers/common/SConscript
index 4c815c49b8..319e1a3555 100644
--- a/components/libc/compilers/common/SConscript
+++ b/components/libc/compilers/common/SConscript
@@ -1,15 +1,27 @@
-# RT-Thread building script for bridge
-
-import os
from building import *
-cwd = GetCurrentDir()
-objs = []
-list = os.listdir(cwd)
+Import('rtconfig')
+
+src = []
+cwd = GetCurrentDir()
+group = []
+CPPPATH = [cwd]
+
+if GetDepend('RT_USING_LIBC'):
+ src += Glob('*.c')
+else:
+ if GetDepend('RT_LIBC_USING_TIME'):
+ src += ['time.c']
+
+if GetDepend('RT_USING_POSIX') == False:
+ SrcRemove(src, ['unistd.c'])
+
+if rtconfig.CROSS_TOOL == 'keil':
+ CPPDEFINES = ['__CLK_TCK=RT_TICK_PER_SECOND']
+else:
+ CPPDEFINES = []
-for d in list:
- path = os.path.join(cwd, d)
- if os.path.isfile(os.path.join(path, 'SConscript')):
- objs = objs + SConscript(os.path.join(d, 'SConscript'))
+if GetDepend('RT_USING_LIBC') or GetDepend('RT_LIBC_USING_TIME'):
+ group = DefineGroup('libc', src, depend = [''], CPPPATH = CPPPATH, CPPDEFINES = CPPDEFINES)
-Return('objs')
+Return('group')