2011-10-08 21:02:22 +08:00
|
|
|
Import('rtconfig')
|
|
|
|
from building import *
|
|
|
|
|
2011-10-10 20:45:38 +08:00
|
|
|
if GetDepend('RT_USING_NEWLIB') and rtconfig.CROSS_TOOL != 'gcc':
|
2011-10-08 21:02:22 +08:00
|
|
|
print '================ERROR============================'
|
|
|
|
print 'Please use GNU GCC compiler if using newlib'
|
|
|
|
print '================================================='
|
|
|
|
exit(0)
|
|
|
|
|
|
|
|
cwd = GetCurrentDir()
|
|
|
|
src = Glob('*.c')
|
|
|
|
CPPPATH = [cwd]
|
|
|
|
|
2013-01-11 15:13:11 +08:00
|
|
|
# link with libm in default.
|
|
|
|
# libm is a frequently used lib. Newlib is compiled with -ffunction-sections in
|
|
|
|
# recent GCC tool chains. The linker would just link in the functions that have
|
|
|
|
# been referenced. So setting this won't result in bigger text size.
|
|
|
|
Env.Append(LIBS = ['m'])
|
|
|
|
|
2011-10-08 21:02:22 +08:00
|
|
|
group = DefineGroup('newlib', src, depend = ['RT_USING_NEWLIB'], CPPPATH = CPPPATH)
|
|
|
|
|
|
|
|
Return('group')
|