/[escript]/trunk/esysUtils/src/SConscript
ViewVC logotype

Contents of /trunk/esysUtils/src/SConscript

Parent Directory Parent Directory | Revision Log Revision Log


Revision 2055 - (show annotations)
Mon Nov 17 13:26:40 2008 UTC (10 years, 9 months ago) by phornby
File size: 1750 byte(s)
I have found that windows intelc /Qiop option,
which performs multi-file loop parallisation and vectorisation,
taking account of all the information in a single .obj file that it generates,
will get it's second phase link action right if it is linking
to DLL's rather than statically linking. This and other SConscripts
have been modified to take account of the options that select a static
or dynamic library.
1
2 ########################################################
3 #
4 # Copyright (c) 2003-2008 by University of Queensland
5 # Earth Systems Science Computational Center (ESSCC)
6 # http://www.uq.edu.au/esscc
7 #
8 # Primary Business: Queensland, Australia
9 # Licensed under the Open Software License version 3.0
10 # http://www.opensource.org/licenses/osl-3.0.php
11 #
12 ########################################################
13
14
15 import os
16 Import('*')
17
18 local_env = clone_env(env_mpi)
19
20 sources = """
21 EsysAssertException.cpp
22 EsysException.cpp
23 esysExceptionTranslator.cpp
24 """.split()
25 headers = """
26 EsysAssert.h
27 EsysAssertException.h
28 EsysException.h
29 EsysTypes.h
30 esys_malloc.h
31 esysExceptionTranslator.h
32 system_dep.h
33 """.split()
34
35 lib_name = 'esysUtils'
36
37 if IS_WINDOWS_PLATFORM :
38 local_env.Append(CPPDEFINES = ['ESYSUTILS_EXPORTS'])
39
40 if local_env['share_esysUtils'] :
41 lib = local_env.SharedLibrary(lib_name, sources)
42 else:
43 lib = local_env.StaticLibrary(lib_name, sources)
44
45 env.Alias('target_esysUtils_a', lib)
46
47 include_path = Dir(lib_name, local_env['incinstall'])
48
49 tmp1 = local_env.Install(include_path, headers )
50 env.Alias('target_install_esysUtils_headers', [tmp1])
51
52 tmp3 = local_env.Install(local_env['libinstall'], lib)
53 env.Alias('target_install_esysUtils_a', tmp3)
54
55 # Call the unit tests SConscript
56 # export the lib target since tests will depend on it
57 # the lib target is a list of file nodes (why? win32 produces more than one output file: .lib, .dll, .pdb)
58 # FIXME: This list handling produces the desired result but can this be done directly with scons File nodes?
59
60 dep_lib = [local_env['libinstall']+'/'+str(x) for x in lib]
61 Export('dep_lib')
62
63 local_env.SConscript(dirs = ['#/esysUtils/test'], build_dir='#/build/$PLATFORM/esysUtils/test', duplicate=0)
64

  ViewVC Help
Powered by ViewVC 1.1.26