ViewVC Help
View File | Revision Log | Show Annotations | View Changeset | Root Listing
root/group/trunk/OOPSE/libBASS/Makefile.in
Revision: 957
Committed: Mon Jan 19 16:08:21 2004 UTC (20 years, 5 months ago) by gezelter
File size: 4164 byte(s)
Log Message:
BASS changes to add RigidBodies and LJrcut

File Contents

# User Rev Content
1 gezelter 747 #####################################################
2     # Makefile for libBASS (bundled with OOPSE) #
3     #####################################################
4     # You should not change anything here. #
5     #####################################################
6    
7     .SUFFIXES : .c .cpp .l .y .hpp .h $(O)
8    
9     # Extension of object files
10     O=@OBJEXT@
11    
12     # Extension of executables
13     EXE=@EXEEXT@
14    
15     # Bourn shell
16     SHELL=/bin/sh
17    
18     # Path prefix for installation links
19     PREFIX=@prefix@
20    
21     # Location of the oopse home
22     OOPSE_HOME=@OOPSE_HOME@
23    
24     FORCE_PARAM_DIR=@OOPSE_HOME@/share/forceFields/
25     SAMPLE_SIM_DIR=@OOPSE_HOME@/share/samples/
26    
27     # MPICH include path
28     MPI_INC=@MPI_INC@
29    
30     # Location of yacc (or its substitution)
31     YACC=@YACC@
32    
33     #location of lex
34     LEX=@LEX@
35    
36     # C compiler
37     CC=@CC@
38    
39     # C++ compiler
40    
41     CXX=@CXX@
42    
43     # ar
44     AR=@AR@
45    
46     # ranlib
47     RANLIB=@RANLIB@
48    
49     # rm
50     RM=rm -f
51    
52     # soft link
53     LN_S=@LN_S@
54    
55     # BSD install
56     INSTALL=@INSTALL@
57     INSTALL_PROGRAM=@INSTALL_PROGRAM@
58     INSTALL_DATA=@INSTALL_DATA@
59     MKINSTALLDIRS=@MKINSTALLDIRS@
60    
61     # CPP flags
62     CPPFLAGS_C=@CPPFLAGS@
63    
64     # C flags
65     CFLAGS_C=@CFLAGS@
66    
67     # C++ flags
68     CXXFLAGS_C=@CXXFLAGS@
69    
70 gezelter 840 # C++ template flags
71 mmeineke 846 OOPSE_TEMPLATE_FLAGS=@OOPSE_TEMPLATE_FLAGS@
72 gezelter 840
73 mmeineke 846 # C++ namespace flags
74     EXTRA_CC_FLAG=@EXTRA_CC_FLAG@
75    
76    
77 gezelter 747 #######################################################################
78    
79     # First do compile-time flags:
80    
81     MPI_DECLARES= -DIS_MPI
82    
83     # include paths starting with "." are all relative to the SUBDIRS!!!
84    
85     INCLUDES= -I..
86     MPI_INCLUDES= -I$(MPI_INC)
87    
88     CFLAGS=$(CFLAGS_C) $(INCLUDES) $(DECLARES)
89 mmeineke 846 CXXFLAGS=$(CXXFLAGS_C) $(OOPSE_TEMPLATE_FLAGS) $(EXTRA_CC_FLAG) $(INCLUDES) $(DECLARES)
90 gezelter 747 DEPFLAGS=$(CFLAGS_C)
91    
92     MPI_CFLAGS=$(CFLAGS) $(MPI_INCLUDES) $(MPI_DECLARES)
93     MPI_CXXFLAGS=$(CXXFLAGS) $(MPI_INCLUDES) $(MPI_DECLARES)
94    
95     # Then do the compile rules:
96    
97 gezelter 828 SRC_DIR := ..
98 gezelter 747
99     obj/%.o: %.cpp
100     cd obj; $(CXX) $(CXXFLAGS) -c $(SRC_DIR)/$<
101    
102     MPIobj/%.o: %.cpp
103     cd MPIobj; $(CXX) $(MPI_CXXFLAGS) -c $(SRC_DIR)/$<
104    
105     obj/%.o: %.c
106     cd obj; $(CC) $(CFLAGS) -c $(SRC_DIR)/$<
107    
108     MPIobj/%.o: %.c
109     cd MPIobj; $(CC) $(MPI_CFLAGS) -c $(SRC_DIR)/$<
110    
111     # Then list what we have to compile
112    
113     C_FILES = \
114     $(DIR)/BASS_parse.c \
115     $(DIR)/interface.c \
116     $(DIR)/make_nodes.c \
117     $(DIR)/mpiBASS.c \
118     $(DIR)/parse_tree.c \
119     $(DIR)/simError.c \
120     $(DIR)/BASSyacc.c \
121     $(DIR)/BASSlex.c
122    
123     CXX_FILES = \
124     $(DIR)/AtomStamp.cpp \
125     $(DIR)/BASS_interface.cpp \
126     $(DIR)/BendStamp.cpp \
127     $(DIR)/BondStamp.cpp \
128     $(DIR)/Component.cpp \
129     $(DIR)/Globals.cpp \
130     $(DIR)/LinkedAssign.cpp \
131     $(DIR)/LinkedCommand.cpp \
132     $(DIR)/MakeStamps.cpp \
133     $(DIR)/MoleculeStamp.cpp \
134 gezelter 957 $(DIR)/RigidBodyStamp.cpp \
135 gezelter 747 $(DIR)/TorsionStamp.cpp \
136     $(DIR)/ZconStamp.cpp
137    
138     DIR:=.
139     C_SRCS := $(C_FILES)
140     CXX_SRCS := $(CXX_FILES)
141     SRCS := $(C_SRCS) $(CXX_SRCS)
142    
143     DIR:=obj
144     C_OBJS := $(C_FILES:.c=.o)
145     CXX_OBJS := $(CXX_FILES:.cpp=.o)
146     OBJS := $(C_OBJS) $(CXX_OBJS)
147    
148     DIR:=MPIobj
149     C_MPIOBJS := $(C_FILES:.c=.o)
150     CXX_MPIOBJS := $(CXX_FILES:.cpp=.o)
151     MPIOBJS := $(C_MPIOBJS) $(CXX_MPIOBJS)
152    
153     LIBSUBDIRS = \
154     obj \
155     MPIobj
156    
157     # Possible make targets:
158    
159     all: libBASS.a libBASS_MPI.a
160    
161     libBASS.a: BASSyacc.h $(OBJS)
162     $(RM) $@
163     $(AR) cr $@ $(OBJS)
164     $(RANLIB) $@
165    
166     libBASS_MPI.a: BASSyacc.h $(MPIOBJS)
167     $(RM) $@
168     $(AR) cr $@ $(MPIOBJS)
169     $(RANLIB) $@
170    
171     BASSyacc.h: BASSyacc.y
172     $(YACC) -d $? && mv y.tab.h $@
173    
174     BASSyacc.c: BASSyacc.y
175     $(YACC) -d $? && mv y.tab.c $@
176    
177     BASSlex.c: BASSlex.l
178     $(LEX) -o$@ $?
179    
180     .PHONY : clean
181    
182     clean : dummy
183     for i in $(LIBSUBDIRS); do \
184     (cd $$i; $(RM) *.o) || exit 1; \
185     done
186     $(RM) libBASS.a libBASS_MPI.a *.o *~ Make.temp
187     $(RM) BASSyacc.h BASSyacc.c BASSlex.c
188    
189     distclean : dummy
190     for i in $(LIBSUBDIRS); do \
191     (cd $$i; $(RM) *.o) || exit 1; \
192     done
193 gezelter 785 $(RM) libBASS.a libBASS_MPI.a *.o *~ Make.temp
194 gezelter 747 $(RM) BASSyacc.h BASSyacc.c BASSlex.c
195    
196     Make.dep : $(C_SRCS) $(CXX_SRCS) BASSyacc.h BASSyacc.c BASSlex.c
197     echo "# DO NOT DELETE THIS LINE - used by make depend" > Make.dep
198     $(CC) $(DEPFLAGS) -MM $(C_SRCS) \
199     | sed 's/\.o:/\$$(O)\ :/g' > Make.temp
200     $(CXX) $(DEPFLAGS) -MM $(CXX_SRCS) \
201     | sed 's/\.o:/\$$(O)\ :/g' >> Make.temp
202     cat Make.temp | sed 's/^[a-zA-Z0-9]/obj\/&/g' >> Make.dep
203     cat Make.temp | sed 's/^[a-zA-Z0-9]/MPIobj\/&/g' >> Make.dep
204     $(RM) Make.temp
205    
206     depend : Make.dep
207    
208     install : dummy
209    
210     links : dummy
211    
212     tests : dummy
213    
214     dummy :