sdk_dist.py 1.4 KB

12345678910111213141516171819202122232425262728293031323334
  1. import os
  2. import sys
  3. import shutil
  4. cwd_path = os.getcwd()
  5. sys.path.append(os.path.join(os.path.dirname(cwd_path), 'rt-thread', 'tools'))
  6. # BSP dist function
  7. def dist_do_building(BSP_ROOT, dist_dir):
  8. from mkdist import bsp_copy_files
  9. import rtconfig
  10. library_path = os.path.join(os.path.dirname(BSP_ROOT), 'Libraries')
  11. library_dir = os.path.join(dist_dir, 'Libraries')
  12. print("=> copy bsp drivers")
  13. bsp_copy_files(os.path.join(library_path, 'drivers'), os.path.join(library_dir, 'drivers'))
  14. print("=> copy bsp CMSIS")
  15. bsp_copy_files(os.path.join(library_path, 'CMSIS'), os.path.join(library_dir, 'CMSIS'))
  16. print("=> copy bsp library")
  17. bsp_copy_files(os.path.join(library_path, rtconfig.BSP_LIBRARY_TYPE), os.path.join(library_dir, rtconfig.BSP_LIBRARY_TYPE))
  18. shutil.copyfile(os.path.join(library_path, 'Kconfig'), os.path.join(library_dir, 'Kconfig'))
  19. # if project Kconfig not exists, no more work to do!
  20. project_kconfig = os.path.join(dist_dir, 'Kconfig')
  21. if not os.path.exists(project_kconfig):
  22. print("project Kconfig not exists!")
  23. return
  24. # replace '../Libraries/Kconfig' to 'Libraries/Kconfig'
  25. with open(project_kconfig, 'r') as f:
  26. data = f.readlines()
  27. with open(project_kconfig, 'w') as f:
  28. for line in data:
  29. line = line.replace('../Libraries/Kconfig', 'Libraries/Kconfig')
  30. f.write(line)