sdk_dist.py 1.7 KB

12345678910111213141516171819202122232425262728293031323334353637383940414243
  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. def bsp_update_kconfig_library(dist_dir):
  7. # change RTT_ROOT in Kconfig
  8. if not os.path.isfile(os.path.join(dist_dir, 'Kconfig')):
  9. return
  10. with open(os.path.join(dist_dir, 'Kconfig'), 'r') as f:
  11. data = f.readlines()
  12. with open(os.path.join(dist_dir, 'Kconfig'), 'w') as f:
  13. for line in data:
  14. if line.find('source') != -1 and line.find('../libraries') != -1:
  15. line = line.replace('../libraries', 'libraries')
  16. f.write(line)
  17. # BSP dist function
  18. def dist_do_building(BSP_ROOT, dist_dir):
  19. from mkdist import bsp_copy_files
  20. import rtconfig
  21. print("=> copy at32 bsp library")
  22. library_dir = os.path.join(dist_dir, 'libraries')
  23. library_path = os.path.join(os.path.dirname(BSP_ROOT), 'libraries')
  24. if rtconfig.BSP_LIBRARY_TYPE is not None:
  25. bsp_copy_files(
  26. os.path.join(library_path, rtconfig.BSP_LIBRARY_TYPE),
  27. os.path.join(library_dir, rtconfig.BSP_LIBRARY_TYPE),
  28. )
  29. print("=> copy bsp drivers")
  30. bsp_copy_files(os.path.join(library_path, 'CMSIS'), os.path.join(library_dir, 'CMSIS'))
  31. bsp_copy_files(os.path.join(library_path, 'rt_drivers'), os.path.join(library_dir, 'rt_drivers'))
  32. bsp_copy_files(os.path.join(library_path, 'usbd_library'), os.path.join(library_dir, 'usbd_library'))
  33. bsp_copy_files(os.path.join(library_path, 'usbotg_library'), os.path.join(library_dir, 'usbotg_library'))
  34. shutil.copyfile(os.path.join(library_path, 'Kconfig'), os.path.join(library_dir, 'Kconfig'))
  35. bsp_update_kconfig_library(dist_dir)