1import os 2import sys 3import rtconfig 4 5if os.getenv('RTT_ROOT'): 6 RTT_ROOT = os.getenv('RTT_ROOT') 7else: 8 RTT_ROOT = os.path.normpath(os.getcwd() + '/../../../..') 9 10sys.path = sys.path + [os.path.join(RTT_ROOT, 'tools')] 11from building import * 12 13def bsp_pkg_check(): 14 import subprocess 15 16 check_paths = [ 17 os.path.join("packages", "nxp-lpc-series-latest"), 18 ] 19 20 need_update = not all(os.path.exists(p) for p in check_paths) 21 22 if need_update: 23 print("\n===============================================================================") 24 print("Dependency packages missing, please running 'pkgs --update'...") 25 print("If no packages are fetched, run 'pkgs --upgrade' first, then 'pkgs --update'...") 26 print("===============================================================================") 27 exit(1) 28 29RegisterPreBuildingAction(bsp_pkg_check) 30 31TARGET = 'rtthread-%s.%s' % (rtconfig.BOARD_NAME, rtconfig.TARGET_EXT) 32DefaultEnvironment(tools=[]) 33if rtconfig.PLATFORM == 'armcc': 34 env = Environment(tools = ['mingw'], 35 AS = rtconfig.AS, ASFLAGS = rtconfig.AFLAGS, 36 CC = rtconfig.CC, CFLAGS = rtconfig.CFLAGS, 37 CXX = rtconfig.CXX, CXXFLAGS = rtconfig.CXXFLAGS, 38 AR = rtconfig.AR, ARFLAGS = '-rc', 39 LINK = rtconfig.LINK, LINKFLAGS = rtconfig.LFLAGS, 40 # overwrite cflags, because cflags has '--C99' 41 CXXCOM = '$CXX -o $TARGET --cpp -c $CXXFLAGS $_CCCOMCOM $SOURCES') 42else: 43 env = Environment(tools = ['mingw'], 44 AS = rtconfig.AS, ASFLAGS = rtconfig.AFLAGS, 45 CC = rtconfig.CC, CFLAGS = rtconfig.CFLAGS, 46 CXX = rtconfig.CXX, CXXFLAGS = rtconfig.CXXFLAGS, 47 AR = rtconfig.AR, ARFLAGS = '-rc', 48 LINK = rtconfig.LINK, LINKFLAGS = rtconfig.LFLAGS) 49 50env.PrependENVPath('PATH', rtconfig.EXEC_PATH) 51 52Export('RTT_ROOT') 53Export('rtconfig') 54 55# prepare building environment 56objs = PrepareBuilding(env, RTT_ROOT) 57 58# make a building 59DoBuilding(TARGET, objs) 60