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

Annotation of /trunk/finley/src/SConscript

Parent Directory Parent Directory | Revision Log Revision Log


Revision 425 - (hide annotations)
Tue Jan 10 04:10:39 2006 UTC (13 years, 10 months ago) by gross
Original Path: trunk/finley/src/finley/SConscript
File size: 4336 byte(s)
The sparse solver can be called by paso now. 

the building has been change to reduce some code redundancy:
now all scons SCscripts are importing scons/esys_options.py which
imports platform specific settings. 



1 jgs 204 libinstall = None
2    
3 jgs 182 Import('*')
4    
5     import os
6 jgs 190 import string
7 jgs 182
8 jgs 277 libname = 'finleycpp'
9    
10 jgs 204 finley_path = str(esysroot) + '/finley/src/finley'
11     finley_cppadapter_path = str(esysroot) + '/finley/src/finley/CPPAdapter'
12     paso_path = str(esysroot) + '/paso/inc'
13 jgs 191 escript_path = str(esysroot) + '/escript/inc'
14     esysUtils_path = str(esysroot) + '/esysUtils/inc'
15 jgs 182
16 jgs 277 esys_lib_path = str(esysroot) + '/lib'
17     mmio_lib_path = str(esysroot) + '/tools/mmio/lib'
18     esysUtils_lib_path = str(esysroot) + '/esysUtils/lib'
19    
20     esysUtils_lib = str(esysUtils_lib_path) + '/libesysUtils.a'
21     escript_lib = str(esys_lib_path) + '/libescriptcpp.so'
22     paso_lib = str(esys_lib_path) + '/libpaso.a'
23     mmio_lib = str(mmio_lib_path) + '/libmmio.a'
24    
25 jgs 204 cpp_path = [finley_path,
26     finley_cppadapter_path,
27     paso_path,
28     escript_path,
29 jgs 190 esysUtils_path,
30     python_path,
31     boost_path]
32    
33 jgs 182 sources = ['Assemble_addToSystemMatrix.c',
34     'Assemble_CopyElementData.c',
35     'Assemble_CopyNodalData.c',
36     'Assemble_getAssembleParameters.c',
37     'Assemble_getSize.c',
38     'Assemble_gradient.c',
39     'Assemble_handelShapeMissMatch.c',
40     'Assemble_integrate.c',
41     'Assemble_interpolate.c',
42     'Assemble_NodeCoordinates.c',
43     'Assemble_PDE.c',
44     'Assemble_PDEMatrix_Single2.c',
45     'Assemble_PDEMatrix_System2.c',
46     'Assemble_PDE_RHS.c',
47     'Assemble_RHSMatrix_Single.c',
48     'Assemble_RHSMatrix_System.c',
49     'Assemble_RobinCondition.c',
50     'Assemble_RobinCondition_RHS.c',
51     'Assemble_setNormal.c',
52     'ElementFile_allocTable.c',
53     'ElementFile.c',
54     'ElementFile_copyTable.c',
55     'ElementFile_gather.c',
56     'ElementFile_improveColoring.c',
57     'ElementFile_markNodes.c',
58     'ElementFile_optimizeDistribution.c',
59     'ElementFile_prepare.c',
60     'ElementFile_relableNodes.c',
61     'ElementFile_scatter.c',
62     'ElementFile_setNodeRange.c',
63     'Finley.c',
64     'IndexList.c',
65     'Mesh.c',
66     'Mesh_findMatchingFaces.c',
67     'Mesh_getPattern.c',
68     'Mesh_glueFaces.c',
69     'Mesh_hex20.c',
70     'Mesh_hex8.c',
71     'Mesh_joinFaces.c',
72     'Mesh_line2.c',
73     'Mesh_line3.c',
74     'Mesh_markNodes.c',
75     'Mesh_merge.c',
76     'Mesh_prepare.c',
77     'Mesh_prepareNodes.c',
78     'Mesh_print.c',
79     'Mesh_read.c',
80     'Mesh_rec4.c',
81     'Mesh_rec8.c',
82     'Mesh_relabelElementNodes.c',
83     'Mesh_resolveNodeIds.c',
84     'Mesh_saveDX.c',
85     'Mesh_saveVTK.c',
86     'Mesh_write.c',
87     'NodeFile_allocTable.c',
88     'NodeFile.c',
89     'NodeFile_copyTable.c',
90     'NodeFile_gatter.c',
91     'NodeFile_scatter.c',
92     'NodeFile_setCoordinates.c',
93     'NodeFile_setIdRange.c',
94     'Quadrature.c',
95     'ReferenceElements.c',
96     'ShapeFunctions.c',
97 jgs 204 'Util.c',
98     'CPPAdapter/FinleyError.cpp',
99     'CPPAdapter/MeshAdapter.cpp',
100     'CPPAdapter/MeshAdapterFactory.cpp',
101     'CPPAdapter/SystemMatrixAdapter.cpp',
102     'CPPAdapter/finleycpp.cpp']
103 jgs 182
104 jgs 277 lib_path = [esys_lib_path,
105     mmio_lib_path,
106     esysUtils_lib_path,
107 gross 425 boost_lib_path] \
108     + solver_lib_paths
109 jgs 277
110 gross 425
111 jgs 277 libs = ['escriptcpp',
112     'esysUtils',
113     'paso',
114     'mmio',
115     str(boost_lib),
116     'dl',
117 gross 425 'util'] \
118     + sys_libs \
119     + solver_libs
120 jgs 277
121 jgs 204 finley_env = Environment(ENV = os.environ)
122 jgs 182
123 jgs 223 finley_env.Replace(CC = cc)
124     finley_env.Replace(CXX = cxx)
125 jgs 204 finley_env.Replace(CCFLAGS = cc_flags)
126     finley_env.Replace(CXXFLAGS = cxx_flags)
127     finley_env.Replace(SHOBJSUFFIX = '.lo')
128     finley_env.Replace(CPPPATH = cpp_path)
129 jgs 277 finley_env.Replace(LIBPATH = lib_path)
130     finley_env.Replace(LIBS = libs)
131 jgs 182
132 jgs 277 finley_lib = finley_env.SharedLibrary(libname, sources)
133    
134     Depends(finley_lib, esysUtils_lib)
135     Depends(finley_lib, escript_lib)
136     Depends(finley_lib, paso_lib)
137     Depends(finley_lib, mmio_lib)
138    
139 jgs 352 Default(finley_env.Install(libdir, finley_lib))
140     Default(finley_env.Install(libdir2, finley_lib))
141 jgs 204 if libinstall != None:
142 jgs 352 Default(finley_env.Install(libinstall, finley_lib))

  ViewVC Help
Powered by ViewVC 1.1.26