1 | AM_CPPFLAGS = @DAKOTAINCL@ @PETSCINCL@ @MPIINCL@ @SPOOLESINCL@ @METISINCL@ @TRIANGLEINCL@ @CHACOINCL@ @SCOTCHINCL@ @SHAPELIBINCL@ @PYTHONINCL@ @PYTHON_NUMPYINCL@ @AMPIINCL@ @ADJOINTMPIINCL@ @MEDIPACKINCL@ @CODIPACKINCL@
|
---|
2 | AUTOMAKE_OPTIONS = subdir-objects
|
---|
3 |
|
---|
4 | EXEEXT=$(PYTHONWRAPPEREXT)
|
---|
5 |
|
---|
6 | #define prefix (from http://www.gnu.org/software/autoconf/manual/autoconf-2.67/html_node/Defining-Directories.html)
|
---|
7 | AM_CPPFLAGS += -DISSM_PREFIX='"$(prefix)"'
|
---|
8 |
|
---|
9 | #python io{{{
|
---|
10 | lib_LTLIBRARIES = libISSMPython.la
|
---|
11 |
|
---|
12 | io_sources = \
|
---|
13 | ./io/CheckNumPythonArguments.cpp \
|
---|
14 | ./io/FetchPythonData.cpp \
|
---|
15 | ./io/WritePythonData.cpp
|
---|
16 |
|
---|
17 | ALLCXXFLAGS= -fPIC -D_WRAPPERS_ $(CXXFLAGS) $(CXXOPTFLAGS)
|
---|
18 |
|
---|
19 | libISSMPython_la_SOURCES = $(io_sources)
|
---|
20 | libISSMPython_la_CXXFLAGS= $(ALLCXXFLAGS)
|
---|
21 | #}}}
|
---|
22 | #api io{{{
|
---|
23 | lib_LTLIBRARIES += libISSMApi.la
|
---|
24 | api_sources = ./io/ApiPrintf.cpp
|
---|
25 |
|
---|
26 | libISSMApi_la_SOURCES = $(api_sources)
|
---|
27 | libISSMApi_la_CXXFLAGS= $(ALLCXXFLAGS)
|
---|
28 | #}}}
|
---|
29 | #Wrappers {{{
|
---|
30 | lib_LTLIBRARIES += \
|
---|
31 | BamgConvertMesh_python.la \
|
---|
32 | BamgMesher_python.la \
|
---|
33 | BamgTriangulate_python.la \
|
---|
34 | ContourToMesh_python.la \
|
---|
35 | ContourToNodes_python.la \
|
---|
36 | ElementConnectivity_python.la \
|
---|
37 | ExpToLevelSet_python.la \
|
---|
38 | InterpFromGridToMesh_python.la \
|
---|
39 | InterpFromMesh2d_python.la \
|
---|
40 | InterpFromMeshToGrid_python.la \
|
---|
41 | InterpFromMeshToMesh2d_python.la \
|
---|
42 | InterpFromMeshToMesh3d_python.la \
|
---|
43 | IssmConfig_python.la \
|
---|
44 | MeshPartition_python.la \
|
---|
45 | MeshProfileIntersection_python.la \
|
---|
46 | NodeConnectivity_python.la \
|
---|
47 | Triangle_python.la \
|
---|
48 | ProcessRifts_python.la
|
---|
49 |
|
---|
50 | if CHACO
|
---|
51 | lib_LTLIBRARIES += Chaco_python.la
|
---|
52 | endif
|
---|
53 | #}}}
|
---|
54 | #Flags and libraries {{{
|
---|
55 | deps = $(MATHLIB) ${PYTHONLIB}
|
---|
56 |
|
---|
57 | #Triangle library
|
---|
58 | AM_CXXFLAGS = -DTRILIBRARY -DANSI_DECLARATORS -DNO_TIMER -D_WRAPPERS_
|
---|
59 |
|
---|
60 | #Python part
|
---|
61 | AM_LDFLAGS = -module $(PYTHONLINK) -shrext ${EXEEXT} --export-dynamic -rdynamic -no-undefined
|
---|
62 |
|
---|
63 | if !VERSION
|
---|
64 | AM_LDFLAGS += -avoid-version
|
---|
65 | endif
|
---|
66 |
|
---|
67 | # NOTE:
|
---|
68 | # - On Linux, We probably do not need the -static flag as long as we only
|
---|
69 | # generate static libraries for external packages. Dynamic system libraries
|
---|
70 | # will be linked to, whether we like it or not, if no static version is
|
---|
71 | # available.
|
---|
72 | # - On macOS, static linking of binaries is not supported.
|
---|
73 | #
|
---|
74 | if STANDALONE_MODULES
|
---|
75 | if MAC
|
---|
76 | AM_LDFLAGS += -Wl,-rpath,'@rpath'
|
---|
77 | else
|
---|
78 | AM_LDFLAGS += -Wl,-static -Wl,--disable-new-dtags -Wl,-rpath,'$$ORIGIN'
|
---|
79 | endif
|
---|
80 | endif
|
---|
81 |
|
---|
82 | AM_LDFLAGS += --no-warnings
|
---|
83 | AM_CXXFLAGS += -D_HAVE_PYTHON_MODULES_ -fPIC
|
---|
84 |
|
---|
85 | if PYTHON3
|
---|
86 | AM_CXXFLAGS += -DNPY_NO_DEPRECATED_API
|
---|
87 | endif
|
---|
88 |
|
---|
89 | deps += ./libISSMPython.la ../../c/libISSMModules.la ../../c/libISSMCore.la ./libISSMApi.la
|
---|
90 |
|
---|
91 | if ADOLC
|
---|
92 | deps += $(ADOLCLIB)
|
---|
93 | endif
|
---|
94 |
|
---|
95 | if FORTRAN
|
---|
96 | deps += $(FLIBS) $(FORTRANLIB)
|
---|
97 | endif
|
---|
98 |
|
---|
99 | #Optimization flags:
|
---|
100 | AM_CXXFLAGS += $(CXXOPTFLAGS)
|
---|
101 | #}}}
|
---|
102 | # Module sources and dependencies {{{
|
---|
103 | libISSMPython_la_LIBADD = ./../../c/libISSMCore.la ./../../c/libISSMModules.la $(PETSCLIB) $(HDF5LIB) $(MPILIB) $(NEOPZLIB) $(MKLLIB) $(GSLLIB) $(PROJ4LIB) $(MATHLIB)
|
---|
104 |
|
---|
105 | if STANDALONE_LIBRARIES
|
---|
106 | libISSMPython_la_LDFLAGS = -static
|
---|
107 | libISSMApi_la_LDFLAGS = -static
|
---|
108 | deps += $(DAKOTALIB) $(PETSCLIB) $(HDF5LIB) $(TAOLIB) $(NEOPZLIB) $(M1QN3LIB) $(SEMICLIB) $(PLAPACKLIB) $(MUMPSLIB) $(SUPERLULIB) $(SPOOLESLIB) $(TRIANGLELIB) $(SCALAPACKLIB) $(BLACSLIB) $(HYPRELIB) $(SPAILIB) $(PROMETHEUSLIB) $(PASTIXLIB) $(MLLIB) $(METISLIB) $(CHACOLIB) $(SCOTCHLIB) $(BLASLAPACKLIB) $(MKLLIB) $(MPILIB) $(MATHLIB) $(GRAPHICSLIB) $(MULTITHREADINGLIB) $(OSLIBS) $(GSLLIB) $(ADOLCLIB) $(AMPILIB) $(METEOIOLIB) $(SNOWPACKLIB)
|
---|
109 | endif
|
---|
110 |
|
---|
111 | libISSMApi_la_LIBADD = $(PETSCLIB) $(HDF5LIB) $(BLASLAPACKLIB) $(MPILIB) $(NEOPZLIB) $(GSLLIB) $(PROJ4LIB) $(MATHLIB)
|
---|
112 |
|
---|
113 | BamgConvertMesh_python_la_SOURCES = ../BamgConvertMesh/BamgConvertMesh.cpp
|
---|
114 | BamgConvertMesh_python_la_CXXFLAGS = ${AM_CXXFLAGS}
|
---|
115 | BamgConvertMesh_python_la_LIBADD = ${deps} $(PETSCLIB) $(HDF5LIB) $(BLASLAPACKLIB) $(MPILIB) $(NEOPZLIB) $(GSLLIB) $(PROJ4LIB)
|
---|
116 |
|
---|
117 | BamgMesher_python_la_SOURCES = ../BamgMesher/BamgMesher.cpp
|
---|
118 | BamgMesher_python_la_CXXFLAGS = ${AM_CXXFLAGS}
|
---|
119 | BamgMesher_python_la_LIBADD = ${deps} $(PETSCLIB) $(HDF5LIB) $(BLASLAPACKLIB) $(MPILIB) $(NEOPZLIB) $(GSLLIB) $(PROJ4LIB)
|
---|
120 |
|
---|
121 | BamgTriangulate_python_la_SOURCES = ../BamgTriangulate/BamgTriangulate.cpp
|
---|
122 | BamgTriangulate_python_la_CXXFLAGS = ${AM_CXXFLAGS}
|
---|
123 | BamgTriangulate_python_la_LIBADD = ${deps} $(PETSCLIB) $(HDF5LIB) $(BLASLAPACKLIB) $(MPILIB) $(NEOPZLIB) $(GSLLIB) $(PROJ4LIB)
|
---|
124 |
|
---|
125 | if CHACO
|
---|
126 | Chaco_python_la_SOURCES = ../Chaco/Chaco.cpp
|
---|
127 | Chaco_python_la_CXXFLAGS = ${AM_CXXFLAGS}
|
---|
128 | Chaco_python_la_LIBADD = ${deps} $(CHACOLIB) $(PETSCLIB) $(HDF5LIB) $(BLASLAPACKLIB) $(MPILIB) $(NEOPZLIB) $(GSLLIB) $(PROJ4LIB)
|
---|
129 | endif
|
---|
130 |
|
---|
131 | ContourToMesh_python_la_SOURCES = ../ContourToMesh/ContourToMesh.cpp
|
---|
132 | ContourToMesh_python_la_CXXFLAGS = ${AM_CXXFLAGS}
|
---|
133 | ContourToMesh_python_la_LIBADD = ${deps} $(PETSCLIB) $(HDF5LIB) $(BLASLAPACKLIB) $(MPILIB) $(MULTITHREADINGLIB) $(NEOPZLIB) $(GSLLIB) $(PROJ4LIB)
|
---|
134 |
|
---|
135 | ContourToNodes_python_la_SOURCES = ../ContourToNodes/ContourToNodes.cpp
|
---|
136 | ContourToNodes_python_la_CXXFLAGS = ${AM_CXXFLAGS}
|
---|
137 | ContourToNodes_python_la_LIBADD = ${deps} $(PETSCLIB) $(HDF5LIB) $(BLASLAPACKLIB) $(MPILIB) $(NEOPZLIB) $(GSLLIB) $(PROJ4LIB)
|
---|
138 |
|
---|
139 | ElementConnectivity_python_la_SOURCES = ../ElementConnectivity/ElementConnectivity.cpp
|
---|
140 | ElementConnectivity_python_la_CXXFLAGS = ${AM_CXXFLAGS}
|
---|
141 | ElementConnectivity_python_la_LIBADD = ${deps} $(PETSCLIB) $(HDF5LIB) $(BLASLAPACKLIB) $(MPILIB) $(NEOPZLIB) $(GSLLIB) $(PROJ4LIB)
|
---|
142 |
|
---|
143 | ExpToLevelSet_python_la_SOURCES = ../ExpToLevelSet/ExpToLevelSet.cpp
|
---|
144 | ExpToLevelSet_python_la_CXXFLAGS = ${AM_CXXFLAGS}
|
---|
145 | ExpToLevelSet_python_la_LIBADD = ${deps} $(PETSCLIB) $(HDF5LIB) $(BLASLAPACKLIB) $(MPILIB) $(NEOPZLIB) $(GSLLIB) $(PROJ4LIB) $(NEOPZLIB)
|
---|
146 |
|
---|
147 | InterpFromMesh2d_python_la_SOURCES = ../InterpFromMesh2d/InterpFromMesh2d.cpp
|
---|
148 | InterpFromMesh2d_python_la_CXXFLAGS = ${AM_CXXFLAGS}
|
---|
149 | InterpFromMesh2d_python_la_LIBADD = ${deps} $(PETSCLIB) $(HDF5LIB) $(BLASLAPACKLIB) $(MPILIB) $(MULTITHREADINGLIB) $(NEOPZLIB) $(GSLLIB) $(PROJ4LIB)
|
---|
150 |
|
---|
151 | InterpFromGridToMesh_python_la_SOURCES = ../InterpFromGridToMesh/InterpFromGridToMesh.cpp
|
---|
152 | InterpFromGridToMesh_python_la_CXXFLAGS = ${AM_CXXFLAGS}
|
---|
153 | InterpFromGridToMesh_python_la_LIBADD = ${deps} $(PETSCLIB) $(HDF5LIB) $(BLASLAPACKLIB) $(MPILIB) $(MULTITHREADINGLIB) $(NEOPZLIB) $(GSLLIB) $(PROJ4LIB)
|
---|
154 |
|
---|
155 | InterpFromMeshToGrid_python_la_SOURCES = ../InterpFromMeshToGrid/InterpFromMeshToGrid.cpp
|
---|
156 | InterpFromMeshToGrid_python_la_CXXFLAGS = ${AM_CXXFLAGS}
|
---|
157 | InterpFromMeshToGrid_python_la_LIBADD = ${deps} $(PETSCLIB) $(HDF5LIB) $(BLASLAPACKLIB) $(MPILIB) $(MULTITHREADINGLIB) $(NEOPZLIB) $(GSLLIB) $(PROJ4LIB)
|
---|
158 |
|
---|
159 | InterpFromMeshToMesh2d_python_la_SOURCES = ../InterpFromMeshToMesh2d/InterpFromMeshToMesh2d.cpp
|
---|
160 | InterpFromMeshToMesh2d_python_la_CXXFLAGS = ${AM_CXXFLAGS}
|
---|
161 | InterpFromMeshToMesh2d_python_la_LIBADD = ${deps} $(PETSCLIB) $(HDF5LIB) $(BLASLAPACKLIB) $(MPILIB) $(MULTITHREADINGLIB) $(GSLLIB) $(PROJ4LIB)
|
---|
162 |
|
---|
163 | InterpFromMeshToMesh3d_python_la_SOURCES = ../InterpFromMeshToMesh3d/InterpFromMeshToMesh3d.cpp
|
---|
164 | InterpFromMeshToMesh3d_python_la_CXXFLAGS = ${AM_CXXFLAGS}
|
---|
165 | InterpFromMeshToMesh3d_python_la_LIBADD = ${deps} $(PETSCLIB) $(HDF5LIB) $(BLASLAPACKLIB) $(MPILIB) $(MULTITHREADINGLIB) $(GSLLIB) $(PROJ4LIB)
|
---|
166 |
|
---|
167 | IssmConfig_python_la_SOURCES = ../IssmConfig/IssmConfig.cpp
|
---|
168 | IssmConfig_python_la_CXXFLAGS = ${AM_CXXFLAGS}
|
---|
169 | IssmConfig_python_la_LIBADD = ${deps} $(DAKOTALIB) $(PETSCLIB) $(HDF5LIB) $(BLASLAPACKLIB) $(MPILIB) $(NEOPZLIB)
|
---|
170 |
|
---|
171 | MeshPartition_python_la_SOURCES = ../MeshPartition/MeshPartition.cpp
|
---|
172 | MeshPartition_python_la_CXXFLAGS = ${AM_CXXFLAGS}
|
---|
173 | MeshPartition_python_la_LIBADD = ${deps} $(PETSCLIB) $(HDF5LIB) $(METISLIB) $(BLASLAPACKLIB) $(MPILIB) $(NEOPZLIB) $(GSLLIB) $(PROJ4LIB)
|
---|
174 |
|
---|
175 | MeshProfileIntersection_python_la_SOURCES = ../MeshProfileIntersection/MeshProfileIntersection.cpp
|
---|
176 | MeshProfileIntersection_python_la_CXXFLAGS = ${AM_CXXFLAGS}
|
---|
177 | MeshProfileIntersection_python_la_LIBADD = ${deps} $(PETSCLIB) $(HDF5LIB) $(BLASLAPACKLIB) $(MPILIB) $(NEOPZLIB) $(GSLLIB) $(PROJ4LIB)
|
---|
178 |
|
---|
179 | NodeConnectivity_python_la_SOURCES = ../NodeConnectivity/NodeConnectivity.cpp
|
---|
180 | NodeConnectivity_python_la_CXXFLAGS = ${AM_CXXFLAGS}
|
---|
181 | NodeConnectivity_python_la_LIBADD = ${deps} $(PETSCLIB) $(HDF5LIB) $(BLASLAPACKLIB) $(MPILIB) $(NEOPZLIB) $(GSLLIB) $(PROJ4LIB)
|
---|
182 |
|
---|
183 | Triangle_python_la_SOURCES = ../Triangle/Triangle.cpp
|
---|
184 | Triangle_python_la_CXXFLAGS = ${AM_CXXFLAGS}
|
---|
185 | Triangle_python_la_LIBADD = ${deps} $(TRIANGLELIB) $(PETSCLIB) $(HDF5LIB) $(BLASLAPACKLIB) $(MPILIB) $(NEOPZLIB) $(GSLLIB) $(PROJ4LIB)
|
---|
186 |
|
---|
187 | ProcessRifts_python_la_SOURCES = ../ProcessRifts/ProcessRifts.cpp
|
---|
188 | ProcessRifts_python_la_CXXFLAGS = ${AM_CXXFLAGS}
|
---|
189 | ProcessRifts_python_la_LIBADD = ${deps} $(PETSCLIB) $(HDF5LIB) $(BLASLAPACKLIB) $(MPILIB) $(NEOPZLIB) $(GSLLIB) $(PROJ4LIB)
|
---|
190 | #}}}
|
---|