ViewVC Help
View File | Revision Log | Show Annotations | View Changeset | Root Listing
root/group/trunk/OOPSE-1.0/utils/sysbuilder/Makefile.in
Revision: 1359
Committed: Tue Jul 20 17:07:01 2004 UTC (20 years ago) by gezelter
File size: 6449 byte(s)
Log Message:
*** empty log message ***

File Contents

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