ViewVC Help
View File | Revision Log | Show Annotations | View Changeset | Root Listing
root/group/trunk/OOPSE/src/Makefile.in
Revision: 1152
Committed: Mon May 10 20:28:14 2004 UTC (20 years, 2 months ago) by tim
File size: 4670 byte(s)
Log Message:
optimize DumpWriter

File Contents

# User Rev Content
1 gezelter 747 #####################################################
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 gezelter 944 # MPI library path
41 gezelter 747 MPI_LIBDIR=@MPI_LIBDIR@
42    
43 gezelter 944 # MPI library
44 gezelter 747 MPI_LIB=@MPI_LIB@
45    
46 gezelter 944 # MPI F90 library
47     MPI_F90LIB=@MPI_F90LIB@
48    
49     # MPI include path
50 gezelter 747 MPI_INC=@MPI_INC@
51    
52 gezelter 944 # MPI F90 include path
53     MPI_F90INC=@MPI_F90INC@
54    
55 gezelter 747 # 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 gezelter 785 # F90 libraries (for linking with C)
72     F90LIBS=@F90LIBS@
73    
74 gezelter 747 # 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 gezelter 840 # C++ template flags
102     OOPSE_TEMPLATE_FLAGS=@OOPSE_TEMPLATE_FLAGS@
103    
104     # C++ namespace flag
105     EXTRA_CC_FLAG=@EXTRA_CC_FLAG@
106    
107 gezelter 747 # 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 gezelter 785 # Fortran90 flags
117     F90FLAGS_C=@F90FLAGS@
118    
119 gezelter 747 # 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 gezelter 840 CXXFLAGS=$(CXXFLAGS_C) $(OOPSE_TEMPLATE_FLAGS) $(EXTRA_CC_FLAG) $(INCLUDES) $(DECLARES)
133 gezelter 747 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 gezelter 785 LIBS=$(MD_LIB) $(BASS_LIB)
144     MPI_LIBS=$(MD_MPI_LIB) $(BASS_MPI_LIB)
145 gezelter 747
146 gezelter 834 OOPSE_LDFLAGS= $(LIBS) $(F90LIBS) -L$(SPRNG_LIBDIR) $(SPRNG_LIB)
147 gezelter 747
148 gezelter 944 OOPSE_MPI_LDFLAGS= $(MPI_LIBS) $(F90LIBS) -L$(MPI_LIBDIR) $(MPI_F90LIB) $(MPI_LIB) -L$(SPRNG_LIBDIR) $(SPRNG_LIB)
149 gezelter 747
150 gezelter 839
151 gezelter 747 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 tim 1152 $(CXX) $(CFLAGS) $(OBJS) -o $@ $(OOPSE_LDFLAGS)
184 gezelter 747
185     oopse_MPI$(EXE) : $(MPIOBJS) $(BASS_MPI_LIB) $(MD_MPI_LIB)
186 tim 1152 $(CXX) $(CFLAGS) $(MPIOBJS) -o $@ $(OOPSE_MPI_LDFLAGS)
187 gezelter 747
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 gezelter 785 $(RM) $(OOPSE) $(OOPSE_MPI) *.o *~ Make.temp
217 gezelter 747
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