7 target_os = env.get('TARGET_OS')
8 transport = env.get('TARGET_TRANSPORT')
9 build_sample = env.get('BUILD_SAMPLE')
10 with_ra = env.get('WITH_RA')
11 with_tcp = env.get('WITH_TCP')
12 with_mq = env.get('WITH_MQ')
13 ble_custom_adv = env.get('BLE_CUSTOM_ADV')
15 print "Given Transport is %s" % transport
16 print "Given OS is %s" % target_os
17 print "BUILD_SAMPLE is %s" % build_sample
18 print "MQ flag is %s" % with_mq
20 targets_disallow_multitransport = ['arduino']
22 if target_os in targets_disallow_multitransport:
23 if ('ALL' in transport) or (len(transport) != 1):
24 print "*** Error invalid option values: TARGET_TRANSPORT"
25 print "%s disallowed until testing can validate use of multiple transports on %s %d" % (transport, target_os, len(transport))
28 if 'ALL' in transport:
30 env.AppendUnique(CPPDEFINES = ['RA_ADAPTER'])
32 env.AppendUnique(CPPDEFINES = ['TCP_ADAPTER'])
33 if target_os in ['linux']:
34 env.AppendUnique(CPPDEFINES = ['IP_ADAPTER','NO_EDR_ADAPTER','LE_ADAPTER'])
35 elif target_os == 'tizen':
36 env.AppendUnique(CPPDEFINES = ['IP_ADAPTER','EDR_ADAPTER','LE_ADAPTER'])
37 elif target_os == 'android':
38 env.AppendUnique(CPPDEFINES = ['IP_ADAPTER','EDR_ADAPTER','LE_ADAPTER', 'NFC_ADAPTER'])
39 elif target_os in['darwin','ios']:
40 env.AppendUnique(CPPDEFINES = ['IP_ADAPTER','NO_EDR_ADAPTER','NO_LE_ADAPTER'])
41 elif target_os in ['msys_nt', 'windows']:
42 env.AppendUnique(CPPDEFINES = ['IP_ADAPTER','NO_EDR_ADAPTER','NO_LE_ADAPTER'])
44 env.AppendUnique(CPPDEFINES = ['IP_ADAPTER','EDR_ADAPTER','LE_ADAPTER'])
45 print "CA Transport is ALL"
48 if target_os in ['linux']:
49 print "CA Transport BT is not supported in Linux"
52 env.AppendUnique(CPPDEFINES = ['EDR_ADAPTER'])
53 print "CA Transport is BT"
55 env.AppendUnique(CPPDEFINES = ['NO_EDR_ADAPTER'])
57 if 'BLE' in transport:
58 env.AppendUnique(CPPDEFINES = ['LE_ADAPTER'])
59 print "CA Transport is BLE"
60 if ble_custom_adv in ['True']:
61 env.AppendUnique(CPPDEFINES = ['BLE_CUSTOM_ADVERTISE'])
62 print "BLE Custom advertisement supported"
64 print "BLE Custom advertisement not supported"
66 env.AppendUnique(CPPDEFINES = ['NO_LE_ADAPTER'])
69 env.AppendUnique(CPPDEFINES = ['IP_ADAPTER'])
70 print "CA Transport is IP"
72 env.AppendUnique(CPPDEFINES = ['NO_IP_ADAPTER'])
75 if target_os in ['linux', 'tizen', 'android', 'arduino', 'ios', 'tizenrt']:
76 env.AppendUnique(CPPDEFINES = ['TCP_ADAPTER', 'WITH_TCP'])
77 print "CA Transport is TCP"
79 print "CA Transport TCP is not supported "
82 env.AppendUnique(CPPDEFINES = ['NO_TCP_ADAPTER'])
84 if 'NFC' in transport:
85 if target_os in['android']:
86 env.AppendUnique(CPPDEFINES = ['NFC_ADAPTER'])
87 print "CA Transport is NFC"
89 print "CA Transport NFC is not supported "
92 env.AppendUnique(CPPDEFINES = ['NO_NFC_ADAPTER'])
95 env.AppendUnique(CPPDEFINES = ['MQ_SUBSCRIBER', 'WITH_MQ'])
96 print "MQ SUB support"
99 env.AppendUnique(CPPDEFINES = ['MQ_PUBLISHER', 'WITH_MQ'])
100 print "MQ PUB support"
102 if 'BROKER' in with_mq:
103 env.AppendUnique(CPPDEFINES = ['MQ_BROKER', 'WITH_MQ'])
104 print "MQ Broker support"
106 env.SConscript('./src/SConscript')