SConscript 4.5 KB

123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103104105106107108109110111112113114115
  1. import os
  2. from building import *
  3. import rtconfig
  4. cwd = GetCurrentDir()
  5. src_base = []
  6. sample_ucloud_mqtt_src = []
  7. sample_ucloud_mqtt_dynamic_auth_src = []
  8. sample_ucloud_http_publish_src = []
  9. sample_ucloud_http_upload_file_src = []
  10. sample_ucloud_shadow_src = []
  11. sample_ucloud_dev_model_src = []
  12. sample_ucloud_ota_src = []
  13. CPPPATH = []
  14. CPPDEFINES = []
  15. LOCAL_CCFLAGS = ''
  16. #include headfile
  17. CPPPATH += [cwd + '/ports/rtthread']
  18. CPPPATH += [cwd + '/ports/ssl']
  19. CPPPATH += [cwd + '/ports/fal']
  20. CPPPATH += [cwd + '/uiot/certs']
  21. CPPPATH += [cwd + '/uiot/dev_model/include']
  22. CPPPATH += [cwd + '/uiot/mqtt/include']
  23. CPPPATH += [cwd + '/uiot/ota/include']
  24. CPPPATH += [cwd + '/uiot/sdk-impl']
  25. CPPPATH += [cwd + '/uiot/shadow/include']
  26. CPPPATH += [cwd + '/uiot/utils']
  27. src_base += Glob('uiot/utils/*.c')
  28. src_base += Glob('ports/rtthread/HAL_OS_rtthread.c')
  29. src_base += Glob('ports/rtthread/HAL_TCP_rtthread.c')
  30. src_base += Glob('ports/rtthread/HAL_Timer_rtthread.c')
  31. #Debug
  32. if GetDepend(['PKG_USING_UCLOUD_DEBUG']):
  33. CPPDEFINES += ['ENABLE_LOG_DEBUG', 'ENABLE_LOG_INFO', 'ENABLE_LOG_WARN', 'ENABLE_LOG_ERROR']
  34. #Gen MQTT src file
  35. if GetDepend(['PKG_USING_UCLOUD_MQTT']):
  36. src_base += Glob('uiot/mqtt/src/*.c')
  37. #Gen HTTP src file
  38. if GetDepend(['PKG_USING_UCLOUD_HTTP']):
  39. src_base += Glob('uiot/http/*.c')
  40. #Gen shadow src file
  41. if GetDepend(['PKG_USING_UCLOUD_SHADOW']):
  42. src_base += Glob('uiot/shadow/src/*.c')
  43. #Gen dev model src file
  44. if GetDepend(['PKG_USING_UCLOUD_DEV_MODEL']):
  45. src_base += Glob('uiot/dev_model/src/*.c')
  46. #Gen ota src file
  47. if GetDepend(['PKG_USING_UCLOUD_OTA']):
  48. src_base += Glob('uiot/ota/src/*.c')
  49. src_base += Glob('ports/fal/*.c')
  50. src_base += Glob('ports/rtthread/HAL_Flash_rtthread.c')
  51. #TLS used
  52. if GetDepend(['PKG_USING_UCLOUD_TLS']):
  53. src_base += Glob('uiot/certs/ca.c')
  54. src_base += Glob('ports/ssl/HAL_TLS_mbedtls.c')
  55. CPPDEFINES += ['MBEDTLS_CONFIG_FILE=<HAL_TLS_config.h>']
  56. #Hub C-SDK core
  57. group = DefineGroup('ucloud_iot_sdk', src_base, depend = ['PKG_USING_UCLOUD_IOT_SDK'], CPPPATH = CPPPATH, LOCAL_CCFLAGS = LOCAL_CCFLAGS, CPPDEFINES = CPPDEFINES)
  58. #MQTT Example
  59. if GetDepend(['PKG_USING_UCLOUD_MQTT_SAMPLE']):
  60. sample_ucloud_mqtt_src += Glob('samples/mqtt/mqtt_sample.c')
  61. group = DefineGroup('sample_ucloud_mqtt', sample_ucloud_mqtt_src, depend = ['PKG_USING_UCLOUD_MQTT_SAMPLE'], CPPPATH = CPPPATH, LOCAL_CCFLAGS = LOCAL_CCFLAGS, CPPDEFINES = CPPDEFINES)
  62. #MQTT Dynamic Auth Example
  63. if GetDepend(['PKG_USING_UCLOUD_MQTT_DYNAMIC_AUTH_SAMPLE']):
  64. sample_ucloud_mqtt_dynamic_auth_src += Glob('samples/dynamic_auth/dynamic_auth_sample.c')
  65. group = DefineGroup('sample_ucloud_mqtt_dynamic_auth', sample_ucloud_mqtt_dynamic_auth_src, depend = ['PKG_USING_UCLOUD_MQTT_DYNAMIC_AUTH_SAMPLE'], CPPPATH = CPPPATH, LOCAL_CCFLAGS = LOCAL_CCFLAGS, CPPDEFINES = CPPDEFINES)
  66. #Http Publish Example
  67. if GetDepend(['PKG_USING_UCLOUD_HTTP_PUBLISH_SAMPLE']):
  68. sample_ucloud_http_publish_src += Glob('samples/http/http_client_sample.c')
  69. group = DefineGroup('sample_ucloud_http_publish', sample_ucloud_http_publish_src, depend = ['PKG_USING_UCLOUD_HTTP_PUBLISH_SAMPLE'], CPPPATH = CPPPATH, LOCAL_CCFLAGS = LOCAL_CCFLAGS, CPPDEFINES = CPPDEFINES)
  70. #Http Upload File Example
  71. if GetDepend(['PKG_USING_UCLOUD_HTTP_UPLOAD_FILE_SAMPLE']):
  72. sample_ucloud_http_upload_file_src += Glob('samples/http/upload_file_sample.c')
  73. group = DefineGroup('sample_ucloud_http_upload_file', sample_ucloud_http_upload_file_src, depend = ['PKG_USING_UCLOUD_HTTP_UPLOAD_FILE_SAMPLE'], CPPPATH = CPPPATH, LOCAL_CCFLAGS = LOCAL_CCFLAGS, CPPDEFINES = CPPDEFINES)
  74. #Shadow Example
  75. if GetDepend(['PKG_USING_UCLOUD_SHADOW_SAMPLE']):
  76. sample_ucloud_shadow_src += Glob('samples/shadow/shadow_sample.c')
  77. group = DefineGroup('sample_ucloud_shadow', sample_ucloud_shadow_src, depend = ['PKG_USING_UCLOUD_SHADOW_SAMPLE'], CPPPATH = CPPPATH, LOCAL_CCFLAGS = LOCAL_CCFLAGS, CPPDEFINES = CPPDEFINES)
  78. #Dev Model Example
  79. if GetDepend(['PKG_USING_UCLOUD_DEV_MODEL_SAMPLE']):
  80. sample_ucloud_dev_model_src += Glob('samples/dev_model/dev_model_sample.c')
  81. group = DefineGroup('sample_ucloud_dev_model', sample_ucloud_dev_model_src, depend = ['PKG_USING_UCLOUD_DEV_MODEL_SAMPLE'], CPPPATH = CPPPATH, LOCAL_CCFLAGS = LOCAL_CCFLAGS, CPPDEFINES = CPPDEFINES)
  82. #OTA Example
  83. if GetDepend(['PKG_USING_UCLOUD_OTA_SAMPLE']):
  84. sample_ucloud_ota_src += Glob('samples/ota/ota_sample.c')
  85. group = DefineGroup('sample_ucloud_ota', sample_ucloud_ota_src, depend = ['PKG_USING_UCLOUD_OTA_SAMPLE'], CPPPATH = CPPPATH, LOCAL_CCFLAGS = LOCAL_CCFLAGS, CPPDEFINES = CPPDEFINES)
  86. Return('group')