Providing build option to disable BLE server
[platform/upstream/iotivity.git] / resource / csdk / connectivity / SConscript
index 893dc5c..d5ebfe2 100644 (file)
@@ -9,10 +9,15 @@ transport = env.get('TARGET_TRANSPORT')
 build_sample = env.get('BUILD_SAMPLE')
 with_ra = env.get('WITH_RA')
 with_tcp = env.get('WITH_TCP')
+disable_tcp_server = env.get('DISABLE_TCP_SERVER')
+disable_ble_server = env.get('DISABLE_BLE_SERVER')
+with_mq = env.get('WITH_MQ')
+ble_custom_adv = env.get('BLE_CUSTOM_ADV')
 
 print "Given Transport is %s" % transport
 print "Given OS is %s" % target_os
 print "BUILD_SAMPLE is %s" % build_sample
+print "MQ flag is %s" % with_mq
 
 targets_disallow_multitransport = ['arduino']
 
@@ -27,7 +32,12 @@ if 'ALL' in transport:
                        env.AppendUnique(CPPDEFINES = ['RA_ADAPTER'])
        if with_tcp == True:
                        env.AppendUnique(CPPDEFINES = ['TCP_ADAPTER'])
-       if target_os == 'linux':
+       if disable_tcp_server == True:
+                       env.AppendUnique(CPPDEFINES = ['DISABLE_TCP_SERVER'])
+       if disable_ble_server == True:
+               if target_os in ['tizen']:
+                       env.AppendUnique(CPPDEFINES = ['DISABLE_BLE_SERVER'])
+       if target_os in ['linux']:
                env.AppendUnique(CPPDEFINES = ['IP_ADAPTER','NO_EDR_ADAPTER','LE_ADAPTER'])
        elif target_os == 'tizen':
                env.AppendUnique(CPPDEFINES = ['IP_ADAPTER','EDR_ADAPTER','LE_ADAPTER'])
@@ -35,12 +45,14 @@ if 'ALL' in transport:
                env.AppendUnique(CPPDEFINES = ['IP_ADAPTER','EDR_ADAPTER','LE_ADAPTER', 'NFC_ADAPTER'])
        elif target_os in['darwin','ios']:
                env.AppendUnique(CPPDEFINES = ['IP_ADAPTER','NO_EDR_ADAPTER','NO_LE_ADAPTER'])
+       elif target_os in ['msys_nt', 'windows']:
+               env.AppendUnique(CPPDEFINES = ['IP_ADAPTER','NO_EDR_ADAPTER','NO_LE_ADAPTER'])
        else:
                env.AppendUnique(CPPDEFINES = ['IP_ADAPTER','EDR_ADAPTER','LE_ADAPTER'])
        print "CA Transport is ALL"
 else:
        if 'BT' in transport:
-               if target_os == 'linux':
+               if target_os in ['linux']:
                        print "CA Transport BT is not supported in Linux"
                        Exit(1)
                else:
@@ -52,6 +64,15 @@ else:
        if 'BLE' in transport:
                env.AppendUnique(CPPDEFINES = ['LE_ADAPTER'])
                print "CA Transport is BLE"
+               if ble_custom_adv in ['True']:
+                       env.AppendUnique(CPPDEFINES = ['BLE_CUSTOM_ADVERTISE'])
+                       print "BLE Custom advertisement supported"
+               else:
+                       print "BLE Custom advertisement not supported"
+               if disable_ble_server == True:
+                       if target_os in ['tizen']:
+                               env.AppendUnique(CPPDEFINES = ['DISABLE_BLE_SERVER'])
+                               print "BLE Server Disabled"
        else:
                env.AppendUnique(CPPDEFINES = ['NO_LE_ADAPTER'])
 
@@ -62,7 +83,7 @@ else:
                env.AppendUnique(CPPDEFINES = ['NO_IP_ADAPTER'])
 
        if with_tcp == True:
-               if target_os in ['linux', 'tizen', 'android']:
+               if target_os in ['linux', 'tizen', 'android', 'arduino', 'ios', 'tizenrt']:
                        env.AppendUnique(CPPDEFINES = ['TCP_ADAPTER', 'WITH_TCP'])
                        print "CA Transport is TCP"
                else:
@@ -71,6 +92,10 @@ else:
        else:
                env.AppendUnique(CPPDEFINES = ['NO_TCP_ADAPTER'])
 
+       if disable_tcp_server == True:
+               if target_os in ['linux', 'tizen', 'android', 'arduino', 'ios', 'tizenrt']:
+                       env.AppendUnique(CPPDEFINES = ['DISABLE_TCP_SERVER'])
+
        if 'NFC' in transport:
                if target_os in['android']:
                        env.AppendUnique(CPPDEFINES = ['NFC_ADAPTER'])
@@ -81,20 +106,16 @@ else:
        else:
                env.AppendUnique(CPPDEFINES = ['NO_NFC_ADAPTER'])
 
-env.SConscript('./src/SConscript')
+if 'SUB' in with_mq:
+       env.AppendUnique(CPPDEFINES = ['MQ_SUBSCRIBER', 'WITH_MQ'])
+       print "MQ SUB support"
 
-if build_sample == 'ON':
-       if target_os in ['linux', 'arduino', 'darwin']:
-               target_path = target_os
+if 'PUB' in with_mq:
+       env.AppendUnique(CPPDEFINES = ['MQ_PUBLISHER', 'WITH_MQ'])
+       print "MQ PUB support"
 
-               if target_os == 'darwin':
-                       target_path = 'linux'
-               env.SConscript('./samples/' + target_path + '/SConscript')
+if 'BROKER' in with_mq:
+       env.AppendUnique(CPPDEFINES = ['MQ_BROKER', 'WITH_MQ'])
+       print "MQ Broker support"
 
-       elif target_os in ['android']:
-               env.SConscript('./samples/' + target_os + '/SConscript')
-
-               #to build sample apk, uncomment below line after ca libraries are built
-               #while building ca libraries comment the below line, to avoid build errors
-
-               #env.SConscript('./samples/' + target_os + '/casample/SConscript')
+env.SConscript('./src/SConscript')