1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 34 35 36 37 38 39 40 41 42 43 44 45 46 47 48 49 50 51 52 53 54 55 56 57 58 59 60 61
|
import os
Import('env')
src_env = env.Clone()
src_env['srcs'] = []
# Default common optional components to off (enabled according target platform)
src_env['crypto'] = False
src_env['external_sha2'] = False
src_env['malloc'] = False
src_env['freertos'] = False
src_env['mbedrtos'] = False
src_env['wsl'] = False
src_env['system_objects'] = False
src_env['nvram'] = False
Export ('src_env')
# Get the core sources
src_env['srcs'] += Glob('*.c')
# Get the target sources
src_env.SConscript('target/$TARG/SConscript')
# Get sources for any optional components
if src_env['nvram']:
src_env['srcs'] += Glob('nvram/*.c')
if src_env['crypto']:
src_env['srcs'] += Glob('crypto/*.c')
if src_env['external_sha2']:
src_env['srcs'] += Glob('external/sha2/*.c')
src_env.Append(CPPPATH = [ 'external/sha2' ])
if src_env['malloc']:
src_env.Append(CPPPATH = 'malloc')
src_env['srcs'] += Glob('malloc/*.c')
if src_env['freertos']:
src_env.Append(CPPPATH = Dir(['freertos']))
src_env['srcs'] += Glob('freertos/*.c')
if src_env['mbedrtos']:
src_env.Append(CPPPATH = Dir(['mbedrtos']))
src_env['srcs'] += Glob('mbedrtos/*.cpp')
src_env['srcs'] += Glob('mbedrtos/*.c')
if src_env['wsl']:
src_env.Append(CPPPATH = Dir(['target/$TARG']))
src_env.Append(CPPPATH = Dir(['bsp']))
src_env['srcs'] += Glob('wsl/*.c')
src_env.Append(CPPPATH = Dir(['.']))
# Compile sources and create libraries
objs = src_env.StaticObject(src_env['srcs'])
lib = src_env.Library("ajtcl", objs)
src_env.Install('#dist/lib', lib)
if src_env['build_shared']:
objs = src_env.SharedObject(src_env['srcs'])
lib = src_env.SharedLibrary("ajtcl", objs, SHLIBVERSION='1509')
src_env.Install('#dist/lib', lib)
|