2 # CA library (share library) build script
6 # Add third party libraries
8 SConscript(env.get('SRC_DIR') + '/resource/third_party_libs.scons', 'lib_env')
10 calib_env = lib_env.Clone()
12 ######################################################################
13 # Add build options (WITH_DTLS) info for help command
14 ######################################################################
15 help_vars = Variables()
16 help_vars.Add(BoolVariable('WITH_DTLS', 'enable security support?', False))
18 Help(help_vars.GenerateHelpText(env))
20 ######################################################################
21 # Get build options (the options from command line)
22 ######################################################################
23 with_dtls = env.get('WITH_DTLS')
25 print "Info: Building CA library with DTLS support"
27 ######################################################################
29 ######################################################################
30 calib_env.AppendUnique(CPPPATH = [
34 './src/ethernet_adapter/linux',
35 './src/wifi_adapter/linux',
36 './src/bt_edr_adapter/linux',
37 './src/bt_le_adapter/linux',
42 calib_env.AppendUnique(CPPPATH = [
43 './lib/extlibs/tinydtls',
47 target_os = env.get('TARGET_OS')
49 if target_os not in ['windows', 'winrt']:
50 calib_env.AppendUnique(CFLAGS = ['-Wall', '-fPIC', '-fstack-protector-all']);
51 calib_env.AppendUnique(CPPDEFINES = [
52 '__LINUX__', 'WITH_POSIX',
53 'NO_EDR_ADAPTER', 'NO_LE_ADAPTER',
54 'WIFI_ADAPTER', 'ETHERNET_ADAPTER',
58 calib_env.AppendUnique(CPPDEFINES = [
61 calib_env.AppendUnique(LIBPATH = ['./lib/extlibs/tinydtls'])
62 calib_env.PrependUnique(LIBS = ['tinydtls'])
65 calib_env.ParseConfig('pkg-config --cflags glib-2.0')
67 #TODO add SConscript for libcoap
68 #`/home/tester/iotivity/resource/csdk/connectivity/lib/libcoap-4.1.1'
70 ######################################################################
71 # Source files and Targets
72 ######################################################################
74 './common/src/logger.c',
75 './common/src/oic_logger.c',
76 './common/src/oic_console_logger.c',
77 './common/src/oic_malloc.c',
78 './common/src/oic_string.c',
79 './common/src/uqueue.c',
80 './common/src/uarraylist.c',
81 './common/src/umutex.c',
82 './common/src/uthreadpool.c',
83 './src/caretransmission.c',
84 './src/caconnectivitymanager.c',
85 './src/caremotehandler.c',
86 './src/cainterfacecontroller.c',
87 './src/camessagehandler.c',
88 './src/caqueueingthread.c',
89 './src/canetworkconfigurator.c',
90 './src/caprotocolmessage.c',
91 './src/adapter_util/caadapterutils.c',
92 './src/ethernet_adapter/caethernetadapter.c',
93 './src/wifi_adapter/cawifiadapter.c',
94 './src/bt_edr_adapter/linux/caedradapter.c',
95 './src/bt_le_adapter/linux/caleadapter.c',
96 './src/wifi_adapter/linux/cawifiserver.c',
97 './src/wifi_adapter/linux/cawificlient.c',
98 './src/wifi_adapter/linux/cawifinwmonitor.c',
99 './src/ethernet_adapter/linux/caethernetserver.c',
100 './src/ethernet_adapter/linux/caethernetclient.c',
101 './src/ethernet_adapter/linux/caethernetnwmonitor.c'
105 calib_src = calib_src + ['./src/adapter_util/caadapternetdtls.c']
107 calib = calib_env.SharedLibrary('connectivity_abstraction', calib_src)
108 calib_env.InstallTarget(calib, 'libconnectivity_abstraction')