Skip to content

Commit 094d0b4

Browse files
committed
修复了imxrt1064-nxp-evk的BSP使用scons --dist生成的工程目录中没有libraries的问题
1 parent b2e30a7 commit 094d0b4

File tree

3 files changed

+32
-6
lines changed

3 files changed

+32
-6
lines changed

bsp/imxrt/imxrt1064-nxp-evk/SConstruct

Lines changed: 17 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -45,11 +45,26 @@ if rtconfig.PLATFORM == 'iar':
4545
Export('RTT_ROOT')
4646
Export('rtconfig')
4747

48+
SDK_ROOT = os.path.abspath('./')
49+
if os.path.exists(SDK_ROOT + '/Libraries'):
50+
libraries_path_prefix = SDK_ROOT + '/Libraries'
51+
else:
52+
libraries_path_prefix = os.path.dirname(SDK_ROOT) + '/Libraries'
53+
54+
SDK_LIB = libraries_path_prefix
55+
Export('SDK_LIB')
56+
4857
# prepare building environment
4958
objs = PrepareBuilding(env, RTT_ROOT, has_libcpu=False)
5059

51-
objs = objs + SConscript('../libraries/drivers/SConscript')
52-
objs = objs + SConscript('../libraries/MIMXRT1064/SConscript')
60+
imxrt_library = 'MIMXRT1064'
61+
rtconfig.BSP_LIBRARY_TYPE = imxrt_library
62+
63+
# include libraries
64+
objs.extend(SConscript(os.path.join(libraries_path_prefix, imxrt_library, 'SConscript')))
65+
66+
# include drivers
67+
objs.extend(SConscript(os.path.join(libraries_path_prefix, 'drivers', 'SConscript')))
5368

5469
# make a building
5570
DoBuilding(TARGET, objs)

bsp/imxrt/imxrt1064-nxp-evk/rtconfig.py

Lines changed: 10 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -5,6 +5,9 @@
55
CPU='cortex-m7'
66
CROSS_TOOL='gcc'
77

8+
# bsp lib config
9+
BSP_LIBRARY_TYPE = None
10+
811
if os.getenv('RTT_CC'):
912
CROSS_TOOL = os.getenv('RTT_CC')
1013
if os.getenv('RTT_ROOT'):
@@ -150,3 +153,10 @@
150153

151154
EXEC_PATH = EXEC_PATH + '/arm/bin/'
152155
POST_ACTION = 'ielftool --bin $TARGET rtthread.bin'
156+
157+
def dist_handle(BSP_ROOT, dist_dir):
158+
import sys
159+
cwd_path = os.getcwd()
160+
sys.path.append(os.path.join(os.path.dirname(BSP_ROOT), 'tools'))
161+
from sdk_dist import dist_do_building
162+
dist_do_building(BSP_ROOT, dist_dir)

bsp/imxrt/tools/sdk_dist.py

Lines changed: 5 additions & 4 deletions
Original file line numberDiff line numberDiff line change
@@ -5,15 +5,16 @@
55
sys.path.append(os.path.join(os.path.dirname(cwd_path), 'rt-thread', 'tools'))
66

77
# BSP dist function
8-
def dist_do_building(BSP_ROOT):
8+
def dist_do_building(BSP_ROOT, dist_dir):
99
from mkdist import bsp_copy_files
1010
import rtconfig
1111

12-
dist_dir = os.path.join(BSP_ROOT, 'dist', os.path.basename(BSP_ROOT))
12+
print("=> copy imxrt bsp library")
1313
library_path = os.path.join(os.path.dirname(BSP_ROOT), 'libraries')
1414
library_dir = os.path.join(dist_dir, 'libraries')
15+
bsp_copy_files(os.path.join(library_path, rtconfig.BSP_LIBRARY_TYPE),
16+
os.path.join(library_dir, rtconfig.BSP_LIBRARY_TYPE))
17+
1518
print("=> copy bsp drivers")
1619
bsp_copy_files(os.path.join(library_path, 'drivers'), os.path.join(library_dir, 'drivers'))
17-
print("=> copy bsp library")
18-
bsp_copy_files(os.path.join(library_path, rtconfig.BSP_LIBRARY_TYPE), os.path.join(library_dir, rtconfig.BSP_LIBRARY_TYPE))
1920
shutil.copyfile(os.path.join(library_path, 'Kconfig'), os.path.join(library_dir, 'Kconfig'))

0 commit comments

Comments
 (0)