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