ViewVC Help
View File | Revision Log | Show Annotations | View Changeset | Root Listing
root/group/trunk/OOPSE/utils/sysbuilder/Makefile.in
Revision: 747
Committed: Fri Sep 5 21:28:52 2003 UTC (20 years, 9 months ago) by gezelter
File size: 4908 byte(s)
Log Message:
Changes to autoconf / configure method of configuring OOPSE

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_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 FLIBS_EXTRA = @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 MPI_DECLARES= -DIS_MPI
112
113 # include paths starting with "." are all relative to the SUBDIRS!!!
114
115 INCLUDES= -I.. -I../../../libBASS -I../../../libmdtools
116 MPI_INCLUDES= $(MPI_INC) $(MPI_INC)/mpi2c++
117 CFLAGS=$(CFLAGS_C) $(INCLUDES) $(DECLARES)
118 CXXFLAGS=$(CXXFLAGS_C) $(INCLUDES) $(DECLARES)
119 DEPFLAGS=$(CFLAGS_C) -I. $(SPRNG_INC) $(MPI_INCLUDES) -I../../libBASS -I../../libmdtools
120 MPI_CXXFLAGS=$(CXXFLAGS) $(MPI_INCLUDES) $(MPI_DECLARES)
121
122
123 SYSBUILD=sysBuild$(EXE)
124
125 BASS_LIB=$(TOP)/libBASS/libBASS.a
126 BASS_MPI_LIB=$(TOP)/libBASS/libBASS_MPI.a
127 MD_LIB=$(TOP)/libmdtools/libmdtools.a
128 MD_MPI_LIB=$(TOP)/libmdtools/libmdtools_MPI.a
129 LIBS=$(BASS_LIB) $(MD_LIB)
130 MPI_LIBS=$(BASS_MPI_LIB) $(MD_MPI_LIB)
131
132 SYSBUILD_LDFLAGS=-L$(TOP)/libBASS -L$(TOP)/libmdtools -L$(SPRNG_LIBDIR)
133 SYSBUILD_LDADD=-lmdtools -lBASS $(SPRNG_LIB) $(FLIBS) $(FLIBS_EXTRA)
134
135 SRC_DIR := $(PWD)
136
137 PREFS=-DOOPSE_HOME=\"$(OOPSE_HOME)\"
138
139 obj/%.o: %.cpp
140 cd obj; $(CXX) $(CXXFLAGS) -c $(SRC_DIR)/$<
141
142 MPIobj/%.o: %.cpp
143 cd MPIobj; $(CXX) $(MPI_CXXFLAGS) -c $(SRC_DIR)/$<
144
145 obj/%.o: %.c
146 cd obj; $(CC) $(CFLAGS) -c $(SRC_DIR)/$<
147
148 MPIobj/%.o: %.c
149 cd MPIobj; $(CC) $(MPI_CFLAGS) -c $(SRC_DIR)/$<
150
151 # sysBuilder files
152
153 SYSBUILD_C_FILES = $(DIR)/cmdline.c
154 SYSBUILD_CXX_FILES = \
155 $(DIR)/sysBuild.cpp \
156 $(DIR)/bilayerSys.cpp \
157 $(DIR)/MoLocator.cpp \
158 $(DIR)/latticeBuilder.cpp \
159 $(DIR)/nanoBuilder.cpp
160
161 # the sources
162
163 DIR:=.
164
165 SYSBUILD_C_SRCS := $(SYSBUILD_C_FILES)
166 SYSBUILD_CXX_SRCS := $(SYSBUILD_CXX_FILES)
167 SYSBUILD_SRCS := $(SYSBUILD_C_SRCS) $(SYSBUILD_CXX_SRCS)
168
169 C_CXX_SRCS := $(SYSBUILD_C_SRCS) $(SYSBUILD_CXX_SRCS)
170
171 #the objects
172
173 DIR:=obj
174
175 SYSBUILD_C_OBJS := $(SYSBUILD_C_FILES:.c=.o)
176 SYSBUILD_CXX_OBJS := $(SYSBUILD_CXX_FILES:.cpp=.o)
177 SYSBUILD_OBJS := $(SYSBUILD_C_OBJS) $(SYSBUILD_CXX_OBJS)
178
179 DIR:=MPIobj
180
181 SYSBUILD_C_MPIOBJS := $(SYSBUILD_C_FILES:.c=.o)
182 SYSBUILD_CXX_MPIOBJS := $(SYSBUILD_CXX_FILES:.cpp=.o)
183 SYSBUILD_MPIOBJS := $(SYSBUILD_C_MPIOBJS) $(SYSBUILD_CXX_MPIOBJS)
184
185 LIBSUBDIRS = \
186 obj \
187 MPIobj
188
189 all : $(SYSBUILD)
190
191 depend: Make.dep
192
193 sysBuild$(EXE) : $(SYSBUILD_OBJS) $(BASS_LIB) $(MD_LIB)
194 $(CXX) $(CXXFLAGS) $(SYSBUILD_OBJS) -o $@ $(SYSBUILD_LDFLAGS) $(SYSBUILD_LDADD)
195
196 install : $(SYSBUILD)
197 $(MKINSTALLDIRS) $(OOPSE_HOME)/bin
198 $(INSTALL_PROGRAM) -s $(SYSBUILD) $(OOPSE_HOME)/bin/$(SYSBUILD)
199
200
201 tests : dummy
202
203
204 $(OOPSE_HOME)/bin/$(SYSBUILD) : $(SYSBUILD)
205 $(MAKE) install
206
207 links : $(OOPSE_HOME)/bin/$(SYSBUILD)
208 $(MKINSTALLDIRS) $(PREFIX)/bin
209 cd $(PREFIX)/bin; $(LN_S) -f $(OOPSE_HOME)/bin/$(SYSBUILD) $(SYSBUILD)
210
211 clean : dummy
212 for i in $(LIBSUBDIRS); do \
213 (cd $$i; $(RM) *.o) || exit 1; \
214 done
215 $(RM) $(SYSBUILD) *.o *~ Make.temp
216
217 distclean : dummy
218 for i in $(LIBSUBDIRS); do \
219 (cd $$i; $(RM) *.o) || exit 1; \
220 done
221 $(RM) $(SYSBUILD) *.o *~ Make.temp Make.dep
222
223 devclean : distclean
224
225 Make.dep :
226 echo "# DO NOT DELETE THIS LINE - used by make depend" > Make.dep
227 $(CC) $(DEPFLAGS) -MM $(SYSBUILD_C_SRCS) \
228 | sed 's/\.o:/\$$(O)\ :/g' > Make.temp
229 $(CXX) $(DEPFLAGS) -MM $(SYSBUILD_CXX_SRCS) \
230 | sed 's/\.o:/\$$(O)\ :/g' >> Make.temp
231 cat Make.temp | sed 's/^[a-zA-Z0-9]/obj\/&/g' >> Make.dep
232 cat Make.temp | sed 's/^[a-zA-Z0-9]/MPIobj\/&/g' >> Make.dep
233 $(RM) Make.temp
234
235 tags : $(C_CXX_SRCS)
236 ctags $(C_CXX_SRCS)
237
238 dummy :
239
240 # DO NOT DELETE
241 include Make.dep