/[escript]/trunk/scons/windows_msvc90_options.py
ViewVC logotype

Diff of /trunk/scons/windows_msvc90_options.py

Parent Directory Parent Directory | Revision Log Revision Log | View Patch Patch

revision 3050 by jfenwick, Sun Jun 27 22:54:12 2010 UTC revision 3259 by jfenwick, Mon Oct 11 01:48:14 2010 UTC
# Line 11  Line 11 
11  #  #
12  ########################################################  ########################################################
13    
14    import os
15    
16  import sys, os  # PREFIXES:
17    # There are two ways to specify where to find dependent headers and libraries
18    # (via the <dependency>_prefix):
19    # 1) If your installation follows the general scheme where headers are located
20    #    in <prefix>/include[32,64], and libraries in <prefix>/lib[32,64] then
21    #    it is sufficient to specify this prefix, e.g. boost_prefix='C:/python'
22    # 2) Otherwise provide a list with two elements, where the first one is the
23    #    include path, and the second the library path, e.g.
24    #    boost_prefix=['C:/boost/include/boost1_44', 'C:/boost/lib']
25    # All <dependency>_prefix settings default to '/usr' so have to be set
26    # manually on Windows.
27    
28    # The options file version. SCons will refuse to build if there have been
29    # changes to the set of variables and your file has not been updated.
30    # This setting is mandatory.
31    escript_opts_version = 200
32    
33    # Installation prefix. Files will be installed in subdirectories underneath.
34    # DEFAULT: '.' (current directory)
35    #prefix = 'C:/escript'
36    
37    # C compiler command name or full path.
38    # DEFAULT: auto-detected
39    #cc = 'cl'
40    
41    # C++ compiler command name or full path.
42    # DEFAULT: auto-detected
43    #cxx = 'cl'
44    
45    # Flags to use with both C and C++ compilers. Do not set unless you know
46    # what you are doing - use cc_extra to specify additional flags!
47    # DEFAULT: compiler-dependent
48    cc_flags = '/EHsc /GR /wd4068 /MD'
49    
50    # Additional compiler (optimization) flags for non-debug builds
51    # DEFAULT: compiler-dependent
52    cc_optim = '/O2 /W3'
53    
54    # Additional compiler flags for debug builds
55    # DEFAULT: compiler-dependent
56    cc_debug = '/Od /RTCcsu /ZI /Yd /Y-'
57    
58    # Additional flags to add to the C compiler only
59    # DEFAULT: '' (empty)
60    #cc_extra = ''
61    
62    # Additional flags to add to the C++ compiler only
63    # DEFAULT: '' (empty)
64    #cxx_extra = ''
65    
66  source_root = os.path.realpath('.')  # Additional flags to add to the linker
67    # DEFAULT: '' (empty)
68    ld_extra = '/LIBPATH:"C:/Program Files (x86)/Microsoft Visual Studio 9.0/VC/lib" \
69                /LIBPATH:"C:/Program Files (x86)/Microsoft Visual Studio 9.0/VC/redist/x86/Microsoft.VC90.CRT" \
70                /LIBPATH:"C:/Program Files/Microsoft SDKs/Windows/v6.0A/Lib" \
71                /LIBPATH:"C:/Windows/winsxs/x86_microsoft.vc90.crt_1fc8b3b9a1e18e3b_9.0.21022.8_none_bcb86ed6ac711f91" \
72                /LIBPATH:"C:/Program Files (x86)/Microsoft Visual Studio .NET 2003/SDK/v1.1/Lib"'
73    
74    # Whether to treat compiler warnings as errors
75    # DEFAULT: True
76    werror = False
77    
78    # Whether to build a debug version
79    # DEFAULT: False
80    #debug = True
81    
82    # Set to True to print the full compiler/linker command line
83    # DEFAULT: False
84    verbose = True
85    
86    # Set to True to add flags that enable OpenMP parallelization
87    # DEFAULT: False
88    #openmp = True
89    
90  pyinstall = os.path.join(source_root,'esys')  # Additional compiler flags for OpenMP builds
91  incinstall = os.path.join(source_root,'include')  # DEFAULT: compiler-dependent
92  libinstall = os.path.join(source_root,'lib')  #omp_flags = '/Qopenmp /Qparallel'
93  exinstall = os.path.join(source_root,'examples')  
94    # Additional linker flags for OpenMP builds
95  # locations of files for python  # DEFAULT: compiler-dependent
96  py_vers = '%s%s'%(sys.version_info[0],sys.version_info[1])  #omp_ldflags = '/Qopenmp /Qparallel'
97  python_root = 'C:/python' + py_vers  
98  python_cmd = os.path.join(python_root,'python')  # Flavour of MPI implementation
99  python_path =  os.path.join(python_root,'include')  # Recognized values: 'none', 'MPT', 'MPICH', 'MPICH2', 'OPENMPI', 'INTELMPI'
100  python_lib_path = os.path.join(python_root,'libs')  # DEFAULT: 'none' (disable MPI)
101  python_libs = ['python' + py_vers]  mpi = 'MPICH2'
102    
103    # Prefix or paths to MPI headers and libraries. See note above about prefixes.
104    mpi_prefix = ['C:/Program Files/Microsoft HPC Pack 2008 SDK/include', 'C:/Program Files/Microsoft HPC Pack 2008 SDK/lib/i386']
105    
106    # MPI libraries to link against
107    mpi_libs = ['msmpi']
108    
 # locations of libraries for boost  
