xref: /nrf52832-nimble/rt-thread/components/libc/compilers/newlib/SConscript (revision 104654410c56c573564690304ae786df310c91fc)
1*10465441SEvalZerofrom building import *
2*10465441SEvalZeroImport('rtconfig')
3*10465441SEvalZero
4*10465441SEvalZerosrc = Glob('*.c')
5*10465441SEvalZerocwd = GetCurrentDir()
6*10465441SEvalZerogroup = []
7*10465441SEvalZero
8*10465441SEvalZeroCPPPATH = [cwd]
9*10465441SEvalZeroCPPDEFINES = ['RT_USING_NEWLIB']
10*10465441SEvalZero
11*10465441SEvalZero# link with libc and libm:
12*10465441SEvalZero# libm is a frequently used lib. Newlib is compiled with -ffunction-sections in
13*10465441SEvalZero# recent GCC tool chains. The linker would just link in the functions that have
14*10465441SEvalZero# been referenced. So setting this won't result in bigger text size.
15*10465441SEvalZeroLIBS = ['c', 'm']
16*10465441SEvalZero
17*10465441SEvalZeroif rtconfig.PLATFORM == 'gcc':
18*10465441SEvalZero    group = DefineGroup('newlib', src, depend = ['RT_USING_LIBC'],
19*10465441SEvalZero        CPPPATH = CPPPATH, CPPDEFINES = CPPDEFINES, LIBS = LIBS)
20*10465441SEvalZero
21*10465441SEvalZeroReturn('group')
22