d2ff2ed236978ab5d385581e76ab3ff6a19fcd07
[anna.git] / example / diameter / launcher / SConscript
1 import os
2 Import ('env')
3
4 # Process #################################################################
5 #pName = "example_<module>_<process>"
6 bnames = Dir('..').abspath.rsplit('/', 2)
7 pName = "example_" + bnames[-2] + "_" + bnames[-1]
8 pPath = pName.replace("_", "/") + "/"
9
10 # Anna modules ############################################################
11 pwd = str(Dir ('.').abspath);
12 anna_libpaths = []
13 anna_libs = []
14
15 modules = [ 'core', 'io', 'xml', 'app', 'http', 'comm', 'timex', 'http', 'statistics', 'time', 'diameter', 'diameter_comm' ];
16 for module in modules:
17   anna_libs.append ("anna_" + module)
18   module = module.replace("_", ".")
19   kk = pwd.replace (pPath, ("source/" + module + "/"))
20   anna_libpaths.append (pwd.replace (pPath, ("source/" + module + "/")))
21
22 # dynamic lib:
23 anna_libs.append ("anna_dynamicLauncherProcedure")
24 dynamic_libpath = os.path.join (pwd, "../../../../dynamic/launcher/default/debug")
25 anna_libpaths.append (dynamic_libpath)
26
27 anna_rlibs = list(anna_libs)
28 anna_rlibs.reverse()
29
30 # Libraries ###############################################################
31 # To avoid other libraries accumulation:
32 localEnv = env.Clone()
33
34 anna_library = { 'LIBS' : anna_rlibs }
35 localEnv.MergeFlags (anna_library)
36
37 system_library = { 'LIBS' : [ 'xml2', 'rt', 'pthread' ] }
38 localEnv.MergeFlags (system_library)
39
40 localEnv.Append(LIBPATH = anna_libpaths)
41
42
43 # Linking #################################################################
44
45 # Process includes (avoid mandatory using of quoted includes and ../ paths from testing directory):
46 current_directory = Dir ('.').abspath
47 testing_include = os.path.join (current_directory, "testing")
48 dynamic_include = os.path.join (pwd, "../../../../dynamic/launcher/default/")
49 localEnv.Append (CPPPATH = [current_directory, testing_include, dynamic_include])
50
51 result = localEnv.Program (pName, Glob ('*.cpp') + Glob ('testing/*.cpp'))
52
53 Return ('result')