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