109  dotdot = os.path.realpath('..')  dotdot = os.path.realpath('..')
110  boost_path = os.path.join(dotdot,'boost_1_39_0')  
111  boost_lib_path = os.path.join(boost_path,'windows_binary','lib')  # Prefix or paths to boost-python headers and libraries. See note above.
112    boost_prefix = [os.path.join(dotdot, 'boost_1_39_0'), os.path.join(dotdot, 'boost_1_39_0','windows_binary','lib')]
113    
114    # boost-python library/libraries to link against
115  boost_libs = ['boost_python-vc90-mt-1_39']  boost_libs = ['boost_python-vc90-mt-1_39']
116    
117  # locations of netcdf  # Whether to use the netCDF library for dump file support
118  useNetCDF = "yes"  # DEFAULT: False
119  netCDF_root = os.path.join(dotdot,"netcdf")  netcdf = True
 netCDF_path = os.path.join(netCDF_root,"src","include")  
 netCDF_lib_path = os.path.join(netCDF_root,'lib')  
 netCDF_libs = ["netcdf", "netcdf_cpp" ]  
   
 cc_defines = ['_USE_MATH_DEFINES']  
 # c flags to use  
 # /wd4068 - ignore unknown pragmas.  
 # /EHsc - /EHsc Catch C++ exceptions only, assume C code does not throw.  
 # /GR - enable RTTI.  
 # /MD - link to DLL multithreaded RTL  
 # /ZI - dont put the library name in the .obj file.  
 # /Yd - Put debug info in .obj file.  
 # /Y- - Ignore precompiled header options, we don't want them.  
 # /RTCcsu - Stack frame, use of uninitialised variabe and truncation checks.  
 cc_flags  = '/EHsc /GR /wd4068  /MD'  
 #cc_optim  = '/O2 /Op /W3'  
 cc_optim  = '/O2 /W3'  
 cc_debug  = '/Od /RTCcsu /ZI /Yd /Y-'  
   
 # MPI version using MSMPI  
 usempi = 'yes'  
 mpi_path = 'C:/Program Files/Microsoft HPC Pack 2008 SDK/include'  
 mpi_lib_path = 'C:/Program Files/Microsoft HPC Pack 2008 SDK/lib/i386'  
 mpi_libs = ['msmpi']  
 mpi_flavour = 'MPICH2'  
