1import os 2import sys 3import rtconfig 4 5from rtconfig import RTT_ROOT 6 7sys.path = sys.path + [os.path.join(RTT_ROOT, 'tools')] 8from building import * 9 10TARGET = 'rtthread.' + rtconfig.TARGET_EXT 11 12DefaultEnvironment(tools=[]) 13env = Environment(tools = ['mingw'], 14 AS = rtconfig.AS, ASFLAGS = rtconfig.AFLAGS, 15 CC = rtconfig.CC, CCFLAGS = rtconfig.CFLAGS, 16 CXX = rtconfig.CXX, CXXFLAGS = rtconfig.CXXFLAGS, 17 AR = rtconfig.AR, ARFLAGS = '-rc', 18 LINK = rtconfig.LINK, LINKFLAGS = rtconfig.LFLAGS) 19env.PrependENVPath('PATH', rtconfig.EXEC_PATH) 20env['ASCOM'] = env['ASPPCOM'] 21 22Export('RTT_ROOT') 23Export('rtconfig') 24rtconfig.CPU='ur-cp100' 25rtconfig.ARCH='risc-v' 26 27 28stack_size = 4096 29# prepare building environment 30objs = PrepareBuilding(env, RTT_ROOT, has_libcpu = False) 31 32if GetDepend('RT_USING_SMART'): 33 # use smart link.lds 34 env['LINKFLAGS'] = env['LINKFLAGS'].replace('link.lds', 'link_smart.lds') 35 36 # os.system('cp .configmini .config') 37 #copy rtconfig.hmini to rtconfig.h 38 # os.system('cp rtconfig.hmini rtconfig.h') 39 40stack_lds = open('link_stacksize.lds', 'w') 41if GetDepend('__STACKSIZE__'): stack_size = GetDepend('__STACKSIZE__') 42stack_lds.write('__STACKSIZE__ = %d;\n' % stack_size) 43stack_lds.close() 44 45SDK_ROOT = os.path.abspath('./') 46 47if os.path.exists(SDK_ROOT + '/drivers'): 48 drivers_path_prefix = SDK_ROOT + '/drivers' 49else: 50 drivers_path_prefix = os.path.dirname(SDK_ROOT) + '/drivers' 51 52if os.path.exists(SDK_ROOT + '/arch/ur-cp100'): 53 arch_path_prefix = SDK_ROOT + '/arch/ur-cp100' 54else: 55 arch_path_prefix = os.path.dirname(SDK_ROOT) + '/arch/ur-cp100' 56 57# include libraries 58objs.extend(SConscript(drivers_path_prefix + '/SConscript', variant_dir='build/drivers', duplicate=0)) 59 60objs.extend(SConscript(arch_path_prefix + '/SConscript', variant_dir='build/arch/ur-cp100', duplicate=0)) 61 62# make a building 63DoBuilding(TARGET, objs)