Build system base on scons(oic-resource)
[platform/upstream/iotivity.git] / examples / ocicuc / SConscript
1 ##
2 # Examples build script
3 ##
4 Import('env', 'RELEASE_BUILD', 'BUILD_TARGET', 'BUILD_DIR', 'SRC_TOP_DIR')
5 # Add third party libraries
6 SConscript(SRC_TOP_DIR + '/third_party_libs.scons')
7 ocicuc_env = env.Clone()
8
9 ######################################################################
10 # Build flags
11 ######################################################################
12 ocicuc_env.AppendUnique(CPPPATH = [
13                 '../../include/',
14                 '../../csdk/stack/include',
15                 '../../csdk/ocsocket/include',
16                 '../../csdk/ocrandom/include',
17                 '../../csdk/logger/include',
18                 '../../oc_logger/include'
19                 ])
20
21 ocicuc_env.AppendUnique(LIBPATH = [BUILD_DIR])
22 ocicuc_env.PrependUnique(LIBS = ['oc', 'octbstack', 'coap', 'oc_logger'])
23
24 if BUILD_TARGET not in ['windows', 'winrt']:
25         ocicuc_env.AppendUnique(CXXFLAGS = ['-std=c++11'])
26
27 if BUILD_TARGET == 'android':
28         ocicuc_env.AppendUnique(CXXFLAGS = ['-frtti', '-fexceptions'])
29         ocicuc_env.AppendUnique(CPPDEFINES = ['_GLIBCXX_USE_C99=1', '_GLIBCXX_HAVE_WCSTOF=1'])
30         ocicuc_env.AppendUnique(LIBS = ['boost_program_options-gcc-mt-1_49', 'boost_thread-gcc-mt-1_49', 'gnustl_static'])
31         ocicuc_env.AppendUnique(LINKFLAGS = ['-static'])
32
33         if not RELEASE_BUILD:
34                 ocicuc_env.AppendUnique(LIBS = ['log'])
35
36 if BUILD_TARGET == 'darwin':
37         ocicuc_env.AppendUnique(LIBS = ['boost_program_options'])
38
39 ######################################################################
40 # Source files and Targets
41 ######################################################################
42 client = ocicuc_env.Program('client', ['client.cpp', 'driver.cpp', 'utility.cpp'])
43 server = ocicuc_env.Program('server', ['server.cpp', 'driver.cpp', 'utility.cpp', 'light_resource.cpp'])
44 monoprocess = ocicuc_env.Program('monoprocess',
45                 ['monoprocess.cpp', 'driver.cpp', 'utility.cpp', 'light_resource.cpp'])
46
47 Alias("examples_ocicuc", [client, server, monoprocess])
48 env.AppendUnique(TS = ['examples_ocicuc'])