SConscript 6.6 KB

123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103104105106107108109110111112113114115116117118119120121122123124125126127128129130131132133134135136137138139140141142143144145146147148149150151152153154155156157158159160161162163164165166167168169170171172173174175176177178179180181182183184185186187188189190191192193194195196197198199200201202
  1. from building import *
  2. import rtconfig
  3. # get current directory
  4. cwd = GetCurrentDir()
  5. # The set of source files associated with this SConscript file.
  6. src = Glob('port/u8g2_port.c')
  7. src += Glob('../../csrc/*.c')
  8. if(GetDepend('U8G2_USE_CPP')):
  9. src += Glob('port/*.cpp')
  10. if(not GetDepend('U8G2_USE_CPP')):
  11. if GetDepend('U8G2_USING_SW_I2C_SSD1306'):
  12. src += Glob('examples/ssd1306_12864_sw_i2c_example.c')
  13. if GetDepend('U8G2_USING_HW_I2C_SSD1306'):
  14. src += Glob('examples/ssd1306_12864_hw_i2c_example.c')
  15. if GetDepend('U8G2_USING_SW_SPI_SSD1306'):
  16. src += Glob('examples/ssd1306_12864_4wire_sw_spi_example.c')
  17. if GetDepend('U8G2_USING_HW_SPI_SSD1306'):
  18. src += Glob('examples/ssd1306_12864_4wire_hw_spi_example.c')
  19. if GetDepend('U8G2_USING_8080_ST7920'):
  20. src += Glob('examples/st7920_12864_8080_example.c')
  21. if GetDepend('U8G2_USING_I2C_YL40'):
  22. src += Glob('examples/yl_40_example.c')
  23. else:
  24. # Basic Examples
  25. if GetDepend('U8G2_USING_SW_I2C_SSD1306'):
  26. src += Glob('examples/ssd1306_12864_sw_i2c_example.cpp')
  27. if GetDepend('U8G2_USING_HW_I2C_SSD1306'):
  28. src += Glob('examples/ssd1306_12864_hw_i2c_example.cpp')
  29. if GetDepend('U8G2_USING_SW_SPI_SSD1306'):
  30. src += Glob('examples/ssd1306_12864_4wire_sw_spi_example.cpp')
  31. if GetDepend('U8G2_USING_HW_SPI_SSD1306'):
  32. src += Glob('examples/ssd1306_12864_4wire_hw_spi_example.cpp')
  33. if GetDepend('U8G2_USING_8080_ST7920'):
  34. src += Glob('examples/st7920_12864_8080_example.cpp')
  35. if GetDepend('U8G2_USING_I2C_YL40'):
  36. src += Glob('examples/yl_40_example.c')
  37. # Frame Buffer Examples
  38. if GetDepend('U8G2_USING_FRAME_EXAMPLE_FONT_USAGE'):
  39. src += Glob('examples/full_buffer/FontUsage.cpp')
  40. if GetDepend('U8G2_USING_FRAME_EXAMPLE_FPS'):
  41. src += Glob('examples/full_buffer/FPS.cpp')
  42. if GetDepend('U8G2_USING_FRAME_EXAMPLE_GRAPHIC_TEST'):
  43. src += Glob('examples/full_buffer/GraphicsTest.cpp')
  44. if GetDepend('U8G2_USING_FRAME_EXAMPLE_HELLO_WORLD'):
  45. src += Glob('examples/full_buffer/HelloWorld.cpp')
  46. if GetDepend('U8G2_USING_FRAME_EXAMPLE_ICON_MENU'):
  47. src += Glob('examples/full_buffer/IconMenu.cpp')
  48. if GetDepend('U8G2_USING_FRAME_EXAMPLE_PRINT_UTF8'):
  49. src += Glob('examples/full_buffer/PrintUTF8.cpp')
  50. if GetDepend('U8G2_USING_FRAME_EXAMPLE_SELECTION_LIST'):
  51. src += Glob('examples/full_buffer/SelectionList.cpp')
  52. if GetDepend('U8G2_USING_FRAME_EXAMPLE_U8G2_LOGO'):
  53. src += Glob('examples/full_buffer/U8g2Logo.cpp')
  54. if GetDepend('U8G2_USING_FRAME_EXAMPLE_UPDATE_AREA'):
  55. src += Glob('examples/full_buffer/UpdateArea.cpp')
  56. if GetDepend('U8G2_USING_FRAME_EXAMPLE_WEATHER'):
  57. src += Glob('examples/full_buffer/Weather.cpp')
  58. # Page Buffer Examples
  59. if GetDepend('U8G2_USING_PAGE_EXAMPLE_CHINESE'):
  60. src += Glob('examples/page_buffer/Chinese.cpp')
  61. if GetDepend('U8G2_USING_PAGE_EXAMPLE_CLIP_WINDOW'):
  62. src += Glob('examples/page_buffer/ClipWindow.cpp')
  63. if GetDepend('U8G2_USING_PAGE_EXAMPLE_CLOCK'):
  64. src += Glob('examples/page_buffer/Clock.cpp')
  65. if GetDepend('U8G2_USING_PAGE_EXAMPLE_CONTRAST_TEST'):
  66. src += Glob('examples/page_buffer/ContrastTest.cpp')
  67. if GetDepend('U8G2_USING_PAGE_EXAMPLE_DEVANAGARI'):
  68. src += Glob('examples/page_buffer/Devanagari.cpp')
  69. if GetDepend('U8G2_USING_PAGE_EXAMPLE_DIRECT_ACCESS'):
  70. src += Glob('examples/page_buffer/DirectAccess.cpp')
  71. if GetDepend('U8G2_USING_PAGE_EXAMPLE_DRAW_LOG'):
  72. src += Glob('examples/page_buffer/DrawLog.cpp')
  73. if GetDepend('U8G2_USING_PAGE_EXAMPLE_EXT_UTF8'):
  74. src += Glob('examples/page_buffer/ExtUTF8.cpp')
  75. if GetDepend('U8G2_USING_PAGE_EXAMPLE_FLIP_MODE'):
  76. src += Glob('examples/page_buffer/FlipMode_pb.cpp')
  77. if GetDepend('U8G2_USING_PAGE_EXAMPLE_FPS'):
  78. src += Glob('examples/page_buffer/FPS_pb.cpp')
  79. if GetDepend('U8G2_USING_PAGE_EXAMPLE_GRAPHIC_TEST'):
  80. src += Glob('examples/page_buffer/GraphicsTest_pb.cpp')
  81. if GetDepend('U8G2_USING_PAGE_EXAMPLE_HELLO_WORLD'):
  82. src += Glob('examples/page_buffer/HelloWorld_pb.cpp')
  83. if GetDepend('U8G2_USING_PAGE_EXAMPLE_ICON_MENU'):
  84. src += Glob('examples/page_buffer/IconMenu_pb.cpp')
  85. if GetDepend('U8G2_USING_PAGE_EXAMPLE_JAPANESE'):
  86. src += Glob('examples/page_buffer/Japanese.cpp')
  87. if GetDepend('U8G2_USING_PAGE_EXAMPLE_KOREAN'):
  88. src += Glob('examples/page_buffer/Korean.cpp')
  89. if GetDepend('U8G2_USING_PAGE_EXAMPLE_POWER_SAVE_TEST'):
  90. src += Glob('examples/page_buffer/PowerSaveTest.cpp')
  91. if GetDepend('U8G2_USING_PAGE_EXAMPLE_PRINT_HELLO_WORLD'):
  92. src += Glob('examples/page_buffer/PrintHelloWorld.cpp')
  93. if GetDepend('U8G2_USING_PAGE_EXAMPLE_SCROLLING_TEXT'):
  94. src += Glob('examples/page_buffer/ScrollingText.cpp')
  95. if GetDepend('U8G2_USING_PAGE_EXAMPLE_SELECTION_LIST'):
  96. src += Glob('examples/page_buffer/SelectionList_pb.cpp')
  97. if GetDepend('U8G2_USING_PAGE_EXAMPLE_SERIAL'):
  98. src += Glob('examples/page_buffer/Serial.cpp')
  99. if GetDepend('U8G2_USING_PAGE_EXAMPLE_STATE_BUFFER_LOOP'):
  100. src += Glob('examples/page_buffer/StateBufferLoop.cpp')
  101. if GetDepend('U8G2_USING_PAGE_EXAMPLE_TERMINAL'):
  102. src += Glob('examples/page_buffer/Terminal_pb.cpp')
  103. if GetDepend('U8G2_USING_PAGE_EXAMPLE_U8G2_LOGO'):
  104. src += Glob('examples/page_buffer/U8g2Logo_pb.cpp')
  105. if GetDepend('U8G2_USING_PAGE_EXAMPLE_UPDATE_PARTLY'):
  106. src += Glob('examples/page_buffer/UpdatePartly_pb.cpp')
  107. if GetDepend('U8G2_USING_PAGE_EXAMPLE_WEATHER'):
  108. src += Glob('examples/page_buffer/Weather_pb.cpp')
  109. if GetDepend('U8G2_USING_PAGE_EXAMPLE_XBM'):
  110. src += Glob('examples/page_buffer/XBM.cpp')
  111. if GetDepend('U8G2_USING_PAGE_EXAMPLE_XOR_TEST'):
  112. src += Glob('examples/page_buffer/XORTest.cpp')
  113. # U8x8 Examples
  114. if GetDepend('U8G2_USING_U8x8_EXAMPLE_16x16_FONT'):
  115. src += Glob('examples/u8x8/16x16Font.cpp')
  116. if GetDepend('U8G2_USING_U8x8_EXAMPLE_FLIP_MODE'):
  117. src += Glob('examples/u8x8/FlipMode.cpp')
  118. if GetDepend('U8G2_USING_U8x8_EXAMPLE_GRAPHIC_TEST'):
  119. src += Glob('examples/u8x8/GraphicsTest_8x8.cpp')
  120. if GetDepend('U8G2_USING_U8x8_EXAMPLE_HELLO_WORLD'):
  121. src += Glob('examples/u8x8/HelloWorld_8x8.cpp')
  122. if GetDepend('U8G2_USING_U8x8_EXAMPLE_MESSAGE_BOX'):
  123. src += Glob('examples/u8x8/MessageBox_8x8.cpp')
  124. if GetDepend('U8G2_USING_U8x8_EXAMPLE_TERMINAL'):
  125. src += Glob('examples/u8x8/Terminal_8x8.cpp')
  126. # Game Examples
  127. if GetDepend('U8G2_USING_GAME_EXAMPLE_SPACE_TRASH'):
  128. src += Glob('examples/games/SpaceTrash.cpp')
  129. if GetDepend('U8G2_USING_GAME_EXAMPLE_TREX'):
  130. src += Glob('examples/games/TRex.cpp')
  131. path = [cwd + '/port']
  132. path += [cwd + '/../../csrc']
  133. group = DefineGroup('u8g2', src, depend = ['PKG_USING_U8G2_OFFICIAL'], CPPPATH = path)
  134. Return('group')