auto-ci.py 1.6 KB

12345678910111213141516171819202122232425262728293031323334353637383940414243444546474849505152535455565758596061626364656667686970717273
  1. import os
  2. import sys
  3. bsp_to_cpu = {
  4. 'bf533': 'unknown',
  5. 'dev3210': 'unknown',
  6. 'jz47xx': 'unknown',
  7. 'ls1bdev': 'unknown',
  8. 'm16c62p': 'unknown',
  9. 'microblaze': 'unknown',
  10. 'mini4020': 'unknown',
  11. 'nuc140': 'unknown',
  12. 'nios_ii': 'unknown',
  13. 'pic32ethernet': 'unknown',
  14. 'upd70f3454': 'unknown',
  15. 'wh44b0': 'unknown',
  16. 'xplorer4330': 'unknown',
  17. 'avr32uc3b0': 'avr',
  18. 'taihu': 'ppc',
  19. 'simulator': 'x86',
  20. 'x86': 'x86',
  21. 'at91sam9260': 'arm',
  22. 'efm32': 'arm',
  23. 'lm3s8962': 'arm',
  24. 'lm3s9b9x': 'arm',
  25. 'lm4f232': 'arm',
  26. 'lpc1114': 'arm',
  27. 'lpc122x': 'arm',
  28. 'lpc176x': 'arm',
  29. 'lpc178x': 'arm',
  30. 'lpc2148': 'arm',
  31. 'lpc2478': 'arm',
  32. 'mb9bf500r': 'arm',
  33. 'mb9bf506r': 'arm',
  34. 'mini2440': 'arm',
  35. 'sam7s': 'arm',
  36. 'sam7x': 'arm',
  37. 'stm32f0x': 'arm',
  38. 'stm32f107': 'arm',
  39. 'stm32f10x': 'arm',
  40. 'stm32f40x': 'arm',
  41. }
  42. results = {
  43. 'success': [],
  44. 'fail': [],
  45. 'ignore': []
  46. }
  47. fail = False
  48. BSP_ROOT = '../bsp'
  49. for bsp,cpu in bsp_to_cpu.iteritems():
  50. project_dir = os.path.join(BSP_ROOT, bsp)
  51. if os.getenv('RTT_CPU') == cpu and os.path.isfile(os.path.join(project_dir, 'SConstruct')):
  52. if os.system('scons --directory=' + project_dir) != 0:
  53. results['fail'].append(bsp)
  54. fail = True
  55. else:
  56. results['success'].append(bsp)
  57. else:
  58. results['ignore'].append(bsp)
  59. for result,bsp_list in results.iteritems():
  60. print "## {0}: {1}\n".format(result, len(bsp_list))
  61. for bsp in bsp_list:
  62. print "* " + bsp
  63. if fail:
  64. sys.exit(1)
  65. else:
  66. sys.exit(0)