From 094d0b4fe3ec5301ce98a16f6bdd1a746f8ab6f3 Mon Sep 17 00:00:00 2001 From: WangQiang Date: Fri, 12 Jun 2020 16:15:40 +0800 Subject: [PATCH 1/3] =?UTF-8?q?=E4=BF=AE=E5=A4=8D=E4=BA=86imxrt1064-nxp-ev?= =?UTF-8?q?k=E7=9A=84BSP=E4=BD=BF=E7=94=A8scons=20--dist=E7=94=9F=E6=88=90?= =?UTF-8?q?=E7=9A=84=E5=B7=A5=E7=A8=8B=E7=9B=AE=E5=BD=95=E4=B8=AD=E6=B2=A1?= =?UTF-8?q?=E6=9C=89libraries=E7=9A=84=E9=97=AE=E9=A2=98?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- bsp/imxrt/imxrt1064-nxp-evk/SConstruct | 19 +++++++++++++++++-- bsp/imxrt/imxrt1064-nxp-evk/rtconfig.py | 10 ++++++++++ bsp/imxrt/tools/sdk_dist.py | 9 +++++---- 3 files changed, 32 insertions(+), 6 deletions(-) diff --git a/bsp/imxrt/imxrt1064-nxp-evk/SConstruct b/bsp/imxrt/imxrt1064-nxp-evk/SConstruct index 71be0c13c6..2827f048f0 100644 --- a/bsp/imxrt/imxrt1064-nxp-evk/SConstruct +++ b/bsp/imxrt/imxrt1064-nxp-evk/SConstruct @@ -45,11 +45,26 @@ if rtconfig.PLATFORM == 'iar': Export('RTT_ROOT') Export('rtconfig') +SDK_ROOT = os.path.abspath('./') +if os.path.exists(SDK_ROOT + '/Libraries'): + libraries_path_prefix = SDK_ROOT + '/Libraries' +else: + libraries_path_prefix = os.path.dirname(SDK_ROOT) + '/Libraries' + +SDK_LIB = libraries_path_prefix +Export('SDK_LIB') + # prepare building environment objs = PrepareBuilding(env, RTT_ROOT, has_libcpu=False) -objs = objs + SConscript('../libraries/drivers/SConscript') -objs = objs + SConscript('../libraries/MIMXRT1064/SConscript') +imxrt_library = 'MIMXRT1064' +rtconfig.BSP_LIBRARY_TYPE = imxrt_library + +# include libraries +objs.extend(SConscript(os.path.join(libraries_path_prefix, imxrt_library, 'SConscript'))) + +# include drivers +objs.extend(SConscript(os.path.join(libraries_path_prefix, 'drivers', 'SConscript'))) # make a building DoBuilding(TARGET, objs) diff --git a/bsp/imxrt/imxrt1064-nxp-evk/rtconfig.py b/bsp/imxrt/imxrt1064-nxp-evk/rtconfig.py index 4eccbc92fd..2acb77e3ed 100644 --- a/bsp/imxrt/imxrt1064-nxp-evk/rtconfig.py +++ b/bsp/imxrt/imxrt1064-nxp-evk/rtconfig.py @@ -5,6 +5,9 @@ ARCH='arm' CPU='cortex-m7' CROSS_TOOL='gcc' +# bsp lib config +BSP_LIBRARY_TYPE = None + if os.getenv('RTT_CC'): CROSS_TOOL = os.getenv('RTT_CC') if os.getenv('RTT_ROOT'): @@ -150,3 +153,10 @@ elif PLATFORM == 'iar': EXEC_PATH = EXEC_PATH + '/arm/bin/' POST_ACTION = 'ielftool --bin $TARGET rtthread.bin' + +def dist_handle(BSP_ROOT, dist_dir): + import sys + cwd_path = os.getcwd() + sys.path.append(os.path.join(os.path.dirname(BSP_ROOT), 'tools')) + from sdk_dist import dist_do_building + dist_do_building(BSP_ROOT, dist_dir) diff --git a/bsp/imxrt/tools/sdk_dist.py b/bsp/imxrt/tools/sdk_dist.py index ebf869b689..120bfafd1a 100644 --- a/bsp/imxrt/tools/sdk_dist.py +++ b/bsp/imxrt/tools/sdk_dist.py @@ -5,15 +5,16 @@ cwd_path = os.getcwd() sys.path.append(os.path.join(os.path.dirname(cwd_path), 'rt-thread', 'tools')) # BSP dist function -def dist_do_building(BSP_ROOT): +def dist_do_building(BSP_ROOT, dist_dir): from mkdist import bsp_copy_files import rtconfig - dist_dir = os.path.join(BSP_ROOT, 'dist', os.path.basename(BSP_ROOT)) + print("=> copy imxrt bsp library") library_path = os.path.join(os.path.dirname(BSP_ROOT), 'libraries') library_dir = os.path.join(dist_dir, 'libraries') + bsp_copy_files(os.path.join(library_path, rtconfig.BSP_LIBRARY_TYPE), + os.path.join(library_dir, rtconfig.BSP_LIBRARY_TYPE)) + print("=> copy bsp drivers") bsp_copy_files(os.path.join(library_path, 'drivers'), os.path.join(library_dir, 'drivers')) - print("=> copy bsp library") - bsp_copy_files(os.path.join(library_path, rtconfig.BSP_LIBRARY_TYPE), os.path.join(library_dir, rtconfig.BSP_LIBRARY_TYPE)) shutil.copyfile(os.path.join(library_path, 'Kconfig'), os.path.join(library_dir, 'Kconfig')) From 6da9c939fae084c6d0d86e950aa6d605117934c6 Mon Sep 17 00:00:00 2001 From: WangQiang Date: Mon, 15 Jun 2020 11:44:35 +0800 Subject: [PATCH 2/3] =?UTF-8?q?=E4=BC=98=E5=8C=96=E4=BA=86sdk=5Fdist.py?= =?UTF-8?q?=E4=B8=AD=E7=9A=84dist=5Fdo=5Fbuilding=E5=87=BD=E6=95=B0?= =?UTF-8?q?=EF=BC=8C=E4=B8=8D=E4=BC=9A=E5=BD=B1=E5=93=8D=E5=85=B6=E4=BB=96?= =?UTF-8?q?BSP=E7=9A=84=E8=B0=83=E7=94=A8?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- bsp/imxrt/tools/sdk_dist.py | 5 ++++- 1 file changed, 4 insertions(+), 1 deletion(-) diff --git a/bsp/imxrt/tools/sdk_dist.py b/bsp/imxrt/tools/sdk_dist.py index 120bfafd1a..89b7da4356 100644 --- a/bsp/imxrt/tools/sdk_dist.py +++ b/bsp/imxrt/tools/sdk_dist.py @@ -5,10 +5,13 @@ cwd_path = os.getcwd() sys.path.append(os.path.join(os.path.dirname(cwd_path), 'rt-thread', 'tools')) # BSP dist function -def dist_do_building(BSP_ROOT, dist_dir): +def dist_do_building(BSP_ROOT, dist_dir=None): from mkdist import bsp_copy_files import rtconfig + if dist_dir is None: + dist_dir = os.path.join(BSP_ROOT, 'dist', os.path.basename(BSP_ROOT)) + print("=> copy imxrt bsp library") library_path = os.path.join(os.path.dirname(BSP_ROOT), 'libraries') library_dir = os.path.join(dist_dir, 'libraries') From 574ace9146c75cad009b13628d44845542c5688d Mon Sep 17 00:00:00 2001 From: WangQiang Date: Mon, 15 Jun 2020 17:01:59 +0800 Subject: [PATCH 3/3] =?UTF-8?q?=E4=BF=AE=E5=A4=8D=E4=BA=86imxrt=E4=B8=8Bim?= =?UTF-8?q?xrt1052-atk-commander,=20imxrt1052-fire-pro,=20imxrt1052-nxp-ev?= =?UTF-8?q?k=E7=AD=89BSP=E7=9A=84scons=20--dist=E5=A4=B1=E8=B4=A5=E7=9A=84?= =?UTF-8?q?=E9=97=AE=E9=A2=98?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- bsp/imxrt/imxrt1052-atk-commander/rtconfig.py | 9 +++++++-- bsp/imxrt/imxrt1052-fire-pro/rtconfig.py | 9 +++++++-- bsp/imxrt/imxrt1052-nxp-evk/rtconfig.py | 8 ++++++-- 3 files changed, 20 insertions(+), 6 deletions(-) diff --git a/bsp/imxrt/imxrt1052-atk-commander/rtconfig.py b/bsp/imxrt/imxrt1052-atk-commander/rtconfig.py index 9b0c3da87f..cf79de685a 100644 --- a/bsp/imxrt/imxrt1052-atk-commander/rtconfig.py +++ b/bsp/imxrt/imxrt1052-atk-commander/rtconfig.py @@ -6,6 +6,9 @@ ARCH='arm' CPU='cortex-m7' CROSS_TOOL='gcc' +# bsp lib config +BSP_LIBRARY_TYPE = None + if os.getenv('RTT_CC'): CROSS_TOOL = os.getenv('RTT_CC') if os.getenv('RTT_ROOT'): @@ -149,9 +152,11 @@ elif PLATFORM == 'iar': EXEC_PATH = EXEC_PATH + '/arm/bin/' POST_ACTION = 'ielftool --bin $TARGET rtthread.bin' -def dist_handle(BSP_ROOT): + +def dist_handle(BSP_ROOT, dist_dir): + import sys cwd_path = os.getcwd() sys.path.append(os.path.join(os.path.dirname(BSP_ROOT), 'tools')) from sdk_dist import dist_do_building - dist_do_building(BSP_ROOT) + dist_do_building(BSP_ROOT, dist_dir) \ No newline at end of file diff --git a/bsp/imxrt/imxrt1052-fire-pro/rtconfig.py b/bsp/imxrt/imxrt1052-fire-pro/rtconfig.py index 9b0c3da87f..552cefe835 100644 --- a/bsp/imxrt/imxrt1052-fire-pro/rtconfig.py +++ b/bsp/imxrt/imxrt1052-fire-pro/rtconfig.py @@ -6,6 +6,9 @@ ARCH='arm' CPU='cortex-m7' CROSS_TOOL='gcc' +# bsp lib config +BSP_LIBRARY_TYPE = None + if os.getenv('RTT_CC'): CROSS_TOOL = os.getenv('RTT_CC') if os.getenv('RTT_ROOT'): @@ -149,9 +152,11 @@ elif PLATFORM == 'iar': EXEC_PATH = EXEC_PATH + '/arm/bin/' POST_ACTION = 'ielftool --bin $TARGET rtthread.bin' -def dist_handle(BSP_ROOT): +def dist_handle(BSP_ROOT, dist_dir): + import sys cwd_path = os.getcwd() sys.path.append(os.path.join(os.path.dirname(BSP_ROOT), 'tools')) from sdk_dist import dist_do_building - dist_do_building(BSP_ROOT) + dist_do_building(BSP_ROOT, dist_dir) + \ No newline at end of file diff --git a/bsp/imxrt/imxrt1052-nxp-evk/rtconfig.py b/bsp/imxrt/imxrt1052-nxp-evk/rtconfig.py index 88fd75b5e6..44de4dc1df 100644 --- a/bsp/imxrt/imxrt1052-nxp-evk/rtconfig.py +++ b/bsp/imxrt/imxrt1052-nxp-evk/rtconfig.py @@ -6,6 +6,9 @@ ARCH='arm' CPU='cortex-m7' CROSS_TOOL='gcc' +# bsp lib config +BSP_LIBRARY_TYPE = None + if os.getenv('RTT_CC'): CROSS_TOOL = os.getenv('RTT_CC') if os.getenv('RTT_ROOT'): @@ -149,9 +152,10 @@ elif PLATFORM == 'iar': EXEC_PATH = EXEC_PATH + '/arm/bin/' POST_ACTION = 'ielftool --bin $TARGET rtthread.bin' -def dist_handle(BSP_ROOT): +def dist_handle(BSP_ROOT, dist_dir): + import sys cwd_path = os.getcwd() sys.path.append(os.path.join(os.path.dirname(BSP_ROOT), 'tools')) from sdk_dist import dist_do_building - dist_do_building(BSP_ROOT) + dist_do_building(BSP_ROOT, dist_dir) \ No newline at end of file