ViewVC Help
View File | Revision Log | Show Annotations | View Changeset | Root Listing
root/group/trunk/OOPSE/utils/sysbuilder/Makefile.in
Revision: 821
Committed: Fri Oct 24 22:17:45 2003 UTC (21 years, 9 months ago) by mmeineke
File size: 5587 byte(s)
Log Message:
put QuickBass, MoLocator, and latticeBuilder into a Builder Library
overhauled latticeBilayer into its own program. Removed sysBuild from the Makefile

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 mmeineke 821 TOP=@abs_top_builddir@
8 gezelter 747
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     FFLAGS_C=@F90FLAGS@
107    
108     # LDFLAGS
109     LDFLAGS=@LDFLAGS@
110    
111     MPI_DECLARES= -DIS_MPI
112    
113     # include paths starting with "." are all relative to the SUBDIRS!!!
114    
115 mmeineke 821 INCLUDES= -I.. -I$(TOP)/libBASS -I$(TOP)/libmdtools
116 gezelter 747 CFLAGS=$(CFLAGS_C) $(INCLUDES) $(DECLARES)
117     CXXFLAGS=$(CXXFLAGS_C) $(INCLUDES) $(DECLARES)
118 mmeineke 821 DEPFLAGS=$(CFLAGS_C) -I. $(SPRNG_INC) -I$(TOP)/libBASS -I$(TOP)/libmdtools
119 gezelter 747
120    
121     SYSBUILD=sysBuild$(EXE)
122 mmeineke 821 BUILDER_LIB=libBuilder.a
123     LBILAYER=latticeBilayer$(EXE)
124 gezelter 747
125     BASS_LIB=$(TOP)/libBASS/libBASS.a
126     MD_LIB=$(TOP)/libmdtools/libmdtools.a
127     LIBS=$(BASS_LIB) $(MD_LIB)
128    
129 mmeineke 821 #SYSBUILD_LDFLAGS=-L$(TOP)/libBASS -L$(TOP)/libmdtools -L$(SPRNG_LIBDIR)
130     #SYSBUILD_LDADD=-lmdtools -lBASS $(SPRNG_LIB) $(F90LIBS)
131 gezelter 747
132 mmeineke 821
133 gezelter 747 SRC_DIR := $(PWD)
134    
135 mmeineke 821 LBILAYER_LDFLAGS=-L$(TOP)/libBASS -L$(TOP)/libmdtools -L$(SPRNG_LIBDIR) -L$(SRC_DIR)
136     LBILAYER_LDADD=-lBuilder -lmdtools -lBASS $(SPRNG_LIB) $(F90LIBS)
137    
138    
139 gezelter 747 PREFS=-DOOPSE_HOME=\"$(OOPSE_HOME)\"
140    
141     obj/%.o: %.cpp
142     cd obj; $(CXX) $(CXXFLAGS) -c $(SRC_DIR)/$<
143    
144     MPIobj/%.o: %.cpp
145     cd MPIobj; $(CXX) $(MPI_CXXFLAGS) -c $(SRC_DIR)/$<
146    
147     obj/%.o: %.c
148     cd obj; $(CC) $(CFLAGS) -c $(SRC_DIR)/$<
149    
150     MPIobj/%.o: %.c
151     cd MPIobj; $(CC) $(MPI_CFLAGS) -c $(SRC_DIR)/$<
152    
153     # sysBuilder files
154    
155 mmeineke 821 #SYSBUILD_C_FILES = $(DIR)/cmdline.c
156     #SYSBUILD_CXX_FILES = \
157     # $(DIR)/sysBuild.cpp \
158     # $(DIR)/bilayerSys.cpp \
159     # $(DIR)/MoLocator.cpp \
160     # $(DIR)/latticeBuilder.cpp \
161     # $(DIR)/nanoBuilder.cpp
162    
163     #latticeBilayer files
164    
165     LBILAYER_CXX_FILES = $(DIR)/latticeBilayer.cpp
166    
167     # libBuilder files
168    
169     BUILDER_LIB_CXX_FILES = \
170 gezelter 747 $(DIR)/MoLocator.cpp \
171 mmeineke 821 $(DIR)/QuickBass.cpp \
172     $(DIR)/latticeBuilder.cpp
173 gezelter 747
174 mmeineke 821
175 gezelter 747 # the sources
176    
177     DIR:=.
178    
179 mmeineke 821 #SYSBUILD_C_SRCS := $(SYSBUILD_C_FILES)
180     #SYSBUILD_CXX_SRCS := $(SYSBUILD_CXX_FILES)
181     #SYSBUILD_SRCS := $(SYSBUILD_C_SRCS) $(SYSBUILD_CXX_SRCS)
182 gezelter 747
183 mmeineke 821 LBILAYER_CXX_SRCS := $(LBILAYER_CXX_FILES)
184     LBILAYER_SRCS := $(LBILAYER_CXX_SRCS)
185 gezelter 747
186 mmeineke 821 BUILDER_LIB_CXX_SRCS := $(BUILDER_LIB_CXX_FILES)
187     BUILDER_LIB_SRCS := $(BUILDER_LIB_CXX_SRCS)
188    
189     C_CXX_SRCS := $(LBILAYER_SRCS) $(BUILDER_LIB_SRCS)
190    
191     C_SRCS :=
192     CXX_SRCS := $(LBILAYER_CXX_SRCS) $(BUILDER_LIB_CXX_SRCS)
193    
194 gezelter 747 #the objects
195    
196     DIR:=obj
197    
198 mmeineke 821 #SYSBUILD_C_OBJS := $(SYSBUILD_C_FILES:.c=.o)
199     #SYSBUILD_CXX_OBJS := $(SYSBUILD_CXX_FILES:.cpp=.o)
200     #SYSBUILD_OBJS := $(SYSBUILD_C_OBJS) $(SYSBUILD_CXX_OBJS)
201 gezelter 747
202 mmeineke 821 LBILAYER_CXX_OBJS := $(LBILAYER_CXX_FILES:.cpp=.o)
203     LBILAYER_OBJS := $(LBILAYER_CXX_OBJS)
204 gezelter 747
205 mmeineke 821 BUILDER_LIB_CXX_OBJS := $(BUILDER_LIB_CXX_FILES:.cpp=.o)
206     BUILDER_LIB_OBJS := $(BUILDER_LIB_CXX_OBJS)
207 gezelter 747
208     LIBSUBDIRS = \
209 mmeineke 821 obj
210 gezelter 747
211 mmeineke 821 all : $(BUILDER_LIB) $(LBILAYER)
212 gezelter 747
213     depend: Make.dep
214    
215 mmeineke 821 #sysBuild$(EXE) : $(SYSBUILD_OBJS) $(BASS_LIB) $(MD_LIB)
216     # $(CXX) $(CXXFLAGS) $(SYSBUILD_OBJS) -o $@ $(SYSBUILD_LDFLAGS) $(SYSBUILD_LDADD)
217 gezelter 747
218 mmeineke 821 libBuilder.a: $(BUILDER_LIB_OBJS)
219     $(RM) $@
220     $(AR) cr $@ $(BUILDER_LIB_OBJS)
221     $(RANLIB) $@
222    
223     latticeBilayer$(EXE): $(LBILAYER_OBJS) $(BUILDER_LIB) $(BASS_LIB) $(MD_LIB)
224     $(CXX) $(CXXFLAGS) $(LBILAYER_OBJS) -o $@ $(LBILAYER_LDFLAGS) $(LBILAYER_LDADD)
225    
226     install : $(LBILAYER)
227 gezelter 747 $(MKINSTALLDIRS) $(OOPSE_HOME)/bin
228 mmeineke 821 $(INSTALL_PROGRAM) -s $(LBILAYER) $(OOPSE_HOME)/bin/$(LBILAYER)
229 gezelter 747
230    
231     tests : dummy
232    
233    
234 mmeineke 821 $(OOPSE_HOME)/bin/$(LBILAYER) : $(LBILAYER)
235 gezelter 747 $(MAKE) install
236    
237 mmeineke 821 links : $(OOPSE_HOME)/bin/$(LBILAYER)
238 gezelter 747 $(MKINSTALLDIRS) $(PREFIX)/bin
239 mmeineke 821 cd $(PREFIX)/bin; $(LN_S) -f $(OOPSE_HOME)/bin/$(LBILAYER) $(LBILAYER)
240 gezelter 747
241     clean : dummy
242     for i in $(LIBSUBDIRS); do \
243     (cd $$i; $(RM) *.o) || exit 1; \
244     done
245 mmeineke 821 $(RM) $(LBILAYER) $(BUILDER_LIB) *.o *~ Make.temp
246 gezelter 747
247     distclean : dummy
248     for i in $(LIBSUBDIRS); do \
249     (cd $$i; $(RM) *.o) || exit 1; \
250     done
251 mmeineke 821 $(RM) $(LBILAYER) $(BUILDER_LIB) *.o *~ Make.temp
252 gezelter 747
253     devclean : distclean
254    
255     Make.dep :
256     echo "# DO NOT DELETE THIS LINE - used by make depend" > Make.dep
257 mmeineke 821 $(CC) $(DEPFLAGS) -MM $(C_SRCS) \
258 gezelter 747 | sed 's/\.o:/\$$(O)\ :/g' > Make.temp
259 mmeineke 821 $(CXX) $(DEPFLAGS) -MM $(CXX_SRCS) \
260 gezelter 747 | sed 's/\.o:/\$$(O)\ :/g' >> Make.temp
261     cat Make.temp | sed 's/^[a-zA-Z0-9]/obj\/&/g' >> Make.dep
262     cat Make.temp | sed 's/^[a-zA-Z0-9]/MPIobj\/&/g' >> Make.dep
263     $(RM) Make.temp
264    
265     tags : $(C_CXX_SRCS)
266     ctags $(C_CXX_SRCS)
267    
268     dummy :
269    
270     # DO NOT DELETE
271     include Make.dep