ViewVC Help
View File | Revision Log | Show Annotations | View Changeset | Root Listing
root/group/trunk/OOPSE-1.0/utils/sysbuilder/Makefile.in
Revision: 1429
Committed: Wed Jul 28 20:29:49 2004 UTC (19 years, 11 months ago) by tim
File size: 6858 byte(s)
Log Message:
simpleBuilder in progress

File Contents

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