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 31 32TARGET = 'rtthread-%s.%s' % (rtconfig.BOARD_NAME, rtconfig.TARGET_EXT) 33DefaultEnvironment(tools=[]) 34if rtconfig.PLATFORM == 'armcc': 35 env = Environment(tools = ['mingw'], 36 AS = rtconfig.AS, ASFLAGS = rtconfig.AFLAGS, 37 CC = rtconfig.CC, CFLAGS = rtconfig.CFLAGS, 38 CXX = rtconfig.CXX, CXXFLAGS = rtconfig.CXXFLAGS, 39 AR = rtconfig.AR, ARFLAGS = '-rc', 40 LINK = rtconfig.LINK, LINKFLAGS = rtconfig.LFLAGS, 41 # overwrite cflags, because cflags has '--C99' 42 CXXCOM = '$CXX -o $TARGET --cpp -c $CXXFLAGS $_CCCOMCOM $SOURCES') 43else: 44 env = Environment(tools = ['mingw'], 45 AS = rtconfig.AS, ASFLAGS = rtconfig.AFLAGS, 46 CC = rtconfig.CC, CFLAGS = rtconfig.CFLAGS, 47 CXX = rtconfig.CXX, CXXFLAGS = rtconfig.CXXFLAGS, 48 AR = rtconfig.AR, ARFLAGS = '-rc', 49 LINK = rtconfig.LINK, LINKFLAGS = rtconfig.LFLAGS) 50 51env.PrependENVPath('PATH', rtconfig.EXEC_PATH) 52 53Export('RTT_ROOT') 54Export('rtconfig') 55 56# prepare building environment 57objs = PrepareBuilding(env, RTT_ROOT) 58 59# make a building 60DoBuilding(TARGET, objs) 61