1import os
2import sys
3import shutil
4
5cwd_path = os.getcwd()
6# cwd_path = E:\rt-thread\bsp\core-v-mcu\tools
7sys.path.append(os.path.join(os.path.dirname(cwd_path), 'rt-thread', 'tools'))
8
9
10# BSP dist function
11def dist_do_building(BSP_ROOT, dist_dir):
12    from mkdist import bsp_copy_files
13    import rtconfig
14
15    print("=> copy core-v bsp library")
16    library_dir = os.path.join(dist_dir, 'Libraries')
17    library_path = os.path.join(os.path.dirname(BSP_ROOT), 'Libraries')
18    bsp_copy_files(os.path.join(library_path, rtconfig.BSP_LIBRARY_TYPE), os.path.join(library_dir, rtconfig.BSP_LIBRARY_TYPE))
19    # library_dir = E:\rt-thread\bsp\core-v-mcu\Libraries
20    print("=> copy bsp drivers")
21    bsp_copy_files(os.path.join(library_path, 'core_v_drivers'), os.path.join(library_dir, 'core_v_drivers'))
22    shutil.copyfile(os.path.join(library_path, 'Kconfig'), os.path.join(library_dir, 'Kconfig'))
23    # change RTT_ROOT in Kconfig
24    if not os.path.isfile(os.path.join(dist_dir, 'Kconfig')):
25        return
26
27    with open(os.path.join(dist_dir, 'Kconfig'), 'r') as f:
28        data = f.readlines()
29    with open(os.path.join(dist_dir, 'Kconfig'), 'w') as f:
30        for line in data:
31            if line.find('source') != -1 and line.find('../libraries') != -1:
32                line = line.replace('../libraries', 'libraries')
33            f.write(line)
34