-
Notifications
You must be signed in to change notification settings - Fork 1
/
Makefile
188 lines (148 loc) · 4.97 KB
/
Makefile
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
98
99
100
101
102
103
104
105
106
107
108
109
110
111
112
113
114
115
116
117
118
119
120
121
122
123
124
125
126
127
128
129
130
131
132
133
134
135
136
137
138
139
140
141
142
143
144
145
146
147
148
149
150
151
152
153
154
155
156
157
158
159
160
161
162
163
164
165
166
167
168
169
170
171
172
173
174
175
176
177
178
179
180
181
182
183
184
185
186
187
#=====================================================================
#
# S p e c f e m 3 D V e r s i o n 2 . 1
# ---------------------------------------
#
# Main authors: Dimitri Komatitsch and Jeroen Tromp
# Princeton University, USA and University of Pau / CNRS / INRIA
# (c) Princeton University / California Institute of Technology and University of Pau / CNRS / INRIA
# April 2011
#
# This program is free software; you can redistribute it and/or modify
# it under the terms of the GNU General Public License as published by
# the Free Software Foundation; either version 2 of the License, or
# (at your option) any later version.
#
# This program is distributed in the hope that it will be useful,
# but WITHOUT ANY WARRANTY; without even the implied warranty of
# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
# GNU General Public License for more details.
#
# You should have received a copy of the GNU General Public License along
# with this program; if not, write to the Free Software Foundation, Inc.,
# 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301 USA.
#
#=====================================================================
#
# United States Government Sponsorship Acknowledged.
#
# Makefile. Generated from Makefile.in by configure.
FC = ifort
FCFLAGS = #-g
MPIFC = mpiifort
MPILIBS =
FLAGS_CHECK = -O3 -DFORCE_VECTORIZATION -check nobounds -xHost -ftz -assume buffered_io -assume byterecl -align sequence -vec-report0 -std03 -diag-disable 6477 -implicitnone -warn truncated_source -warn argument_checking -warn unused -warn declarations -warn alignments -warn ignore_loc -warn usage
FCFLAGS_f90 =
FCCOMPILE_CHECK = ${FC} ${FCFLAGS} $(FLAGS_CHECK)
MPIFCCOMPILE_CHECK = ${MPIFC} ${FCFLAGS} $(FLAGS_CHECK)
FCLINK = $(MPIFCCOMPILE_CHECK)
#FCLINK = $(FCCOMPILE_CHECK)
CC = gcc
CFLAGS = -g -O2 $(CPPFLAGS)
CPPFLAGS = -I/usr/include/scotch $(COND_MPI_CPPFLAGS)
COND_MPI_CPPFLAGS = -DWITH_MPI
#COND_MPI_CPPFLAGS =
AR = ar
ARFLAGS = cru
RANLIB = ranlib
##.PHONY: clean default all backup bak generate_databases specfem3D meshfem3D
####
#### targets
####
# default targets for the pure Fortran version
DEFAULT = \
xdecompose_mesh \
meshfem3D \
generate_databases \
specfem3D \
$(EMPTY_MACRO)
default: $(DEFAULT)
all: default \
xconvolve_source_timefunction \
xcombine_vol_data \
xcombine_surf_data \
xsmooth_vol_data \
xsum_kernels \
xmodel_update \
xcheck_mesh_quality_CUBIT_Abaqus \
$(EMPTY_MACRO)
required: bin lib obj
backup:
cp -rp src DATA Makefile go_generate_databases* go_mesher* go_solver* mymachines bak
bak: backup
mesh : meshfem3D
gen : generate_databases
spec : specfem3D
dec : decompose_mesh
generate_databases: xgenerate_databases
specfem3D: xspecfem3D
meshfem3D: xmeshfem3D
decompose_mesh: xdecompose_mesh
convolve_source_timefunction: xconvolve_source_timefunction
create_movie_shakemap_AVS_DX_GMT: xcreate_movie_shakemap_AVS_DX_GMT
combine_vol_data: xcombine_vol_data
combine_surf_data: xcombine_surf_data
smooth_vol_data: xsmooth_vol_data
sum_kernels: xsum_kernels
model_update: xmodel_update
check_mesh_quality_CUBIT_Abaqus: xcheck_mesh_quality_CUBIT_Abaqus
bin:
mkdir -p bin
lib:
mkdir -p lib
obj:
mkdir -p obj
reqmesh:
(cd obj; mkdir -p mesh)
reqspec:
(cd obj; mkdir -p spec)
reqdec:
(cd obj; mkdir -p dec)
reqgen :
(cd obj; mkdir -p gen)
reqche :
(cd obj; mkdir -p che)
xmeshfem3D: required reqmesh
$(MAKE) -C src/meshfem3D
xspecfem3D: required reqspec
$(MAKE) -C src/specfem3D specfem3D
xgenerate_databases: required reqgen
$(MAKE) -C src/generate_databases generate_databases
xdecompose_mesh: required reqdec
$(MAKE) -C src/decompose_mesh
xcreate_movie_shakemap_AVS_DX_GMT: required
$(MAKE) -C src/specfem3D xcreate_movie_shakemap_AVS_DX_GMT
xcombine_vol_data: required reqspec
$(MAKE) -C src/specfem3D xcombine_vol_data
xcombine_surf_data: required
$(MAKE) -C src/specfem3D xcombine_surf_data
xconvolve_source_timefunction: required
$(MAKE) -C src/specfem3D xconvolve_source_timefunction
xsmooth_vol_data: required reqspec
$(MAKE) -C src/specfem3D xsmooth_vol_data
xsum_kernels: required reqspec
$(MAKE) -C src/specfem3D xsum_kernels
xmodel_update: required reqspec xspecfem3D
$(MAKE) -C src/specfem3D xmodel_update
xcheck_mesh_quality_CUBIT_Abaqus: required reqche
$(MAKE) -C src/check_mesh_quality_CUBIT_Abaqus
clean: required
rm -rf bin lib obj src/meshfem3D/*.mod src/decompose_mesh/*.mod src/generate_databases/*.mod src/specfem3D/*.mod
$(MAKE) -C src/decompose_mesh/scotch/src realclean
help:
@echo "usage: make [executable]"
@echo ""
@echo "supported executables:"
@echo " xgenerate_databases"
@echo " xspecfem3D"
@echo " xmeshfem3D"
@echo " xdecompose_mesh"
@echo " xconvolve_source_timefunction"
@echo " xcreate_movie_shakemap_AVS_DX_GMT"
@echo " xcombine_vol_data"
@echo " xcombine_surf_data"
@echo " xsmooth_vol_data"
@echo " xsum_kernels"
@echo " xmodel_update"
@echo " xcheck_mesh_quality_CUBIT_Abaqus"
@echo ""