120    
121  # linker flags to use  # Prefix or paths to netCDF headers and libraries. See note above.
122  #link_flags = ''  netcdf_prefix = [os.path.join(dotdot, 'netcdf', 'src', 'include'), os.path.join(dotdot, 'netcdf', 'lib')]
123  #link_flags_debug = '/debug /incremental:no /opt:ref /opt:icf'  
124  # Extra flags to enable compiling on VS 9.0 on the HPC platform  # netCDF library/libraries to link against
125  ld_extra = '/LIBPATH:"C:/Program Files (x86)/Microsoft Visual Studio 9.0/VC/lib" \  netcdf_libs = ['netcdf_cpp', 'netcdf']
126              /LIBPATH:"C:/Program Files (x86)/Microsoft Visual Studio 9.0/VC/redist/x86/Microsoft.VC90.CRT" \  
127          /LIBPATH:"C:/Program Files/Microsoft SDKs/Windows/v6.0A/Lib" \  # Whether to use the parMETIS library (only in conjunction with MPI)
128              /LIBPATH:"C:/Windows/winsxs/x86_microsoft.vc90.crt_1fc8b3b9a1e18e3b_9.0.21022.8_none_bcb86ed6ac711f91" \  # DEFAULT: False
129              /LIBPATH:"C:/Program Files (x86)/Microsoft Visual Studio .NET 2003/SDK/v1.1/Lib"'  #parmetis = True
130    
131    # Prefix or paths to parMETIS headers and libraries. See note above.
132    #parmetis_prefix = 'C:/parmetis'
133    
134    # parMETIS library/libraries to link against
135    #parmetis_libs = ['parmetis', 'metis']
136    
137    # Whether to use the Intel PAPI (Performance API) library
138    # DEFAULT: False
139    #papi = True
140    
141    # Prefix or paths to PAPI headers and libraries. See note above.
142    #papi_prefix = 'C:/papi'
143    
144    # PAPI library/libraries to link against
145    #papi_libs = ['papi']
146    
147    # Whether to use PAPI to instrument solver iterations
148    # DEFAULT: False
149    #papi_instrument_solver = True
150    
151    # Whether to use Intel MKL (Math Kernel Library)
152    # DEFAULT: False
153    #mkl = True
154    
155    # Prefix or paths to MKL headers and libraries. See note above.
156    #mkl_prefix = 'C:/mkl'
157    
158    # MKL library/libraries to link against
159    #mkl_libs = ['mkl_solver', 'mkl_em64t', 'mkl_core', 'guide']
160    
161    # Whether to use UMFPACK (requires AMD and BLAS)
162    # DEFAULT: False
163    #umfpack = True
164    
165    # Prefix or paths to UMFPACK headers and libraries. See note above.
166    #umfpack_prefix = 'C:/umfpack'
167    
168    # UMFPACK library/libraries to link against
169    #umfpack_libs = ['umfpack']
170    
171    # Flavour of LAPACK implementation
172    # Recognized values: 'none', 'clapack', 'mkl'
173    # DEFAULT: 'none' (do not use LAPACK)
174    #lapack = 'clapack'
175    
176    # Prefix or paths to LAPACK headers and libraries. See note above.
177    #lapack_prefix = 'C:/lapack'
178    
179    # LAPACK library/libraries to link against
180    #lapack_libs = ['lapack_atlas']
181    
182    # Whether to use LLNL's SILO library for Silo output file support in weipa
183    # DEFAULT: False
184    #silo = True
185    
186    # Prefix or paths to SILO headers and libraries. See note above.
187    #silo_prefix = 'C:/silo'
188    
189    # SILO library/libraries to link against
190    #silo_libs = ['siloh5', 'hdf5']
191    
192    # Whether to use LLNL's VisIt simulation interface (only version 2 supported)
193    # DEFAULT: False
194    #visit = True
195    
196    # Prefix or paths to VisIt's sim2 headers and libraries. See note above.
197    #visit_prefix = 'C:/visit/2.1.0/linux-intel/libsim/V2'
198    
199    # Sim2 library/libraries to link against
200    #visit_libs = ['simV2']
201    
202    # Whether to enable the deprecated PyVisi interface (requires the VTK python
203    # modules)
204    # DEFAULT: False
205    #pyvisi = True
206    
207    
208    ### ADVANCED OPTIONS ###
209    # Do not change the following options unless you know what they do
210    
211    # Extra libraries to link with
212    sys_libs = ['C:/Program Files/Microsoft Visual Studio .NET 2003/Vc7/PlatformSDK/Lib/Ws2_32']
213    
214    # Additional environmental variables to export to the tools
215    #env_export = []
216    
217    # Build a shared esysUtils library
218    #share_esysutils = True
219    
220    # Build a shared paso library
221    #share_paso = True
222    
223    #tools_names = ['msvc']
224    
225    #iknowwhatimdoing = False
226    
227    #forcelazy = 'leave_alone'
228    
229  # static library archiver flags to use  #forcecollres = 'leave_alone'
 #ar_flags = 'crus'  
230    
 # system specific libraries to link with - this is only used after compilation of the  
 # sources. Don't rely on it linking the correct libs for cleaning, testing etc (see ld_extra)  
 #sys_libs = ["C:/Windows/winsxs/x86_microsoft.vc90.crt_1fc8b3b9a1e18e3b_9.0.21022.8_none_bcb86ed6ac711f91/msvcp90"]  
 sys_libs = []  
 tools_names = ['msvc']  

Legend:
Removed from v.3050  
changed lines
  Added in v.3259

  ViewVC Help
Powered by ViewVC 1.1.26