scons changes for connectivity-abstraction branch
[platform/upstream/iotivity.git] / resource / examples / ocicuc / SConscript
1 ##
2 # Examples build script
3 ##
4 Import('env')
5 # Add third party libraries
6 lib_env = env.Clone()
7 SConscript(env.get('SRC_DIR') + '/resource/third_party_libs.scons', 'lib_env')
8
9 ocicuc_env = lib_env.Clone()
10 ######################################################################
11 # Build flags
12 ######################################################################
13 ocicuc_env.AppendUnique(CPPPATH = [
14                 '../../include/',
15                 '../../csdk/stack/include',
16                 '../../csdk/ocsocket/include',
17                 '../../csdk/ocrandom/include',
18                 '../../csdk/logger/include',
19                 '../../oc_logger/include'
20                 ])
21
22 ocicuc_env.AppendUnique(LIBPATH = [env.get('BUILD_DIR')])
23 ocicuc_env.PrependUnique(LIBS = ['oc', 'octbstack', 'coap_csdk', 'coap', 'oc_logger', 'connectivity_abstraction'])
24
25 ocicuc_env.ParseConfig('pkg-config --libs glib-2.0');
26
27 target_os = env.get('TARGET_OS')
28 if target_os not in ['windows', 'winrt']:
29         ocicuc_env.AppendUnique(CXXFLAGS = ['-std=c++0x'])
30
31 if target_os == 'android':
32         ocicuc_env.AppendUnique(CXXFLAGS = ['-frtti', '-fexceptions'])
33         ocicuc_env.AppendUnique(CPPDEFINES = ['_GLIBCXX_USE_C99=1', '_GLIBCXX_HAVE_WCSTOF=1'])
34         ocicuc_env.AppendUnique(LIBS = ['boost_program_options-gcc-mt-1_49', 'boost_thread-gcc-mt-1_49', 'gnustl_static'])
35
36         if not env.get('RELEASE'):
37                 ocicuc_env.AppendUnique(LIBS = ['log'])
38
39 if target_os == 'darwin':
40         ocicuc_env.AppendUnique(LIBS = ['boost_program_options'])
41
42 ######################################################################
43 # Source files and Targets
44 ######################################################################
45 client = ocicuc_env.Program('client', ['client.cpp', 'driver.cpp', 'utility.cpp'])
46 server = ocicuc_env.Program('server', ['server.cpp', 'driver.cpp', 'utility.cpp', 'light_resource.cpp'])
47 monoprocess = ocicuc_env.Program('monoprocess', ['monoprocess.cpp', 'driver.cpp', 'utility.cpp', 'light_resource.cpp'])
48 small_example = ocicuc_env.Program('small_example', ['small_example.cpp', 'driver.cpp', 'utility.cpp'])
49
50 Alias("examples_ocicuc", [client, server, monoprocess, small_example])
51 env.AppendTarget('examples_ocicuc')