replace : iotivity -> iotivity-sec
[platform/upstream/iotivity.git] / build_common / SConscript
index e00a628..b373665 100644 (file)
@@ -10,7 +10,7 @@ project_version = '1.2.1'
 
 # Map of host os and allowed target os (host: allowed target os)
 host_target_map = {
-               'linux': ['linux', 'android', 'arduino', 'yocto', 'tizen'],
+               'linux': ['linux', 'android', 'arduino', 'yocto', 'tizen', 'tizenrt'],
                'windows': ['windows', 'android', 'arduino'],
                'darwin': ['darwin', 'ios', 'android', 'arduino'],
                'msys_nt' :['msys_nt'],
@@ -27,6 +27,7 @@ os_arch_map = {
                'ios': ['i386', 'x86_64', 'armv7', 'armv7s', 'arm64'],
                'arduino': ['avr', 'arm'],
                'yocto': ['i586', 'i686', 'x86_64', 'arm', 'aarch64', 'powerpc', 'powerpc64', 'mips', 'mipsel'],
+               'tizenrt': ['armv7-r', 'armv7-m'],
                }
 
 host = platform.system().lower()
@@ -112,9 +113,12 @@ else:
 
 help_vars.Add(EnumVariable('TARGET_ARCH', 'Target architecture', default_arch, os_arch_map[target_os]))
 help_vars.Add(EnumVariable('SECURED', 'Build with DTLS', '0', allowed_values=('0', '1')))
+help_vars.Add(EnumVariable('WITH_MBEDTLS_STATIC_LIB', 'Build mbedTLS library as static library', '0', allowed_values=('0', '1')))
 help_vars.Add(EnumVariable('MULTIPLE_OWNER', 'Enable multiple owner', '0', allowed_values=('0', '1')))
+help_vars.Add(EnumVariable('EXC_PROV_SUPPORT', 'Except OCPMAPI library(libocpmapi.so)', '0', allowed_values=('0', '1')))
 help_vars.Add(EnumVariable('TEST', 'Run unit tests', '0', allowed_values=('0', '1')))
 help_vars.Add(BoolVariable('LOGGING', 'Enable stack logging', logging_default))
+help_vars.Add(EnumVariable('LOG_LEVEL', 'Enable stack logging level', 'DEBUG', allowed_values=('DEBUG', 'INFO', 'ERROR', 'WARNING', 'FATAL')))
 help_vars.Add(BoolVariable('UPLOAD', 'Upload binary ? (For Arduino)', require_upload))
 help_vars.Add(EnumVariable('ROUTING', 'Enable routing', 'EP', allowed_values=('GW', 'EP')))
 help_vars.Add(EnumVariable('BUILD_SAMPLE', 'Build with sample', 'ON', allowed_values=('ON', 'OFF')))
@@ -123,7 +127,12 @@ help_vars.Add(PathVariable('ANDROID_NDK', 'Android NDK path', None, PathVariable
 help_vars.Add(PathVariable('ANDROID_HOME', 'Android SDK path', None, PathVariable.PathAccept))
 help_vars.Add(PathVariable('ANDROID_GRADLE', 'Gradle binary file', None, PathVariable.PathIsFile))
 help_vars.Add(EnumVariable('WITH_UPSTREAM_LIBCOAP', 'Use latest stable version of LibCoAP downloaded from github', default_with_upstream_libcoap, allowed_values=('0','1')))
-
+help_vars.Add(EnumVariable('BLE_CUSTOM_ADV', 'Build with CUSTOM Advertisement', 'False', allowed_values=('True', 'False')))
+help_vars.Add(EnumVariable('BLE_DIVISION', 'BLE Build with division code', 'OFF', allowed_values=('OFF', 'MCD', 'VD')))
+help_vars.Add(EnumVariable('BLE_TIZEN_30', 'Build with tizen 3.0 BLE api', 'False', allowed_values=('True', 'False')))
+help_vars.Add(PathVariable('TIZENRT_OS_DIR', 'Absolute Path to TizenRT OS directory', None, PathVariable.PathAccept))
+help_vars.Add(EnumVariable('PLATFORM_TLS', 'Use platform tls instead of local mbedtls', '0', allowed_values=('0', '1')))
+help_vars.Add(EnumVariable('OIC_SUPPORT_TIZEN_TRACE', 'Tizen Trace(T-trace) api availability', 'False', allowed_values=('True', 'False')))
 AddOption('--prefix',
                   dest='prefix',
                   type='string',
@@ -135,7 +144,7 @@ AddOption('--prefix',
 ######################################################################
 # Platform(build target) specific options: SDK/NDK & toolchain
 ######################################################################
-targets_support_cc = ['linux', 'arduino', 'tizen']
+targets_support_cc = ['linux', 'arduino', 'tizen', 'tizenrt']
 
 if target_os in targets_support_cc:
        # Set cross compile toolchain
@@ -189,6 +198,9 @@ if target_os in targets_support_cc:
                env.AppendUnique(CCFLAGS = ['--sysroot=' + sys_root])
                env.AppendUnique(LINKFLAGS = ['--sysroot=' + sys_root])
 
+        if target_os == 'tizenrt':
+                env.PrependENVPath('PATH', os.environ['PATH'])
+
        if prefix or tc_path:
                print tc_set_msg
 
@@ -335,15 +347,17 @@ if env.get('ROUTING') == 'GW':
 elif env.get('ROUTING') == 'EP':
     defines.append('-DROUTING_EP=1')
 
-libs = []
 if env.get('WITH_TCP'):
     defines.append('-DTCP_ADAPTER=1')
     if env.get('SECURED') == '1':
         defines.append('-D__WITH_TLS__=1')
 
+libs = []
 if env.get('SECURED') == '1':
-    libs.append('-locpmapi')
-    defines.append('-D_WITH_DTLS_=1')
+    defines.append('-D__WITH_DTLS__=1')
+    if env.get('EXC_PROV_SUPPORT') == '0':
+        libs.append('-locpmapi')       # CAPI
+        libs.append('-locprovision')   # C++API
 
 pc_vars = {
     '\@VERSION\@': project_version,