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() + '/../../../..') 9sys.path = sys.path + [os.path.join(RTT_ROOT, 'tools')] 10from building import * 11 12def bsp_pkg_check(): 13 import subprocess 14 15 check_paths = [ 16 os.path.join("packages", "nxp-lpc-series-latest"), 17 ] 18 19 need_update = not all(os.path.exists(p) for p in check_paths) 20 21 if need_update: 22 print("\n===============================================================================") 23 print("Dependency packages missing, please running 'pkgs --update'...") 24 print("If no packages are fetched, run 'pkgs --upgrade' first, then 'pkgs --update'...") 25 print("===============================================================================") 26 exit(1) 27 28RegisterPreBuildingAction(bsp_pkg_check) 29 30TARGET = 'rtthread-lpc17xx.' + rtconfig.TARGET_EXT 31 32DefaultEnvironment(tools=[]) 33env = Environment(tools = ['mingw'], 34 AS = rtconfig.AS, ASFLAGS = rtconfig.AFLAGS, 35 CC = rtconfig.CC, CFLAGS = rtconfig.CFLAGS, 36 AR = rtconfig.AR, ARFLAGS = '-rc', 37 LINK = rtconfig.LINK, LINKFLAGS = rtconfig.LFLAGS) 38 39if rtconfig.PLATFORM in ['iccarm']: 40 env.Replace(CCCOM = ['$CC $CFLAGS $CPPFLAGS $_CPPDEFFLAGS $_CPPINCFLAGS -o $TARGET $SOURCES']) 41 env.Replace(ARFLAGS = ['']) 42 env.Replace(LINKCOM = ['$LINK $SOURCES $LINKFLAGS -o $TARGET --map project.map']) 43 44Export('RTT_ROOT') 45Export('rtconfig') 46 47# prepare building environment 48objs = PrepareBuilding(env, RTT_ROOT) 49 50# make a building 51DoBuilding(TARGET, objs) 52