])
elevator_server_env.AppendUnique(LIBPATH = [ipca_env.get('BUILD_DIR')])
+
elevator_server_env.PrependUnique(LIBS = [
- 'oc',
- 'connectivity_abstraction',
'coap',
'octbstack'
])
+if target_os not in ['msys_nt', 'windows']:
+ elevator_server_env.PrependUnique(LIBS = [
+ 'connectivity_abstraction'
+ ])
+
+elevator_server_env.PrependUnique(LIBS = [
+ 'oc'
+ ])
+
if elevator_server_env.get('SECURED') == '1':
elevator_server_env.AppendUnique(CPPDEFINES = ['SECURED'])
elevator_server_env.AppendUnique(LIBS = ['mbedtls', 'mbedx509','mbedcrypto', 'ocprovision'])
])
ipca_lib_env.PrependUnique(LIBS = [
- 'oc',
- 'connectivity_abstraction',
'coap',
'octbstack'
])
+if target_os not in ['windows', 'msys_nt']:
+ ipca_lib_env.PrependUnique(LIBS = [
+ 'connectivity_abstraction'
+ ])
+
+ipca_lib_env.PrependUnique(LIBS = [
+ 'oc'
+ ])
+
if ipca_env.get('SECURED') == '1':
ipca_lib_env.PrependUnique(LIBS = [
'mbedtls',
'../../logger/include',
'../../../oc_logger/include',
])
-
randomtest_env.PrependUnique(LIBS = ['uuid'])
randomtest_env.PrependUnique(CPPPATH = ['../include'])
# c_common calls into mbedcrypto.
connectivity_env.AppendUnique(LIBS = ['mbedcrypto'])
+calib_internal = connectivity_env.StaticLibrary('connectivity_abstraction_internal', connectivity_env.get('CA_SRC'))
+calib = Flatten(calib_internal)
+
if ca_os in ['android', 'tizen', 'linux', 'yocto']:
connectivity_env.AppendUnique(LIBS = ['coap'])
if ca_os != 'android':
connectivity_env.AppendUnique(LIBS = ['rt'])
static_calib = connectivity_env.StaticLibrary('connectivity_abstraction', connectivity_env.get('CA_SRC'))
shared_calib = connectivity_env.SharedLibrary('connectivity_abstraction', connectivity_env.get('CA_SRC'))
- calib = Flatten([static_calib, shared_calib])
-elif ca_os in ['msys_nt', 'windows']:
- connectivity_env.AppendUnique(LIBS = ['coap', 'mswsock', 'ws2_32', 'iphlpapi', 'logger'])
- calib = connectivity_env.StaticLibrary('connectivity_abstraction', connectivity_env.get('CA_SRC'))
-else:
- calib = connectivity_env.StaticLibrary('connectivity_abstraction', connectivity_env.get('CA_SRC'))
+ calib += Flatten([static_calib, shared_calib])
+elif ca_os not in ['msys_nt', 'windows']:
+ static_calib = connectivity_env.StaticLibrary('connectivity_abstraction', connectivity_env.get('CA_SRC'))
+ calib += Flatten(static_calib)
connectivity_env.InstallTarget(calib, 'connectivity_abstraction')
connectivity_env.UserInstallTargetLib(calib, 'connectivity_abstraction')
'#/resource/oc_logger/include',
])
-catest_env.PrependUnique(LIBS = ['octbstack_internal',
- 'ocsrm',
- 'routingmanager',
- 'connectivity_abstraction',
- 'coap'])
+catest_env.PrependUnique(LIBS = ['coap'])
+
+if target_os not in ['msys_nt', 'windows']:
+ # ssladapter_test.cpp #includes ca_adapter_net_ssl.c! That results in
+ # "multiple definition" linker errors, when trying to link with
+ # connectivity_abstraction_internal here.
+ catest_env.PrependUnique(LIBS = ['connectivity_abstraction'])
+else:
+ catest_env.PrependUnique(LIBS = ['connectivity_abstraction_internal'])
+
+catest_env.PrependUnique(LIBS = [
+ 'octbstack_internal',
+ 'ocsrm',
+ 'routingmanager',
+ ])
if target_os not in ['arduino', 'darwin', 'ios', 'msys_nt', 'windows']:
catest_env.AppendUnique(LIBS=['rt'])
else:
provisioning_sample_env.AppendUnique(LIBPATH = [os.path.join(env.get('BUILD_DIR'), 'resource', 'csdk')])
-provisioning_sample_env.PrependUnique(LIBS = ['oc', 'octbstack', 'connectivity_abstraction', 'coap'])
+provisioning_sample_env.PrependUnique(LIBS = ['coap'])
+
+if target_os not in ['msys_nt', 'windows']:
+ provisioning_sample_env.PrependUnique(LIBS = ['connectivity_abstraction'])
+
+provisioning_sample_env.PrependUnique(LIBS = ['oc', 'octbstack'])
if target_os not in ['msys_nt', 'windows']:
provisioning_sample_env.PrependUnique(LIBS = ['oc_logger', 'ocpmapi', 'ocsrm'])
'ocsrm',
'routingmanager',
'oc_logger_internal',
- 'connectivity_abstraction',
+ 'connectivity_abstraction_internal',
'coap'])
if sptest_env.get('SECURED') == '1':
sptest_env.AppendUnique(LIBS = ['sqlite3'])
else:
if target_os in ['linux', 'tizen']:
- sptest_env.ParseConfig('pkg-config --cflags --libs sqlite3')
+ sptest_env.ParseConfig('pkg-config --cflags --libs sqlite3 gobject-2.0 gio-2.0 glib-2.0')
######################################################################
# Source files and Targets
tools_env.PrependUnique(LIBS = ['octbstack', 'ocsrm', 'm'])
else:
if target_os in ['darwin']:
- tools_env.AppendUnique(LIBS = ['octbstack'])
+ tools_env.AppendUnique(LIBS = ['octbstack', 'connectivity_abstraction'])
else:
# This IoTivity-internal app calls non-Public APIs, so link with LIBS intended
# for IoTivity-internal tests (such as octbstack_internal).
- tools_env.AppendUnique(LIBS = ['octbstack_internal'])
+ tools_env.AppendUnique(LIBS = ['octbstack_internal', 'connectivity_abstraction_internal'])
if target_os in ['windows']:
tools_env.AppendUnique(LIBS = ['sqlite3'])
tools_env.AppendUnique(LIBS = ['coap', 'mbedtls', 'mbedx509', 'mbedcrypto',
- 'ocsrm', 'routingmanager', 'connectivity_abstraction'])
+ 'ocsrm', 'routingmanager'])
tools_env.PrependUnique(LIBS = ['cjson'])
'ocsrm',
'routingmanager',
'oc_logger_internal',
- 'connectivity_abstraction',
+ 'connectivity_abstraction_internal',
'coap'
])
srmtest_env.AppendUnique(CPPDEFINES = ['HAVE_LOCALTIME_R'])
if target_os in ['linux', 'tizen']:
- srmtest_env.ParseConfig('pkg-config --cflags --libs sqlite3')
+ srmtest_env.ParseConfig('pkg-config --cflags --libs sqlite3 gobject-2.0 gio-2.0 glib-2.0')
######################################################################
# Source files and Targets
liboctbstack_env.AppendUnique(LIBS = ['mbedcrypto'])
if target_os in ['android', 'linux', 'tizen', 'msys_nt', 'windows']:
- liboctbstack_env.PrependUnique(LIBS = ['connectivity_abstraction'])
+ if target_os not in ['windows', 'msys_nt']:
+ liboctbstack_env.PrependUnique(LIBS = ['connectivity_abstraction'])
+ else:
+ # On Windows, apps don't link directly with connectivity_abstraction.
+ # connectivity_abstraction is linked inside octbstack.dll and apps
+ # import its APIs by linking with octbstack.lib.
+ liboctbstack_env.PrependUnique(LIBS = ['connectivity_abstraction_internal'])
if with_ra_ibb:
liboctbstack_env.AppendUnique(LIBS = liboctbstack_env['RALIBS'], LIBPATH = liboctbstack_env['RALIBPATH'], RPATH = liboctbstack_env['RARPATH'])
Import('stacksamples_env')
ocsample_env = stacksamples_env.Clone()
+target_os = stacksamples_env.get('TARGET_OS')
+
######################################################################
# Build flags
######################################################################
'#/resource/csdk/stack/include',
])
+if target_os not in ['msys_nt', 'windows']:
+ ocsample_env.PrependUnique(LIBS = [
+ 'connectivity_abstraction',
+ ])
+
ocsample_env.PrependUnique(LIBS = [
'octbstack',
- 'connectivity_abstraction'
])
+
if ocsample_env.get('SECURED') == '1':
if ocsample_env.get('WITH_TCP') == True:
ocsample_env.AppendUnique(LIBS = ['mbedtls', 'mbedx509','mbedcrypto'])
samples_env.AppendUnique(RPATH=[samples_env.get('BUILD_DIR')])
-samples_env.PrependUnique(
- LIBS=['octbstack', 'ocsrm', 'connectivity_abstraction', 'coap'])
+samples_env.PrependUnique(LIBS=['coap'])
+
+if target_os not in ['msys_nt', 'windows']:
+ samples_env.PrependUnique(LIBS=['connectivity_abstraction'])
+
+samples_env.PrependUnique(LIBS=['octbstack', 'ocsrm'])
if target_os in ['darwin']:
samples_env.AppendUnique(LIBS=['routingmanager'])
samples_env.Append(LINKFLAGS = ['-Wl,--no-as-needed'])
if target_os in ['windows', 'msys_nt']:
- samples_env.PrependUnique(LIBS = ['ocsrm', 'ws2_32', 'iphlpapi'])
+ samples_env.PrependUnique(LIBS = ['coap', 'ocsrm'])
else:
- samples_env.PrependUnique(LIBS = ['m'])
-samples_env.PrependUnique(LIBS = ['octbstack', 'connectivity_abstraction', 'coap'])
+ samples_env.PrependUnique(LIBS = ['connectivity_abstraction', 'coap', 'm'])
+
+samples_env.PrependUnique(LIBS = ['octbstack'])
+
if samples_env.get('SECURED') == '1':
samples_env.AppendUnique(LIBS = ['mbedtls', 'mbedx509','mbedcrypto'])
stacktest_env.PrependUnique(LIBS = ['octbstack_internal',
'ocsrm',
'routingmanager',
- 'connectivity_abstraction',
+ 'connectivity_abstraction_internal',
'coap',
])
stacktest_env.AppendUnique(CCFLAGS=['/W4', '/WX'])
else:
stacktest_env.PrependUnique(LIBS = ['m'])
+ if target_os in ['tizen', 'linux']:
+ stacktest_env.ParseConfig("pkg-config --cflags --libs gobject-2.0 gio-2.0 glib-2.0")
######################################################################
# Source files and Targets
examples_env.AppendUnique(RPATH = [examples_env.get('BUILD_DIR')])
examples_env.PrependUnique(LIBS = ['coap'])
-examples_env.AppendUnique(LIBS = ['connectivity_abstraction'])
+
+if target_os not in ['msys_nt', 'windows']:
+ examples_env.AppendUnique(LIBS = ['connectivity_abstraction'])
+
examples_env.AppendUnique(LIBS = ['octbstack'])
examples_env.AppendUnique(LIBS = ['oc'])
provisiontests_env.AppendUnique(LIBS = ['sqlite3'])
elif target_os in ['tizen', 'linux']:
- provisiontests_env.ParseConfig('pkg-config --cflags --libs sqlite3')
+ provisiontests_env.ParseConfig('pkg-config --cflags --libs sqlite3 gobject-2.0 gio-2.0 glib-2.0')
provisiontests_env.PrependUnique(LIBS = [
'ocprovision',
'octbstack_internal',
'routingmanager',
'oc_logger_internal',
- 'connectivity_abstraction',
+ 'connectivity_abstraction_internal',
'coap',
'ocsrm'
])
unittests_env.AppendUnique(CPPPATH = ['#extlibs/boost/boost'])
unittests_env.AppendUnique(LIBS = ['sqlite3'])
elif target_os in ['linux', 'tizen']:
- unittests_env.ParseConfig('pkg-config --cflags --libs sqlite3')
+ unittests_env.ParseConfig('pkg-config --cflags --libs sqlite3 gobject-2.0 gio-2.0 glib-2.0')
unittests_env.PrependUnique(LIBS = [
'oc',
'ocsrm',
'routingmanager',
'oc_logger_internal',
- 'connectivity_abstraction',
+ 'connectivity_abstraction_internal',
'coap',
])