2 # soft-sensor-manager project build script
7 # Add third party libraries
9 SConscript(env.get('SRC_DIR') + '/service/third_party_libs.scons', 'lib_env')
10 soft_sensor_manager_env = lib_env.Clone()
12 target_os = env.get('TARGET_OS')
13 # As in the source code, it includes arduino Time library (C++)
14 # It requires compile the .c with g++
15 if target_os == 'arduino':
16 soft_sensor_manager_env.Replace(CC = env.get('CXX'))
17 soft_sensor_manager_env.Replace(CFLAGS = env.get('CXXFLAGS'))
19 ######################################################################
21 ######################################################################
22 if target_os not in ['windows', 'winrt']:
23 soft_sensor_manager_env.AppendUnique(CXXFLAGS = ['-std=c++0x', '-Wall'])
24 if target_os != 'android':
25 soft_sensor_manager_env.AppendUnique(CXXFLAGS = ['-pthread'])
27 #######################################################################
29 #######################################################################
30 sdk_env = soft_sensor_manager_env.Clone()
31 sdk_env.AppendUnique(CPPPATH = ['SDK/include'])
33 ssm_sdk = sdk_env.Object('SDK/src/SSMClient.cpp')
34 i_ssmsdk = sdk_env.Install(env.get('BUILD_DIR'), )
35 Alias('libSSMSDKLibrary', i_ssmsdk)
36 env.AppendTarget('libSSMSDKLibrary')
38 ######################################################################
39 # build DiscomfortIndexSensor plugin
40 ######################################################################
41 DiscomfortIndexSensor_env = soft_sensor_manager_env.Clone()
43 DiscomfortIndexSensor_env.AppendUnique(CCFLAGS = ['-fPIC'])
44 DISCOMFORTINDEXSENSOR_DIR = 'SoftSensorPlugin/DiscomfortIndexSensor/'
45 DiscomfortIndexSensor_env.AppendUnique(CPPPATH = [
46 DISCOMFORTINDEXSENSOR_DIR + 'include',
47 'SSMCore/src/SSMInterface/'
50 DiscomfortIndexSensor_src = [ Glob(DISCOMFORTINDEXSENSOR_DIR + 'src/*.cpp')]
52 DiscomfortIndexSensor = DiscomfortIndexSensor_env.SharedLibrary('DiscomfortIndexSensor', DiscomfortIndexSensor_src)
53 DiscomfortIndexSensor_env.InstallTarget(DiscomfortIndexSensor, 'libDiscomfortIndexSensor')
55 ######################################################################
57 ######################################################################
58 ssmcore_env = soft_sensor_manager_env.Clone()
59 MODEL_DIR = "\"\\\"" + env.get('BUILD_DIR') + "\\\"\""
60 LOCATION = "\"\\\"" + env.get('BUILD_DIR') + "HighContextDictionary.xml" + "\\\"\""
62 ssmcore_env.AppendUnique(CPPDEFINES = ['MODEL_DIRECTORY='+MODEL_DIR, 'HIGH_LOCATION='+LOCATION])
63 ssmcore_env.AppendUnique(CPPPATH = [
67 'SSMCore/src/QueryProcessor/'
68 'SSMCore/src/SensorProcessor/'
69 'SSMCore/src/SSMInterface/'
74 if target_os != 'android':
75 SSMINTERFACE_PATH = 'SSMCore/src/SSMInterface/'
76 omit_src = ['SSMCore_JNI.cpp']
77 ssminterface_src = [f for f in env.Glob(SSMINTERFACE_PATH + '*.cpp') if os.path.basename(f.path) not in omit_src]
79 ssminterface_src = Glob(SSMINTERFACE_PATH + '*.cpp')
82 'SSMCore/src/SSMResourceServerLauncher.cpp',
83 Glob('SSMCore/src/Common/*.cpp'),
84 Glob('SSMCore/src/QueryProcessor/*.cpp'),
85 Glob('SSMCore/src/SensorProcessor/*.cpp'),
90 'SSMCore/src/Common/sqlite3.c'
93 libssmcore = ssmcore_env.StaticLibrary(
94 target = 'SSMCoreUbuntu',
95 source = [ssm_core_cpp_src, ssm_core_c_src]
98 ssmcore_env.InstallTarget(libssmcore, 'libSSMCORE')
100 #######################################################################
102 #######################################################################
103 #SConscript('SampleApp/SConscript')