######################################################################
# Common build options (release, target os, target arch)
######################################################################
-targets_disallow_multitransport = ['arduino', 'android']
+targets_disallow_multitransport = ['arduino']
help_vars = Variables()
help_vars.Add(BoolVariable('VERBOSE', 'Show compilation', False))
help_vars.Add(BoolVariable('WITH_RA', 'Build with Remote Access module', False))
help_vars.Add(BoolVariable('WITH_TCP', 'Build with TCP adapter', False))
-help_vars.Add(BoolVariable('SIMULATOR', 'Build with simulator module', False))
help_vars.Add(EnumVariable('WITH_RD', 'Build including Resource Directory', '0', allowed_values=('0', '1')))
+help_vars.Add(BoolVariable('WITH_CLOUD', 'Build including Cloud client sample', False))
+
+help_vars.Add(BoolVariable('SIMULATOR', 'Build with simulator module', False))
+
+help_vars.Add(BoolVariable('WITH_RA_IBB', 'Build with Remote Access module(workssys)', False))
+
if target_os in targets_disallow_multitransport:
- help_vars.Add(ListVariable('TARGET_TRANSPORT', 'Target transport', 'IP', ['BT', 'BLE', 'IP']))
+ help_vars.Add(ListVariable('TARGET_TRANSPORT', 'Target transport', 'IP', ['BT', 'BLE', 'IP', 'NFC']))
else:
- help_vars.Add(ListVariable('TARGET_TRANSPORT', 'Target transport', 'ALL', ['ALL', 'BT', 'BLE', 'IP']))
+ help_vars.Add(ListVariable('TARGET_TRANSPORT', 'Target transport', 'ALL', ['ALL', 'BT', 'BLE', 'IP', 'NFC']))
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(PathVariable('ANDROID_NDK', 'Android NDK path', None, PathVariable.PathAccept))
help_vars.Add(PathVariable('ANDROID_HOME', 'Android SDK path', None, PathVariable.PathAccept))
help_vars.Add(PathVariable('ANDROID_GRADLE', 'Gradle binary file', None, PathVariable.PathIsFile))
+#ES_TARGET_ENROLLEE is for specifying what is our target enrollee (Arduino or rest of platforms which support Multicast)
+help_vars.Add(EnumVariable('ES_TARGET_ENROLLEE', 'Target Enrollee', 'arduino', allowed_values=('arduino', 'tizen', 'linux')))
+#ES_ROLE is for specifying the role (Enrollee or Mediator) for which scons is being executed
+help_vars.Add(EnumVariable('ES_ROLE', 'Target build mode', 'mediator', allowed_values=('mediator', 'enrollee')))
+#ES_SOFT_MODE is for specifying MODE (Mode 1 : Enrollee with Soft AP or Mode 2 : Mediator with Soft AP)
+help_vars.Add(EnumVariable('ES_SOFTAP_MODE', 'Target build mode', 'ENROLLEE_SOFTAP', allowed_values=('ENROLLEE_SOFTAP', 'MEDIATOR_SOFTAP')))
AddOption('--prefix',
dest='prefix',
tools = ['gnulink', 'gcc', 'g++', 'ar', 'as', 'textfile']
)
else:
- env = Environment(variables = help_vars, tools = ['default', 'textfile'], TARGET_ARCH = target_arch, TARGET_OS = target_os, PREFIX = GetOption('prefix'), INSTALL_ROOT = ARGUMENTS.get('INSTALL_ROOT', dir))
+ env = Environment(variables = help_vars, tools = ['default', 'textfile'],
+ TARGET_ARCH = target_arch, TARGET_OS = target_os,
+ PREFIX = GetOption('prefix'),
+ LIB_INSTALL_DIR = ARGUMENTS.get('LIB_INSTALL_DIR') #for 64bit build
+ )
Help(help_vars.GenerateHelpText(env))
tc_set_msg = '''
def __installlib(ienv, targets, name):
user_prefix = env.get('PREFIX')
if user_prefix:
- i_n = ienv.Install(env.get('INSTALL_ROOT') + user_prefix + '/lib', targets)
- else:
- i_n = ienv.Install(env.get('BUILD_DIR'), targets)
- ienv.Alias("install", i_n)
+ user_lib = env.get('LIB_INSTALL_DIR')
+ if user_lib:
+ i_n = ienv.Install(user_lib, targets)
+ else:
+ i_n = ienv.Install(user_prefix + '/lib', targets)
+ ienv.Alias("install", i_n)
def __installbin(ienv, targets, name):
user_prefix = env.get('PREFIX')
if user_prefix:
- i_n = ienv.Install(env.get('INSTALL_ROOT') + user_prefix + '/bin', targets)
- else:
- i_n = ienv.Install(env.get('BUILD_DIR'), targets)
- ienv.Alias("install", i_n)
+ i_n = ienv.Install(user_prefix + '/bin', targets)
+ ienv.Alias("install", i_n)
def __installheader(ienv, targets, dir, name):
user_prefix = env.get('PREFIX')
if user_prefix:
- i_n = ienv.Install(env.get('INSTALL_ROOT') + user_prefix + '/include/' + dir ,targets)
- else:
- i_n = ienv.Install(env.get('BUILD_DIR'), targets)
- ienv.Alias("install", i_n)
+ i_n = ienv.Install(user_prefix + '/include/' + dir ,targets)
+ ienv.Alias("install", i_n)
def __installpcfile(ienv, targets, name):
user_prefix = env.get('PREFIX')
if user_prefix:
- i_n = ienv.Install(env.get('INSTALL_ROOT') + user_prefix + '/lib/pkgconfig', targets)
- else:
- i_n = ienv.Install(env.get('BUILD_DIR'), targets)
- ienv.Alias("install", i_n)
+ user_lib = env.get('LIB_INSTALL_DIR')
+ if user_lib:
+ i_n = ienv.Install(user_lib + '/pkgconfig', targets)
+ else:
+ i_n = ienv.Install(user_prefix + '/lib/pkgconfig', targets)
+ ienv.Alias("install", i_n)
def __append_target(ienv, name, targets = None):
if targets:
elif env.get('ROUTING') == 'EP':
routing_define = 'ROUTING_EP'
+if env.get('SECURED') == '1':
+ ocpmapi_lib = '-locpmapi'
+elif env.get('SECURED') == '0':
+ ocpmapi_lib = ''
+
user_prefix = env.get('PREFIX')
+user_lib = env.get('LIB_INSTALL_DIR')
+if not user_lib:
+ user_lib = '$${prefix}/lib'
if user_prefix:
- pc_vars = {'\@PREFIX\@': user_prefix, '\@EXEC_PREFIX\@':user_prefix, '\@VERSION\@':'1.0.0', '\@ROUTING_DEFINE\@': routing_define}
+ pc_vars = {'\@PREFIX\@': user_prefix,
+ '\@EXEC_PREFIX\@':user_prefix,
+ '\@VERSION\@': '1.0.1',
+ '\@LIB_INSTALL_DIR\@': user_lib,
+ '\@ROUTING_DEFINE\@': routing_define,
+ '\@OCPMAPI_LIB\@': ocpmapi_lib
+ }
else:
- pc_vars = {'\@PREFIX\@': env.get('BUILD_DIR'), '\@EXEC_PREFIX\@': env.get('BUILD_DIR'), '\@VERSION\@':'1.0.0', '\@ROUTING_DEFINE\@': routing_define}
+ pc_vars = {'\@PREFIX\@': env.get('BUILD_DIR'),
+ '\@EXEC_PREFIX\@': env.get('BUILD_DIR'),
+ '\@VERSION\@': '1.0.1',
+ '\@LIB_INSTALL_DIR\@': user_lib,
+ '\@ROUTING_DEFINE\@': routing_define,
+ '\@OCPMAPI_LIB\@': ocpmapi_lib
+ }
env.Substfile(pc_file, SUBST_DICT = pc_vars)