SConscript 4.3 KB

123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103104105106107108109110111112
  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/*.c')
  29. #Debug
  30. if GetDepend(['PKG_USING_UCLOUD_DEBUG']):
  31. CPPDEFINES += ['ENABLE_LOG_DEBUG', 'ENABLE_LOG_INFO', 'ENABLE_LOG_WARN', 'ENABLE_LOG_ERROR']
  32. #Gen MQTT src file
  33. if GetDepend(['PKG_USING_UCLOUD_MQTT']):
  34. src_base += Glob('uiot/mqtt/src/*.c')
  35. #Gen HTTP src file
  36. if GetDepend(['PKG_USING_UCLOUD_HTTP']):
  37. src_base += Glob('uiot/http/*.c')
  38. #Gen shadow src file
  39. if GetDepend(['PKG_USING_UCLOUD_SHADOW']):
  40. src_base += Glob('uiot/shadow/src/*.c')
  41. #Gen dev model src file
  42. if GetDepend(['PKG_USING_UCLOUD_DEV_MODEL']):
  43. src_base += Glob('uiot/dev_model/src/*.c')
  44. #Gen ota src file
  45. if GetDepend(['PKG_USING_UCLOUD_OTA']):
  46. src_base += Glob('uiot/ota/src/*.c')
  47. src_base += Glob('ports/fal/*.c')
  48. #TLS used
  49. if GetDepend(['PKG_USING_UCLOUD_TLS']):
  50. src_base += Glob('uiot/certs/ca.c')
  51. src_base += Glob('ports/ssl/HAL_TLS_mbedtls.c')
  52. CPPDEFINES += ['MBEDTLS_CONFIG_FILE=<HAL_TLS_config.h>']
  53. #Hub C-SDK core
  54. group = DefineGroup('ucloud_iot_sdk', src_base, depend = ['PKG_USING_UCLOUD_IOT_SDK'], CPPPATH = CPPPATH, LOCAL_CCFLAGS = LOCAL_CCFLAGS, CPPDEFINES = CPPDEFINES)
  55. #MQTT Example
  56. if GetDepend(['PKG_USING_UCLOUD_MQTT_SAMPLE']):
  57. sample_ucloud_mqtt_src += Glob('samples/mqtt/mqtt_sample.c')
  58. group = DefineGroup('sample_ucloud_mqtt', sample_ucloud_mqtt_src, depend = ['PKG_USING_UCLOUD_MQTT_SAMPLE'], CPPPATH = CPPPATH, LOCAL_CCFLAGS = LOCAL_CCFLAGS, CPPDEFINES = CPPDEFINES)
  59. #MQTT Dynamic Auth Example
  60. if GetDepend(['PKG_USING_UCLOUD_MQTT_DYNAMIC_AUTH_SAMPLE']):
  61. sample_ucloud_mqtt_dynamic_auth_src += Glob('samples/dynamic_auth/dynamic_auth_sample.c')
  62. 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)
  63. #Http Publish Example
  64. if GetDepend(['PKG_USING_UCLOUD_HTTP_PUBLISH_SAMPLE']):
  65. sample_ucloud_http_publish_src += Glob('samples/http/http_client_sample.c')
  66. 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)
  67. #Http Upload File Example
  68. if GetDepend(['PKG_USING_UCLOUD_HTTP_UPLOAD_FILE_SAMPLE']):
  69. sample_ucloud_http_upload_file_src += Glob('samples/http/upload_file_sample.c')
  70. 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)
  71. #Shadow Example
  72. if GetDepend(['PKG_USING_UCLOUD_SHADOW_SAMPLE']):
  73. sample_ucloud_shadow_src += Glob('samples/shadow/shadow_sample.c')
  74. group = DefineGroup('sample_ucloud_shadow', sample_ucloud_shadow_src, depend = ['PKG_USING_UCLOUD_SHADOW_SAMPLE'], CPPPATH = CPPPATH, LOCAL_CCFLAGS = LOCAL_CCFLAGS, CPPDEFINES = CPPDEFINES)
  75. #Dev Model Example
  76. if GetDepend(['PKG_USING_UCLOUD_DEV_MODEL_SAMPLE']):
  77. sample_ucloud_dev_model_src += Glob('samples/dev_model/dev_model_sample.c')
  78. 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)
  79. #OTA Example
  80. if GetDepend(['PKG_USING_UCLOUD_OTA_SAMPLE']):
  81. sample_ucloud_ota_src += Glob('samples/ota/ota_sample.c')
  82. group = DefineGroup('sample_ucloud_ota', sample_ucloud_ota_src, depend = ['PKG_USING_UCLOUD_OTA_SAMPLE'], CPPPATH = CPPPATH, LOCAL_CCFLAGS = LOCAL_CCFLAGS, CPPDEFINES = CPPDEFINES)
  83. Return('group')