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

Annotation of /trunk/finley/src/SConscript

Parent Directory Parent Directory | Revision Log Revision Log


Revision 288 - (hide annotations)
Fri Dec 2 01:55:04 2005 UTC (13 years, 11 months ago) by jgs
Original Path: trunk/finley/src/finley/SConscript
File size: 4276 byte(s)
now automatically build unit tests as required based on dependencies
between unit tests and libraries

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     boost_lib_path]
108    
109     libs = ['escriptcpp',
110     'esysUtils',
111     'paso',
112     'mmio',
113     str(boost_lib),
114     'dl',
115     'util']
116    
117     libs.extend(sys_libs)
118     libs.extend(solver_libs)
119    
120 jgs 204 finley_env = Environment(ENV = os.environ)
121 jgs 182
122 jgs 223 finley_env.Replace(CC = cc)
123     finley_env.Replace(CXX = cxx)
124 jgs 204 finley_env.Replace(CCFLAGS = cc_flags)
125     finley_env.Replace(CXXFLAGS = cxx_flags)
126     finley_env.Replace(SHOBJSUFFIX = '.lo')
127     finley_env.Replace(CPPPATH = cpp_path)
128 jgs 277 finley_env.Replace(LIBPATH = lib_path)
129     finley_env.Replace(LIBS = libs)
130 jgs 182
131 jgs 277 finley_lib = finley_env.SharedLibrary(libname, sources)
132    
133     Depends(finley_lib, esysUtils_lib)
134     Depends(finley_lib, escript_lib)
135     Depends(finley_lib, paso_lib)
136     Depends(finley_lib, mmio_lib)
137    
138 jgs 204 finley_env.Install(libdir, finley_lib)
139 jgs 288 finley_env.Install(libdir2, finley_lib)
140 jgs 204 if libinstall != None:
141     finley_env.Install(libinstall, finley_lib)

  ViewVC Help
Powered by ViewVC 1.1.26