ViewVC Help
View File | Revision Log | Show Annotations | View Changeset | Root Listing
root/group/trunk/OOPSE/utils/Makefile.in
Revision: 785
Committed: Thu Sep 25 16:42:34 2003 UTC (20 years, 9 months ago) by gezelter
File size: 4390 byte(s)
Log Message:
fixes for configure

File Contents

# User Rev Content
1 gezelter 747 #####################################################
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 gezelter 785 F90LIBS = @F90LIBS@
55 gezelter 747
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 gezelter 785 FFLAGS_C=@FFLAGS@
107 gezelter 747
108 gezelter 785 # Fortran90 flags
109     F90FLAGS_C=@F90FLAGS@
110    
111 gezelter 747 # 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 mmeineke 774 MPI_INCLUDES= $(MPI_INC)
122 gezelter 747 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    
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     QUICKLATE_LDFLAGS=-L$(TOP)/libBASS -L$(TOP)/libmdtools -L$(SPRNG_LIBDIR)
138 gezelter 785 QUICKLATE_LDADD=-lmdtools -lBASS -lsprng $(F90LIBS)
139 gezelter 747
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    
162    
163     DIR:=.
164     QUICK_C_SRCS := $(QUICK_C_FILES)
165     QUICK_SRCS := $(QUICK__C_SRCS)
166    
167     C_CXX_SRCS := $(QUICK_C_SRCS)
168    
169     #the objects
170    
171     DIR:=obj
172     QUICK_C_OBJS := $(QUICK_C_FILES:.c=.o)
173     QUICK_OBJS := $(QUICK_C_OBJS)
174    
175     DIR:=MPIobj
176     QUICK_C_MPIOBJS := $(QUICK_C_FILES:.c=.o)
177     QUICK_MPIOBJS := $(QUICK_C_MPIOBJS)
178     LIBSUBDIRS = \
179     obj \
180     MPIobj
181    
182     all : $(QUICKLATE)
183    
184     depend: Make.dep
185    
186     quickLate$(EXE) : $(QUICK_OBJS) $(BASS_LIB) $(MD_LIB)
187 mmeineke 771 $(CC) $(CFLAGS) $(QUICK_OBJS) -o $@ $(QUICKLATE_LDFLAGS) $(QUICKLATE_LDADD)
188 gezelter 747
189     install : $(QUICKLATE)
190     $(MKINSTALLDIRS) $(OOPSE_HOME)/bin
191     $(INSTALL_PROGRAM) -s $(QUICKLATE) $(OOPSE_HOME)/bin/$(QUICKLATE)
192    
193    
194    
195     tests : dummy
196    
197     $(OOPSE_HOME)/bin/$(QUICKLATE) : $(QUICKLATE)
198     $(MAKE) install
199    
200    
201     links : $(OOPSE_HOME)/bin/$(QUICKLATE)
202     $(MKINSTALLDIRS) $(PREFIX)/bin
203     cd $(PREFIX)/bin; $(LN_S) -f $(OOPSE_HOME)/bin/$(QUICKLATE) $(QUICKLATE)
204    
205     clean : dummy
206     for i in $(LIBSUBDIRS); do \
207     (cd $$i; $(RM) *.o) || exit 1; \
208     done
209     $(RM) $(QUICKLATE) *.o *~ Make.temp
210    
211     distclean : dummy
212     for i in $(LIBSUBDIRS); do \
213     (cd $$i; $(RM) *.o) || exit 1; \
214     done
215 gezelter 785 $(RM) $(QUICKLATE) *.o *~ Make.temp
216 gezelter 747
217     devclean : distclean
218    
219     Make.dep :
220     echo "# DO NOT DELETE THIS LINE - used by make depend" > Make.dep
221     $(CC) $(DEPFLAGS) -MM $(C_CXX_SRCS) \
222     | sed 's/\.o:/\$$(O)\ :/g' > Make.temp
223     cat Make.temp | sed 's/^[a-zA-Z0-9]/obj\/&/g' >> Make.dep
224     cat Make.temp | sed 's/^[a-zA-Z0-9]/MPIobj\/&/g' >> Make.dep
225     $(RM) Make.temp
226    
227     tags : $(C_CXX_SRCS)
228     ctags $(C_CXX_SRCS)
229    
230     dummy :
231    
232     # DO NOT DELETE
233     include Make.dep