ViewVC Help
View File | Revision Log | Show Annotations | View Changeset | Root Listing
root/group/trunk/OOPSE/src/Makefile.in
Revision: 944
Committed: Wed Jan 14 22:41:34 2004 UTC (20 years, 5 months ago) by gezelter
File size: 4677 byte(s)
Log Message:
autoconf fixes

File Contents

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