/[escript]/branches/RW_WIN32/bruce/src/SConscript
ViewVC logotype

Annotation of /branches/RW_WIN32/bruce/src/SConscript

Parent Directory Parent Directory | Revision Log Revision Log


Revision 240 - (hide annotations)
Mon Nov 28 06:09:41 2005 UTC (14 years, 11 months ago) by robwdcock
File size: 1383 byte(s)
+ Fixed problem with build paths for python tests being in the wrong location
+ Added build & run for python unit tests for escript and finley.

NOTES
+ scons defaults to building ALL targets so if will build everything, including running all tests. This behaviour can be modified by specifying the DEFAULT targets but I've not done this yet. In the interim specify the target you want.
+ Some dependencies need to be specified as scons does not figure them out automatically, though a helper scanner might be able to. These can be specified explicitly using scons Depend function. Not yet done so you can get an invalid build (especially in parallel). Examples include python depends on shared libraries, possibly a couple of library dependencies for install targets - need to verify. 
1 jgs 176 Import('*')
2    
3 robwdcock 209 lib_name = 'brucecpp'
4 jgs 176
5 robwdcock 218 local_env=env.Copy()
6 jgs 176
7 robwdcock 218 src_dir = local_env.Dir('.').srcnode().abspath
8 jgs 177
9 robwdcock 218 import os
10     filenames = os.listdir(src_dir)
11 robwdcock 209 sources = [x for x in filenames if os.path.splitext(x)[1] in ['.cpp', '.c']]
12     headers = [x for x in filenames if os.path.splitext(x)[1] in ['.h']]
13 jgs 176
14 robwdcock 218 include = Dir('Bruce', esys_inc)
15     local_env.Install( include, headers )
16     local_env.Append(LIBS=[boost_lib_name, 'esysUtils', 'escriptcpp'])
17 jgs 176
18 robwdcock 209 if env['PLATFORM'] == "win32":
19 robwdcock 218 local_env.Append(CPPDEFINES=['_WINDOWS', '_USRDLL', 'BRUCE_EXPORTS'])
20     local_env['PDB'] = 'brucecpp.pdb'
21 phornby 221 elif env['PLATFORM'] == "posix":
22     pass
23 robwdcock 209 else:
24     import os
25    
26     cxx_flags = '-O0 -openmp -openmp_report0 -tpp2 -ansi -ansi_alias -no-gcc -w1'
27    
28     cpp_path = ['#../bruce/inc', '#../escript/inc',
29     '#../esysUtils/inc',
30     '/raid2/tools/python-2.3.4/include/python2.3',
31     '/raid2/tools/boost/include/boost-1_31']
32    
33 robwdcock 218 local_env = Environment(ENV = os.environ)
34 robwdcock 209
35 robwdcock 218 local_env.Replace(CXX = 'icc')
36     local_env.Replace(SHOBJSUFFIX = '.lo')
37     local_env.Replace(CXXFLAGS = cxx_flags)
38     local_env.Replace(CPPPATH = cpp_path)
39 jgs 176
40 robwdcock 218 bruce_lib = local_env.SharedLibrary(lib_name, sources)
41 robwdcock 240 #Default(bruce_lib)
42 robwdcock 218 local_env.Install(esys_lib, bruce_lib)
43 robwdcock 220
44     # Python
45     local_env.Export('lib_name')
46 robwdcock 240 env.SConscript(dirs = ['#/bruce/py_src'], build_dir='py', duplicate=0)

  ViewVC Help
Powered by ViewVC 1.1.26