ViewVC Help
View File | Revision Log | Show Annotations | View Changeset | Root Listing
root/group/trunk/OOPSE-1.0/utils/Makefile.in
Revision: 1334
Committed: Fri Jul 16 18:58:03 2004 UTC (19 years, 11 months ago) by gezelter
File size: 5194 byte(s)
Log Message:
Initial import of OOPSE-1.0 source tree

File Contents

# Content
1 #####################################################
2 # Makefile for Oopse Utility Codes #
3 #####################################################
4 # You should not change anything here. #
5 #####################################################
6
7 TOP=..
8
9 .SUFFIXES : .cpp .c $(O)
10
11 # Extension of object files
12 O=@OBJEXT@
13
14 # Extension of executables
15 EXE=@EXEEXT@
16
17 # Bourn shell
18 SHELL=/bin/sh
19
20 # Path prefix for installation links
21 PREFIX=@prefix@
22
23 # List of subdirectories
24 SUBDIRS=@SUBDIRS@
25
26 # Location of the oopse home
27 OOPSE_HOME=@OOPSE_HOME@
28
29 FORCE_PARAM_DIR=@OOPSE_HOME@/share/forceFields/
30 SAMPLE_SIM_DIR=@OOPSE_HOME@/share/samples/
31
32 # SPRNG library path
33 SPRNG_LIBDIR=@SPRNG_LIBDIR@
34
35 # SPRNG library
36 SPRNG_LIB=@SPRNG_LIB@
37
38 # SPRNG include path
39 SPRNG_INC=@SPRNG_INC@
40
41 # MPICH library path
42 MPI_LIBDIR=@MPI_LIBDIR@
43
44 # MPICH library
45 MPI_LIB=@MPI_LIB@
46
47 # MPICH include path
48 MPI_INC=@MPI_INC@
49
50 # MPI F90 Module path
51 MPI_F90_MODS=@MPI_F90_MODS@
52
53 # Compiler dependent Fortran module
54 F90LIBS = @F90LIBS@
55
56 # Location of yacc (or its substitution)
57 YACC=@YACC@
58
59 #location of lex
60 LEX=@LEX@
61
62 # C compiler
63 CC=@CC@
64
65 # C++ compiler
66
67 CXX=@CXX@
68
69 # F90 compiler
70 F90=@F90@
71
72 # ar
73 AR=@AR@
74
75 # ranlib
76 RANLIB=@RANLIB@
77
78 # rm
79 RM=rm -f
80
81 # soft link
82 LN_S=@LN_S@
83
84 # BSD install
85 INSTALL=@INSTALL@
86 INSTALL_PROGRAM=@INSTALL_PROGRAM@
87 INSTALL_DATA=@INSTALL_DATA@
88 MKINSTALLDIRS=@MKINSTALLDIRS@
89
90 # CPP flags
91 CPPFLAGS=@CPPFLAGS@
92
93 # C flags
94 CFLAGS_C=@CFLAGS@
95
96 # C++ flags
97 CXXFLAGS_C=@CXXFLAGS@
98
99 # Preprocessor flag for fortran
100 PREPFLAG=@PREPFLAG@
101
102 # Preprocessor define flag for fortran
103 PREPDEFFLAG=@PREPDEFFLAG@
104
105 # Fortran flags
106 FFLAGS_C=@FFLAGS@
107
108 # Fortran90 flags
109 F90FLAGS_C=@F90FLAGS@
110
111 # LDFLAGS
112 LDFLAGS=@LDFLAGS@
113
114 # First do compile-time flags:
115
116 MPI_DECLARES= -DIS_MPI
117
118 # include paths starting with "." are all relative to the SUBDIRS!!!
119
120 INCLUDES= -I.. -I../../libBASS -I../../libmdtools
121 MPI_INCLUDES= $(MPI_INC)
122 CFLAGS=$(CFLAGS_C) $(INCLUDES) $(DECLARES)
123 CXXFLAGS=$(CXXFLAGS_C) $(INCLUDES) $(DECLARES)
124 DEPFLAGS=$(CFLAGS_C) -I. $(SPRNG_INC) $(MPI_INCLUDES) -I../libBASS -I../libmdtools
125 MPI_CXXFLAGS=$(CXXFLAGS) $(MPI_INCLUDES) $(MPI_DECLARES)
126
127 QUICKLATE=quickLate$(EXE)
128 DUMP2XYZ=Dump2XYZ$(EXE)
129
130 BASS_LIB=$(TOP)/libBASS/libBASS.a
131 BASS_MPI_LIB=$(TOP)/libBASS/libBASS_MPI.a
132 MD_LIB=$(TOP)/libmdtools/libmdtools.a
133 MD_MPI_LIB=$(TOP)/libmdtools/libmdtools_MPI.a
134 LIBS=$(BASS_LIB) $(MD_LIB)
135 MPI_LIBS=$(BASS_MPI_LIB) $(MD_MPI_LIB)
136
137 LDFLAGS=-L$(TOP)/libBASS -L$(TOP)/libmdtools -L$(SPRNG_LIBDIR)
138 LDADD=-lmdtools -lBASS -lsprng $(F90LIBS)
139
140 SRC_DIR := $(PWD)
141
142 PREFS=-DOOPSE_HOME=\"$(OOPSE_HOME)\"
143
144 obj/%.o: %.cpp
145 cd obj; $(CXX) $(CXXFLAGS) -c $(SRC_DIR)/$<
146
147 MPIobj/%.o: %.cpp
148 cd MPIobj; $(CXX) $(MPI_CXXFLAGS) -c $(SRC_DIR)/$<
149
150 obj/%.o: %.c
151 cd obj; $(CC) $(CFLAGS) -c $(SRC_DIR)/$<
152
153 MPIobj/%.o: %.c
154 cd MPIobj; $(CC) $(MPI_CFLAGS) -c $(SRC_DIR)/$<
155
156
157 # quicklate files
158
159 QUICK_C_FILES = \
160 $(DIR)/quickLate.c
161 DUMP2XYZ_C_FILES = \
162 $(DIR)/Dump2XYZCmd.c
163 DUMP2XYZ_CXX_FILES = \
164 $(DIR)/Dump2XYZ.cpp
165
166 DIR:=.
167 C_SRCS := $(QUICK_C_FILES) $(DUMP2XYZ_C_FILES)
168 CXX_SRCS := $(DUMP2XYZ_CXX_FILES)
169
170 C_CXX_SRCS := $(C_SRCS) $(CXX_SRCS)
171
172 #the objects
173
174 DIR:=obj
175 QUICK_C_OBJS := $(QUICK_C_FILES:.c=.o)
176 QUICK_OBJS := $(QUICK_C_OBJS)
177 DUMP2XYZ_C_OBJS :=$(DUMP2XYZ_C_FILES:.c=.o)
178 DUMP2XYZ_CXX_OBJS :=$(DUMP2XYZ_CXX_FILES:.cpp=.o)
179 DUMP2XYZ_OBJS := $(DUMP2XYZ_CXX_OBJS) $(DUMP2XYZ_C_OBJS)
180
181 DIR:=MPIobj
182 QUICK_C_MPIOBJS := $(QUICK_C_FILES:.c=.o)
183 QUICK_MPIOBJS := $(QUICK_C_MPIOBJS)
184 DUMP2XYZ_C_MPIOBJS := $(DUMP2XYZ_C_FILES:.c=.o)
185 DUMP2XYZ_CXX_MPIOBJS := $(DUMP2XYZ_CXX_FILES:.cpp=.o)
186 DUMP2XYZ_MPIOBJS := $(DUMP2XYZ_C_MPIOBJS) $(DUMP2XYZ_CXX_MPIOBJS)
187
188 LIBSUBDIRS = \
189 obj \
190 MPIobj
191
192 all : $(QUICKLATE) $(DUMP2XYZ)
193
194 depend: Make.dep
195
196 quickLate$(EXE) : $(QUICK_OBJS) $(BASS_LIB) $(MD_LIB)
197 $(CC) $(CFLAGS) $(QUICK_OBJS) -o $@ $(LDFLAGS) $(LDADD)
198
199 Dump2XYZ$(EXE) : $(DUMP2XYZ_OBJS) $(BASS_LIB) $(MD_LIB)
200 $(CXX) $(CXXFLAGS) $(DUMP2XYZ_OBJS) -o $@ $(LDFLAGS) $(LDADD)
201
202 install : $(QUICKLATE) $(DUMP2XYZ)
203 $(MKINSTALLDIRS) $(OOPSE_HOME)/bin
204 $(INSTALL_PROGRAM) -s $(QUICKLATE) $(OOPSE_HOME)/bin/$(QUICKLATE)
205 $(INSTALL_PROGRAM) -s $(DUMP2XYZ) $(OOPSE_HOME)/bin/$(DUMP2XYZ)
206
207 tests : dummy
208
209 $(OOPSE_HOME)/bin/$(QUICKLATE) : $(QUICKLATE)
210 $(MAKE) install
211
212 $(OOPSE_HOME)/bin/$(DUMP2XYZ) : $(DUMP2XYZ)
213 $(MAKE) install
214
215 links : $(OOPSE_HOME)/bin/$(QUICKLATE) $(OOPSE_HOME)/bin/$(DUMP2XYZ)
216 $(MKINSTALLDIRS) $(PREFIX)/bin
217 cd $(PREFIX)/bin; $(LN_S) -f $(OOPSE_HOME)/bin/$(QUICKLATE) $(QUICKLATE)
218 cd $(PREFIX)/bin; $(LN_S) -f $(OOPSE_HOME)/bin/$(DUMP2XYZ) $(DUMP2XYZ)
219
220 clean : dummy
221 for i in $(LIBSUBDIRS); do \
222 (cd $$i; $(RM) *.o) || exit 1; \
223 done
224 $(RM) $(QUICKLATE) $(DUMP2XYZ) *.o *~ Make.temp
225
226 distclean : dummy
227 for i in $(LIBSUBDIRS); do \
228 (cd $$i; $(RM) *.o) || exit 1; \
229 done
230 $(RM) $(QUICKLATE) $(DUMP2XYZ) *.o *~ Make.temp
231
232 devclean : distclean
233
234 Make.dep :
235 echo "# DO NOT DELETE THIS LINE - used by make depend" > Make.dep
236 $(CC) $(DEPFLAGS) -MM $(C_CXX_SRCS) \
237 | sed 's/\.o:/\$$(O)\ :/g' > Make.temp
238 cat Make.temp | sed 's/^[a-zA-Z0-9]/obj\/&/g' >> Make.dep
239 cat Make.temp | sed 's/^[a-zA-Z0-9]/MPIobj\/&/g' >> Make.dep
240 $(RM) Make.temp
241
242 tags : $(C_CXX_SRCS)
243 ctags $(C_CXX_SRCS)
244
245 dummy :
246
247 # DO NOT DELETE
248 include Make.dep