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

Contents of /trunk/finley/src/SConscript

Parent Directory Parent Directory | Revision Log Revision Log


Revision 6651 - (show annotations)
Wed Feb 7 02:12:08 2018 UTC (16 months, 1 week ago) by jfenwick
File size: 3275 byte(s)
Make everyone sad by touching all the files

Copyright dates update

1
2 ##############################################################################
3 #
4 # Copyright (c) 2003-2018 by The University of Queensland
5 # http://www.uq.edu.au
6 #
7 # Primary Business: Queensland, Australia
8 # Licensed under the Apache License, version 2.0
9 # http://www.apache.org/licenses/LICENSE-2.0
10 #
11 # Development until 2012 by Earth Systems Science Computational Center (ESSCC)
12 # Development 2012-2013 by School of Earth Sciences
13 # Development from 2014 by Centre for Geoscience Computing (GeoComp)
14 #
15 ##############################################################################
16
17 Import('*')
18
19 module_name = 'finley'
20
21 sources = """
22 Assemble_AverageElementData.cpp
23 Assemble_CopyElementData.cpp
24 Assemble_CopyNodalData.cpp
25 Assemble_LumpedSystem.cpp
26 Assemble_NodeCoordinates.cpp
27 Assemble_PDE.cpp
28 Assemble_PDE_Points.cpp
29 Assemble_PDE_Single_1D.cpp
30 Assemble_PDE_Single_2D.cpp
31 Assemble_PDE_Single_3D.cpp
32 Assemble_PDE_Single_C.cpp
33 Assemble_PDE_System_1D.cpp
34 Assemble_PDE_System_2D.cpp
35 Assemble_PDE_System_3D.cpp
36 Assemble_PDE_System_C.cpp
37 Assemble_addToSystemMatrix.cpp
38 Assemble_getAssembleParameters.cpp
39 Assemble_getNormal.cpp
40 Assemble_getSize.cpp
41 Assemble_gradient.cpp
42 Assemble_integrate.cpp
43 Assemble_interpolate.cpp
44 Assemble_jacobians.cpp
45 DomainFactory.cpp
46 ElementFile.cpp
47 ElementFile_jacobians.cpp
48 FinleyDomain.cpp
49 IndexList.cpp
50 Mesh_addPoints.cpp
51 Mesh_findMatchingFaces.cpp
52 Mesh_getPasoPattern.cpp
53 Mesh_getTrilinosGraph.cpp
54 Mesh_glueFaces.cpp
55 Mesh_hex20.cpp
56 Mesh_hex8.cpp
57 Mesh_joinFaces.cpp
58 Mesh_merge.cpp
59 Mesh_optimizeDOFDistribution.cpp
60 Mesh_read.cpp
61 Mesh_readGmsh.cpp
62 Mesh_rec4.cpp
63 Mesh_rec8.cpp
64 Mesh_write.cpp
65 NodeFile.cpp
66 Quadrature.cpp
67 ReferenceElements.cpp
68 ShapeFunctions.cpp
69 Util.cpp
70 """.split()
71
72 headers = """
73 Assemble.h
74 DomainFactory.h
75 ElementFile.h
76 Finley.h
77 FinleyDomain.h
78 FinleyException.h
79 FinleyVersion.h
80 IndexList.h
81 NodeFile.h
82 NodeMapping.h
83 Quadrature.h
84 ReferenceElements.h
85 ShapeFunctions.h
86 Util.h
87 ReferenceElementSets.h
88 """.split()
89
90 local_env = env.Clone()
91
92 if IS_WINDOWS:
93 local_env.Append(CPPDEFINES = ['FINLEY_EXPORTS'])
94
95 # collect dependencies for other modules
96 finleylibs = []
97 finleylibs += env['escript_libs']
98 if env['parmetis']:
99 finleylibs += env['parmetis_libs']
100 if env['paso']:
101 finleylibs += env['paso_libs']
102 if env['trilinos']:
103 finleylibs += env['trilinoswrap_libs']
104
105 local_env.PrependUnique(LIBS = finleylibs)
106
107 env['finley_libs'] = [module_name] + finleylibs
108
109 include_path = Dir(module_name, local_env['incinstall'])
110 hdr_inst = local_env.Install(include_path, headers)
111
112 lib = local_env.SharedLibrary(module_name, sources)
113 lib_inst = local_env.Install(local_env['libinstall'], lib)
114
115 ### Python wrapper ###
116 py_env = env.Clone()
117 py_env.PrependUnique(LIBS = env['finley_libs'])
118 py_lib_name = module_name + 'cpp'
119 py_lib = py_env.PythonModule(py_lib_name, 'finleycpp.cpp')
120
121 mod_path = Dir(module_name, local_env['pyinstall'])
122 mod_inst = py_env.Install(mod_path, py_lib)
123
124 build = env.Alias('build_finley', [hdr_inst, lib, py_lib])
125 env.Alias('install_finley', [build, lib_inst, mod_inst])
126

  ViewVC Help
Powered by ViewVC 1.1.26