-
Notifications
You must be signed in to change notification settings - Fork 4
/
Copy pathSConscript
126 lines (97 loc) · 5.29 KB
/
SConscript
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
98
99
100
101
102
103
104
105
106
107
108
109
110
111
112
113
114
115
116
117
118
119
120
121
122
123
124
125
126
from building import *
import os
from building import *
import rtconfig
cwd = GetCurrentDir()
src_base = []
sample_data_template_src = []
sample_light_data_template_src = []
sample_mqtt_basic_src = []
sample_raw_data_src = []
sample_ota_src = []
sample_gateway_src = []
sample_dyn_src = []
CPPPATH = []
CPPDEFINES = []
LOCAL_CCFLAGS = ''
#include headfile
CPPPATH += [cwd + '/ports/ssl']
CPPPATH += [cwd + '/qcloud-iot-explorer-sdk-embedded-c/include']
CPPPATH += [cwd + '/qcloud-iot-explorer-sdk-embedded-c/include/exports']
CPPPATH += [cwd + '/qcloud-iot-explorer-sdk-embedded-c/sdk_src/internal_inc']
#common src file
src_base += Glob('qcloud-iot-explorer-sdk-embedded-c/sdk_src/protocol/mqtt/*.c')
src_base += Glob('qcloud-iot-explorer-sdk-embedded-c/sdk_src/services/data_template/*.c')
src_base += Glob('qcloud-iot-explorer-sdk-embedded-c/sdk_src/utils/*.c')
src_base += Glob('qcloud-iot-explorer-sdk-embedded-c/sdk_src/network/*.c')
src_base += Glob('qcloud-iot-explorer-sdk-embedded-c/sdk_src/network/socket/*.c')
src_base += Glob('qcloud-iot-explorer-sdk-embedded-c/sdk_src/network/tls/*.c')
src_base += Glob('ports/rtthread/*.c')
SrcRemove(src_base, 'ports/rtthread/HAL_UDP_rtthread.c')
CPPDEFINES += ['MQTT_COMM_ENABLED', 'AUTH_MODE_KEY']
#ota src file
if GetDepend(['PKG_USING_TENCENT_IOT_EXPLORER_OTA']):
CPPDEFINES += ['OTA_MQTT_CHANNEL']
src_base += Glob('qcloud-iot-explorer-sdk-embedded-c/sdk_src/services/ota/*.c')
src_base += Glob('qcloud-iot-explorer-sdk-embedded-c/sdk_src/protocol/http/utils_httpc.c')
if GetDepend(['PKG_USING_OTA_HTTPS']):
CPPDEFINES += ['OTA_USE_HTTPS']
#gateway src file
if GetDepend(['PKG_USING_TENCENT_IOT_EXPLORER_GATEWAY']):
src_base += Glob('qcloud-iot-explorer-sdk-embedded-c/sdk_src/services/gateway/*.c')
CPPDEFINES += ['GATEWAY_ENABLED','MULTITHREAD_ENABLED']
#TLS used
if GetDepend(['PKG_USING_TENCENT_IOT_EXPLORER_TLS']):
src_base += Glob('ports/ssl/HAL_TLS_mbedtls.c')
if rtconfig.CROSS_TOOL == 'keil' or rtconfig.CROSS_TOOL == 'iar':
CPPDEFINES += ['MBEDTLS_CONFIG_FILE=<tc_tls_config.h>']
# else: #gcc
# import shutil
# cp_src = cwd + '/ports/ssl/tc_tls_config.h''
# cp_dst = cwd + '/../mbedtls-v2.7.10/ports/inc/tls_config.h'
# shutil.copyfile(cp_src, cp_dst)
else:
CPPDEFINES += ['AUTH_WITH_NOTLS']
#dyn src file
if GetDepend(['PKG_USING_DYN_REG']):
sample_dyn_src += Glob('samples/dynreg_dev/dynreg_dev_sample.c')
src_base += Glob('qcloud-iot-explorer-sdk-embedded-c/sdk_src/services/dynreg/*.c')
CPPDEFINES += ['DEV_DYN_REG_ENABLED']
group = DefineGroup('sample_dyn_reg', sample_dyn_src, depend = ['PKG_USING_DYN_REG'], CPPPATH = CPPPATH, LOCAL_CCFLAGS = LOCAL_CCFLAGS, CPPDEFINES = CPPDEFINES)
#Err log upload used
if GetDepend(['PKG_USING_LOG_UPLOAD']):
src_base += Glob('qcloud-iot-explorer-sdk-embedded-c/sdk_src/services/log/*.c')
CPPDEFINES += ['LOG_UPLOAD']
if GetDepend(['PKG_USING_MULTITHREAD_ENABLED']):
CPPDEFINES += ['MULTITHREAD_ENABLED']
#IoT Explorer C-SDK core
group = DefineGroup('tencent-iot-explorer', src_base, depend = ['PKG_USING_TENCENT_IOT_EXPLORER'], CPPPATH = CPPPATH, LOCAL_CCFLAGS = LOCAL_CCFLAGS, CPPDEFINES = CPPDEFINES)
#Data Template Example
if GetDepend(['PKG_USING_DATA_TEMPLATE_PROTOCOL']):
sample_data_template_src += Glob('samples/data_template/data_template_sample.c')
if GetDepend(['PKG_USING_EVENT_POST']):
CPPDEFINES += ['EVENT_POST_ENABLED']
if GetDepend(['PKG_USING_ACTION']):
CPPDEFINES += ['ACTION_ENABLED']
group = DefineGroup('sample_data_template', sample_data_template_src, depend = ['PKG_USING_DATA_TEMPLATE_PROTOCOL'], CPPPATH = CPPPATH, LOCAL_CCFLAGS = LOCAL_CCFLAGS, CPPDEFINES = CPPDEFINES)
#Data Template light Example
if GetDepend(['PKG_USING_SMART_LIGHT_SAMPLE']):
sample_light_data_template_src += Glob('samples/scenarized/light_data_template_sample.c')
group = DefineGroup('sample_data_template_light', sample_light_data_template_src, depend = ['PKG_USING_SMART_LIGHT_SAMPLE'], CPPPATH = CPPPATH, LOCAL_CCFLAGS = LOCAL_CCFLAGS, CPPDEFINES = CPPDEFINES)
#MQTT Example and Raw-data Example
if GetDepend(['PKG_USING_SELF_DEFINE_PROTOCOL']):
if GetDepend(['PKG_USING_TENCENT_IOT_EXPLORER_MQTT']):
sample_mqtt_basic_src += Glob('samples/mqtt/mqtt_sample.c')
if GetDepend(['PKG_USING_TENCENT_IOT_EXPLORER_RAW_DATA']):
sample_raw_data_src += Glob('samples/raw_data/raw_data_sample.c')
group = DefineGroup('tc_sample_mqtt_basic', sample_mqtt_basic_src, depend = ['PKG_USING_TENCENT_IOT_EXPLORER_MQTT'], CPPPATH = CPPPATH, LOCAL_CCFLAGS = LOCAL_CCFLAGS, CPPDEFINES = CPPDEFINES)
group = DefineGroup('sample_raw_data', sample_raw_data_src, depend = ['PKG_USING_TENCENT_IOT_EXPLORER_RAW_DATA'], CPPPATH = CPPPATH, LOCAL_CCFLAGS = LOCAL_CCFLAGS, CPPDEFINES = CPPDEFINES)
#OTA Example
if GetDepend(['PKG_USING_TENCENT_IOT_EXPLORER_OTA']):
sample_ota_src += Glob('samples/ota/ota_mqtt_sample.c')
group = DefineGroup('sample_ota', sample_ota_src, depend = ['PKG_USING_TENCENT_IOT_EXPLORER_OTA'], CPPPATH = CPPPATH, LOCAL_CCFLAGS = LOCAL_CCFLAGS, CPPDEFINES = CPPDEFINES)
#Gateway Example
if GetDepend(['PKG_USING_TENCENT_IOT_EXPLORER_GATEWAY']):
sample_gateway_src += Glob('samples/gateway/*.c')
group = DefineGroup('sample_gateway', sample_gateway_src, depend = ['PKG_USING_TENCENT_IOT_EXPLORER_GATEWAY'], CPPPATH = CPPPATH, LOCAL_CCFLAGS = LOCAL_CCFLAGS, CPPDEFINES = CPPDEFINES)
Return('group')