ViewVC Help
View File | Revision Log | Show Annotations | View Changeset | Root Listing
root/group/trunk/OOPSE/libmdtools/Makefile
Revision: 378
Committed: Fri Mar 21 17:42:12 2003 UTC (21 years, 3 months ago) by mmeineke
File size: 7713 byte(s)
Log Message:
This commit was generated by cvs2svn to compensate for changes in r377,
which included commits to RCS files with non-trunk default branches.

File Contents

# Content
1 #####################################################
2 # Makefile for libmdtools (bundled with OOPSE) #
3 #####################################################
4 # You should not change anything here. #
5 #####################################################
6
7 TOP=..
8
9 include $(TOP)/Make.conf
10
11 .SUFFIXES : .c .cpp .F90 .hpp .h $(O)
12
13 # First do compile-time flags:
14
15 DECLARES= -DFRC_PATH="$(OOPSE_HOME)/forcefields"
16 MPI_DECLARES= -DIS_MPI
17
18 # include paths starting with "." are all relative to the SUBDIRS!!!
19
20 INCLUDES= -I.. -I../../libBASS -I$(SPRNG_INC)
21 MPI_INCLUDES= -I$(MPICH_INC) -I$(MPICH_INC)/mpi2c++ -I$(MPI_F90_MODS)
22
23 CFLAGS=$(CFLAGS_C) $(INCLUDES) $(DECLARES) $(MPI_INCLUDES)
24 CXXFLAGS=$(CXXFLAGS_C) $(INCLUDES) $(DECLARES)
25 FFLAGS=$(FFLAGS_C) $(DECLARES)
26 DEPFLAGS=$(CFLAGS_C) -I. -I../libBASS -I$(SPRNG_INC) $(MPI_INCLUDES)
27
28 MPI_CFLAGS=$(CFLAGS) $(MPI_INCLUDES) $(MPI_DECLARES)
29 MPI_CXXFLAGS=$(CXXFLAGS) $(MPI_INCLUDES) $(MPI_DECLARES)
30 MPI_FFLAGS=$(FFLAGS) $(MPI_INCLUDES) $(MPI_DECLARES)
31
32 # Then do the compile rules:
33
34 obj/%.o: %.F90
35 cd obj; $(FC) $(FFLAGS) -c ../$<
36
37 MPIobj/%.o: %.F90
38 cd MPIobj; $(FC) $(MPI_FFLAGS) -c ../$<
39
40 obj/%.o: %.cpp
41 cd obj; $(CXX) $(CXXFLAGS) -c ../$<
42
43 MPIobj/%.o: %.cpp
44 cd MPIobj; $(CXX) $(MPI_CXXFLAGS) -c ../$<
45
46 obj/%.o: %.c
47 cd obj; $(CC) $(CFLAGS) -c ../$<
48
49 MPIobj/%.o: %.c
50 cd MPIobj; $(CC) $(MPI_CFLAGS) -c ../$<
51
52 # Then list what we have to compile
53
54 C_FILES = $(DIR)/mpiForceField.c
55
56 CXX_FILES = \
57 $(DIR)/Bend.cpp \
58 $(DIR)/BendExtensions.cpp \
59 $(DIR)/Bond.cpp \
60 $(DIR)/BondExtensions.cpp \
61 $(DIR)/DipoleTestFF.cpp \
62 $(DIR)/DirectionalAtom.cpp \
63 $(DIR)/DumpWriter.cpp \
64 $(DIR)/InitializeFromFile.cpp \
65 $(DIR)/LJ_FF.cpp \
66 $(DIR)/SimInfo.cpp \
67 $(DIR)/SimSetup.cpp \
68 $(DIR)/StatWriter.cpp \
69 $(DIR)/Symplectic.cpp \
70 $(DIR)/Thermo.cpp \
71 $(DIR)/GhostBend.cpp \
72 $(DIR)/Torsion.cpp \
73 $(DIR)/TorsionExtensions.cpp \
74 $(DIR)/TraPPE_ExFF.cpp \
75 $(DIR)/TraPPEFF.cpp \
76 $(DIR)/Verlet.cpp \
77 $(DIR)/randomSPRNG.cpp \
78 $(DIR)/fortranWrappers.cpp \
79 $(DIR)/ForceFields.cpp \
80 $(DIR)/mpiSimulation.cpp
81
82
83 F90_FILES= \
84 $(DIR)/Linux_ifc_machdep.F90 \
85 $(DIR)/atype_module.F90 \
86 $(DIR)/f_verlet_constrained.F90 \
87 $(DIR)/calc_dipole_dipole.F90 \
88 $(DIR)/calc_reaction_field.F90 \
89 $(DIR)/calc_LJ_FF.F90 \
90 $(DIR)/calc_sticky_pair.F90 \
91 $(DIR)/do_Forces.F90 \
92 $(DIR)/vector_class.F90 \
93 $(DIR)/simulation_module.F90 \
94 $(DIR)/wrappers.F90 \
95 $(DIR)/neighborLists.F90 \
96 $(DIR)/calc_gb.F90 \
97 $(DIR)/force_globals.F90 \
98 $(DIR)/mpiSimulation_module.F90
99
100 DIR:=.
101 C_SRCS := $(C_FILES)
102 CXX_SRCS := $(CXX_FILES)
103 F90_SRCS := $(F90_FILES)
104
105 DIR:=obj
106 C_OBJS := $(C_FILES:.c=.o)
107 CXX_OBJS := $(CXX_FILES:.cpp=.o)
108 F90_OBJS := $(F90_FILES:.F90=.o)
109 OBJS := $(C_OBJS) $(CXX_OBJS) $(F90_OBJS)
110
111 DIR:=MPIobj
112 C_MPIOBJS := $(C_FILES:.c=.o)
113 CXX_MPIOBJS := $(CXX_FILES:.cpp=.o)
114 F90_MPIOBJS := $(F90_FILES:.F90=.o)
115 MPIOBJS := $(C_MPIOBJS) $(CXX_MPIOBJS) $(F90_MPIOBJS)
116
117 LIBSUBDIRS = \
118 obj \
119 MPIobj
120
121 # Possible make targets:
122
123 all: libmdtools.a libmdtools_MPI.a
124
125 libmdtools.a: $(OBJS)
126 $(RM) $@
127 $(AR) cr $@ $(OBJS)
128 $(RANLIB) $@
129
130 libmdtools_MPI.a: $(MPIOBJS)
131 $(RM) $@
132 $(AR) cr $@ $(MPIOBJS)
133 $(RANLIB) $@
134
135 .PHONY : clean
136
137 clean : dummy
138 for i in $(LIBSUBDIRS); do \
139 (cd $$i; $(RM) *.o *.mod) || exit 1; \
140 done
141 $(RM) libmdtools.a libmdtools_MPI.a *.o *.mod *~ Make.temp Make.ftemp
142
143 distclean : dummy
144 for i in $(LIBSUBDIRS); do \
145 (cd $$i; $(RM) *.o *.mod) || exit 1; \
146 done
147 $(RM) libmdtools.a libmdtools_MPI.a *.o *.mod *~ Make.temp Make.ftemp
148
149 depend :
150 echo "Only C dependencies are made automagically!"
151 echo "# DO NOT DELETE THIS LINE - used by make depend" > Make.dep
152 $(CC) $(DEPFLAGS) -MM $(C_SRCS) $(CXX_SRCS) \
153 | sed 's/\.o:/\$$(O)\ :/g' > Make.temp
154 cat Make.temp | sed 's/^/obj\//' >> Make.dep
155 cat Make.temp | sed 's/^/MPIobj\//' >> Make.dep
156 # ../utils/sfmakedepend -I $(MPI_F90_MODS) -d obj -f ./Make.ftemp -h *.F90
157 # ../utils/sfmakedepend -I $(MPI_F90_MODS) -d MPIobj -f ./Make.ftemp -h *.F90
158 # cat Make.ftemp | sed 's/\.o:/\$$(O)\ :/g' >> Make.dep
159 $(RM) Make.ftemp Make.temp
160
161 install : dummy
162
163 links : dummy
164
165 tests : dummy
166
167 dummy :
168
169 include Make.dep
170
171 # known dependencies
172
173 obj/$(F_MACH_DEFS): Linux_ifc_machdep.F90
174
175 obj/vector_class$(O): vector_class.F90
176
177 obj/force_globals$(O): force_globals.F90 \
178 obj/$(F_MACH_DEFS)
179
180 obj/neighborLists$(O): neighborLists.F90 \
181 obj/$(F_MACH_DEFS)
182
183 obj/calc_sticky_pair$(O): calc_sticky_pair.F90 \
184 obj/$(F_MACH_DEFS) \
185 obj/force_globals$(O)
186
187 obj/calc_gb$(O): calc_gb.F90 \
188 obj/$(F_MACH_DEFS) \
189 obj/force_globals$(O)
190
191 obj/atype_module$(O): atype_module.F90 \
192 obj/$(F_MACH_DEFS) \
193 obj/vector_class$(O) \
194 obj/calc_sticky_pair$(O) \
195 obj/calc_gb$(O)
196
197 obj/simulation_module$(O): simulation_module.F90 \
198 obj/$(F_MACH_DEFS) \
199 obj/atype_module$(O) \
200 obj/neighborLists$(O)
201
202 obj/calc_LJ_FF$(O): calc_LJ_FF.F90 \
203 obj/$(F_MACH_DEFS) \
204 obj/atype_module$(O) \
205 obj/vector_class$(O) \
206 obj/force_globals$(O)
207
208 obj/calc_reaction_field$(O): calc_reaction_field.F90 \
209 obj/$(F_MACH_DEFS) \
210 obj/vector_class$(O) \
211 obj/atype_module$(O) \
212 obj/force_globals$(O)
213
214 obj/calc_dipole_dipole$(O): calc_dipole_dipole.F90 \
215 obj/$(F_MACH_DEFS) \
216 obj/atype_module$(O) \
217 obj/force_globals$(O) \
218 obj/vector_class$(O)
219
220 obj/do_Forces$(O): do_Forces.F90 \
221 obj/$(F_MACH_DEFS) \
222 obj/simulation_module$(O) \
223 obj/atype_module$(O) \
224 obj/neighborLists$(O) \
225 obj/calc_LJ_FF$(O) \
226 obj/calc_sticky_pair$(O) \
227 obj/calc_dipole_dipole$(O) \
228 obj/calc_reaction_field$(O) \
229 obj/calc_gb$(O) \
230 obj/force_globals$(O)
231
232 obj/wrappers$(O): wrappers.F90 \
233 obj/$(F_MACH_DEFS) \
234 obj/simulation_module$(O) \
235 obj/atype_module$(O) \
236 obj/do_Forces$(O)
237
238 #MPI dependencies:
239
240 MPIobj/$(F_MACH_DEFS): Linux_ifc_machdep.F90
241
242 MPIobj/vector_class$(O): vector_class.F90
243
244 MPIobj/mpiSimulation_module$(O): mpiSimulation_module.F90
245
246 MPIobj/force_globals$(O): force_globals.F90 \
247 MPIobj/mpiSimulation_module$(O) \
248 MPIobj/$(F_MACH_DEFS)
249
250 MPIobj/neighborLists$(O): neighborLists.F90 \
251 MPIobj/$(F_MACH_DEFS) \
252 MPIobj/mpiSimulation_module$(O)
253
254 MPIobj/calc_sticky_pair$(O): calc_sticky_pair.F90 \
255 MPIobj/$(F_MACH_DEFS) \
256 MPIobj/mpiSimulation_module$(O) \
257 MPIobj/force_globals$(O)
258
259 MPIobj/calc_gb$(O): calc_gb.F90 \
260 MPIobj/$(F_MACH_DEFS) \
261 MPIobj/mpiSimulation_module$(O) \
262 MPIobj/force_globals$(O)
263
264 MPIobj/atype_module$(O): atype_module.F90 \
265 MPIobj/$(F_MACH_DEFS) \
266 MPIobj/vector_class$(O) \
267 MPIobj/calc_sticky_pair$(O) \
268 MPIobj/calc_gb$(O)
269
270 MPIobj/simulation_module$(O): simulation_module.F90 \
271 MPIobj/$(F_MACH_DEFS) \
272 MPIobj/mpiSimulation_module$(O) \
273 MPIobj/atype_module$(O) \
274 MPIobj/neighborLists$(O)
275
276 MPIobj/calc_LJ_FF$(O): calc_LJ_FF.F90 \
277 MPIobj/$(F_MACH_DEFS) \
278 MPIobj/mpiSimulation_module$(O) \
279 MPIobj/atype_module$(O) \
280 MPIobj/vector_class$(O) \
281 MPIobj/force_globals$(O)
282
283 MPIobj/calc_reaction_field$(O): calc_reaction_field.F90 \
284 MPIobj/$(F_MACH_DEFS) \
285 MPIobj/mpiSimulation_module$(O) \
286 MPIobj/vector_class$(O) \
287 MPIobj/atype_module$(O) \
288 MPIobj/force_globals$(O)
289
290 MPIobj/calc_dipole_dipole$(O): calc_dipole_dipole.F90 \
291 MPIobj/$(F_MACH_DEFS) \
292 MPIobj/mpiSimulation_module$(O) \
293 MPIobj/atype_module$(O) \
294 MPIobj/force_globals$(O) \
295 MPIobj/vector_class$(O)
296
297 MPIobj/do_Forces$(O): do_Forces.F90 \
298 MPIobj/$(F_MACH_DEFS) \
299 MPIobj/mpiSimulation_module$(O) \
300 MPIobj/simulation_module$(O) \
301 MPIobj/atype_module$(O) \
302 MPIobj/neighborLists$(O) \
303 MPIobj/calc_LJ_FF$(O) \
304 MPIobj/calc_sticky_pair$(O) \
305 MPIobj/calc_dipole_dipole$(O) \
306 MPIobj/calc_reaction_field$(O) \
307 MPIobj/calc_gb$(O) \
308 MPIobj/force_globals$(O)
309
310 MPIobj/wrappers$(O): wrappers.F90 \
311 MPIobj/$(F_MACH_DEFS) \
312 MPIobj/mpiSimulation_module$(O) \
313 MPIobj/simulation_module$(O) \
314 MPIobj/atype_module$(O) \
315 MPIobj/do_Forces$(O)
316
317