2 # plugin-manager project build script
7 # Add third party libraries
9 SConscript(env.get('SRC_DIR') + '/service/third_party_libs.scons', 'lib_env')
10 plugin_manager_env = lib_env.Clone()
12 target_os = env.get('TARGET_OS')
13 ######################################################################
15 ######################################################################
16 plugin_manager_env.AppendUnique(CPPPATH = [
17 '../lib/cpluff/libcpluff',
19 env.get('SRC_DIR')+'/extlibs/rapidxml'
22 if target_os not in ['windows', 'winrt']:
23 plugin_manager_env.AppendUnique(CXXFLAGS = ['-Wall','-std=c++0x',
24 '-fpermissive', '-Wsign-compare'])
26 if target_os == 'android':
27 plugin_manager_env.AppendUnique(CXXFLAGS = ['-frtti', '-fexceptions', '-DANDROID'])
28 plugin_manager_env.AppendUnique(LIBS = ['boost_thread', 'boost_system', 'gnustl_shared', 'log'])
30 plugin_manager_env.AppendUnique(CPPDEFINES = ['CP_C_API=CP_EXPORT',
31 'CP_HOST=\"\\"'+env.get('TARGET_OS')+'\\"\"',
32 'CP_DATADIR=\"\\\"/usr/local/share\\\"\"',
35 'CP_THREADS=\"\\\"Posix\\"\"',
36 'CP_SHREXT=\"\\".so\\"\"',
37 'CP_FNAMESEP_CHAR=\"\'/\'\"',
38 'CP_FNAMESEP_STR=\"\\\"/\\"\"',
39 'PACKAGE=\"\\\"cpluff\\\"\"'])
42 plugin_manager_env.AppendUnique(LIBS = ['oc', 'octbstack', 'expat', 'dl'])
43 ######################################################################
44 # Source files and Targets
45 ######################################################################
46 ppm_src = ['src/Plugin.cpp', 'src/PluginManager.cpp']
47 ppm = plugin_manager_env.StaticLibrary('ppm', ppm_src)
50 'src/CpluffAdapter.cpp',
52 'src/PluginManagerImpl.cpp',
55 if target_os == 'android':
56 pmimpl_src += ['src/FelixAdapter.cpp']
58 pmimpl_env = plugin_manager_env.Clone()
59 pmimpl_env.PrependUnique(CCFLAGS = ['-fPIC'])
60 pmimpl_env.PrependUnique(LIBS = File(env.get('BUILD_DIR') + '/libcpluff.a'))
61 pmimpl = pmimpl_env.SharedLibrary('pmimpl', pmimpl_src)
63 plugin_manager_env.InstallTarget([ppm, pmimpl], 'libppm')
65 # Build JNI library for android
66 if env.get('TARGET_OS') == 'android':
67 SConscript('src/Android/jni/SConscript')