4 samples_env = env.Clone()
5 ######################################################################
7 ######################################################################
8 samples_env.PrependUnique(CPPPATH = [
9 '../../../../ocsocket/include',
10 '../../../../logger/include',
11 '../../../../stack/include',
12 '../../../../../../extlibs/cjson',
13 '../../../../../oc_logger/include'
16 target_os = env.get('TARGET_OS')
17 if target_os not in ['windows', 'winrt']:
18 samples_env.AppendUnique(CXXFLAGS = ['-std=c++0x', '-Wall', '-pthread'])
20 # Note: 'pthread' is in libc for android. On other platform, if use
21 # new gcc(>4.9?) it isn't required, otherwise, it's required
22 if target_os != 'android':
23 samples_env.AppendUnique(LIBS = ['-lpthread'])
25 samples_env.AppendUnique(LIBPATH = [env.get('BUILD_DIR')])
26 samples_env.PrependUnique(LIBS = ['oc', 'm', 'octbstack', 'coap', 'coap_csdk', 'oc_logger', 'connectivity_abstraction'])
28 samples_env.ParseConfig('pkg-config --libs glib-2.0');
30 if target_os == 'android':
31 samples_env.AppendUnique(CXXFLAGS = ['-frtti', '-fexceptions'])
32 samples_env.AppendUnique(LIBS = ['gnustl_static'])
33 samples_env.AppendUnique(CPPDEFINES = ['_GLIBCXX_USE_C99=1', '_GLIBCXX_HAVE_WCSTOF=1'])
35 if not env.get('RELEASE'):
36 samples_env.AppendUnique(LIBS = ['log'])
38 if target_os in ['darwin', 'ios']:
39 samples_env.AppendUnique(CPPDEFINES = ['_DARWIN_C_SOURCE'])
41 samples_env.AppendUnique(CPPDEFINES = ['CA_INT'])
43 ######################################################################
44 # Source files and Targets
45 ######################################################################
46 ocserver = samples_env.Program('ocserver', 'ocserver.cpp')
47 occlient = samples_env.Program('occlient', 'occlient.cpp')
48 #ocserverslow = samples_env.Program('ocserverslow', 'ocserverslow.cpp')
49 #occlientslow = samples_env.Program('occlientslow', 'occlientslow.cpp')
50 #ocservercoll = samples_env.Program('ocservercoll', 'ocservercoll.cpp')
51 #occlientcoll = samples_env.Program('occlientcoll', 'occlientcoll.cpp')
52 #ocserverbasicops = samples_env.Program('ocserverbasicops', 'ocserverbasicops.cpp')
53 #occlientbasicops = samples_env.Program('occlientbasicops', 'occlientbasicops.cpp')
55 Alias("samples", [ocserver, occlient,
56 #ocservercoll, occlientcoll,
57 #ocserverbasicops, occlientbasicops,
58 #ocserverslow, occlientslow
61 env.AppendTarget('samples')
63 #ios doesn't allow run application from terminal, so won't build these samples
64 #if target_os != 'ios':
65 # SConscript('ocicuc/SConscript')