ViewVC Help
View File | Revision Log | Show Annotations | View Changeset | Root Listing
root/group/trunk/SHAPES/Makefile
Revision: 1300
Committed: Thu Jun 24 19:06:47 2004 UTC (20 years ago) by gezelter
File size: 4623 byte(s)
Log Message:
Fixes for visualizer for amira

File Contents

# User Rev Content
1 gezelter 1240 #####################################################
2 gezelter 1271 # Makefile for SHAPES #
3 gezelter 1240 #####################################################
4     # You should not change anything here. #
5     #####################################################
6    
7     # No make rules by default
8     .SUFFIXES : .c .cpp .hpp .h $(O)
9    
10     # Extension of object files
11     O=.o
12    
13     # Extension of executables
14     EXE=
15    
16     # Bourn shell
17     SHELL=/bin/sh
18    
19     # Path prefix for installation links
20     PREFIX=/usr/local
21    
22 chrisfen 1287 # Location of the shapes home
23 gezelter 1271 SHAPES_HOME=/usr/local/shapes
24     VDW_PARAM_DIR=/usr/local/shapes/share/vdwFiles
25 gezelter 1240
26     # C compiler
27 gezelter 1295 CC=icc
28 gezelter 1240
29     # C++ compiler
30 gezelter 1295 CXX=icpc
31 gezelter 1240
32     # ar
33     AR=ar
34    
35     # ranlib
36     RANLIB=ranlib
37    
38     # rm
39     RM=rm -f
40    
41     # soft link
42     LN_S=ln -s
43    
44     # BSD install
45 gezelter 1271 INSTALL=@INSTALL@
46     INSTALL_PROGRAM=@INSTALL_PROGRAM@
47     INSTALL_DATA=@INSTALL_DATA@
48     MKINSTALLDIRS=@MKINSTALLDIRS@
49 gezelter 1240
50 chrisfen 1287 # fftw library and include files
51     FFTWINC = -I/usr/local/include
52     FFTWLIB = -L/usr/local/lib/ -lfftw3
53    
54 gezelter 1240 # CPP flags
55     CPPFLAGS=
56    
57     # C flags
58 gezelter 1300 CFLAGS_C= -O3
59 gezelter 1240
60     # C++ flags
61 chrisfen 1287 CXXFLAGS_C= -O3
62 gezelter 1240
63     # LDFLAGS
64 gezelter 1271 LDFLAGS=
65 gezelter 1240
66     # First do compile-time flags:
67    
68 gezelter 1271 DECLARE=-DVDW_PATH="$(VDW_PARAM_DIR)"
69 gezelter 1240
70     # include paths starting with "." are all relative to the SUBDIRS!!!
71    
72 chrisfen 1287 INCLUDES= -I.. $(FFTWINC)
73 gezelter 1240
74 chrisfen 1287 CFLAGS=$(CFLAGS_C) $(INCLUDES) $(DECLARE)
75     CXXFLAGS=$(CXXFLAGS_C) $(INCLUDES) $(DECLARE)
76 gezelter 1295 DEPFLAGS=$(CFLAGS_C) $(INCLUDES) -I.
77 gezelter 1240
78     SRC_DIR := ..
79    
80 gezelter 1295 SHAPER=shaper$(EXE)
81     VISUALIZER=visualizer$(EXE)
82 gezelter 1240 LDADD=-lz
83    
84     # Then do the compile rules:
85    
86     obj/%.o: %.cpp
87     cd obj; $(CXX) $(CXXFLAGS) -c $(SRC_DIR)/$<
88    
89     obj/%.o: %.c
90     cd obj; $(CC) $(CFLAGS) -c $(SRC_DIR)/$<
91    
92     # Then list what we have to compile
93     #
94 gezelter 1295 SHAPER_C_FILES = \
95     $(DIR)/shaperCmd.c \
96 chrisfen 1287 $(DIR)/MatVec3.c \
97     $(DIR)/cospmls.c \
98     $(DIR)/makeweights.c \
99     $(DIR)/naive_synthesis.c \
100     $(DIR)/pmls.c \
101     $(DIR)/primitive.c \
102     $(DIR)/seminaive.c \
103     $(DIR)/FST_semi_memo.c
104 gezelter 1240
105 gezelter 1295 VISUALIZER_C_FILES = \
106     $(DIR)/visualizerCmd.c
107    
108     SHAPER_CXX_FILES = \
109     $(DIR)/shaper.cpp \
110 gezelter 1240 $(DIR)/PDBReader.cpp \
111 gezelter 1271 $(DIR)/RigidBody.cpp \
112 chrisfen 1276 $(DIR)/VDWAtom.cpp \
113 chrisfen 1287 $(DIR)/GridBuilder.cpp \
114 gezelter 1295 $(DIR)/SphereHarm.cpp
115 gezelter 1240
116 gezelter 1295 VISUALIZER_CXX_FILES = \
117     $(DIR)/SHFunc.cpp \
118     $(DIR)/SHAPE.cpp \
119     $(DIR)/visualizer.cpp
120    
121 gezelter 1271 VDW_FILES= \
122     amber99.vdw \
123     charmm27.vdw \
124     gaff.vdw \
125     LJ.vdw \
126     oplsaal.vdw
127    
128 gezelter 1240 DIR:=.
129 gezelter 1295 SHAPER_C_SRCS := $(SHAPER_C_FILES)
130     SHAPER_CXX_SRCS := $(SHAPER_CXX_FILES)
131     SHAPER_SRCS := $(SHAPER_C_SRCS) $(SHAPER_CXX_SRCS)
132     VISUALIZER_C_SRCS := $(VISUALIZER_C_FILES)
133     VISUALIZER_CXX_SRCS := $(VISUALIZER_CXX_FILES)
134     VISUALIZER_SRCS := $(VISUALIZER_C_SRCS) $(VISUALIZER_CXX_SRCS)
135 gezelter 1240
136     DIR:=obj
137 gezelter 1295 SHAPER_C_OBJS := $(SHAPER_C_FILES:.c=.o)
138     SHAPER_CXX_OBJS := $(SHAPER_CXX_FILES:.cpp=.o)
139     SHAPER_OBJS := $(SHAPER_C_OBJS) $(SHAPER_CXX_OBJS)
140     VISUALIZER_C_OBJS := $(VISUALIZER_C_FILES:.c=.o)
141     VISUALIZER_CXX_OBJS := $(VISUALIZER_CXX_FILES:.cpp=.o)
142     VISUALIZER_OBJS := $(VISUALIZER_C_OBJS) $(VISUALIZER_CXX_OBJS)
143 gezelter 1240
144 gezelter 1271 SUBDIRS = obj
145 gezelter 1240
146     # Possible make targets:
147    
148 gezelter 1295 all: shaper visualizer
149 gezelter 1240
150 gezelter 1295 shaper$(EXE) : $(SHAPER_OBJS)
151     $(CXX) $(CFLAGS) $(SHAPER_OBJS) -o $@ $(LDFLAGS) $(LDADD) $(FFTWLIB)
152 gezelter 1240
153 gezelter 1295 visualizer$(EXE) : $(VISUALIZER_OBJS)
154     $(CXX) $(CFLAGS) $(VISUALIZER_OBJS) -o $@ $(LDFLAGS) $(LDADD)
155    
156     install : $(SHAPER) $(VISUALIZER)
157 gezelter 1271 $(MKINSTALLDIRS) $(SHAPES_HOME)/bin
158 gezelter 1295 $(INSTALL_PROGRAM) -s $(SHAPER) $(SHAPES_HOME)/bin/$(SHAPER)
159     $(INSTALL_PROGRAM) -s $(VISUALIZER) $(SHAPES_HOME)/bin/$(VISUALIZER)
160 gezelter 1271 $(MKINSTALLDIRS) $(VDW_PARAM_DIR)
161     for i in $(VDW_FILES); do \
162     echo "Installing $$i in $(VDW_PARAM_DIR)\n"; \
163     $(INSTALL_DATA) $$i $(VDW_PARAM_DIR)/$$i; \
164     done
165 gezelter 1240
166    
167     .PHONY : clean
168    
169     clean : dummy
170 gezelter 1273 for i in $(SUBDIRS); do \
171 gezelter 1240 (cd $$i; $(RM) *.o *.mod) || exit 1; \
172     done
173 gezelter 1295 $(RM) shaper visualizer *.o *.mod *~ Make.temp
174 gezelter 1240
175     distclean : dummy
176 gezelter 1273 for i in $(SUBDIRS); do \
177 gezelter 1240 (cd $$i; $(RM) *.o *.mod) || exit 1; \
178     done
179 gezelter 1295 $(RM) shaper visualizer *.o *.mod *~ Make.temp
180 gezelter 1240
181     depend : Make.dep
182    
183     Make.dep :
184     echo "Only C dependencies are made automagically!"
185     echo "# DO NOT DELETE THIS LINE - used by make depend" > Make.dep
186 gezelter 1295 $(CC) $(DEPFLAGS) -MM $(SHAPER_C_SRCS) $(VISUALIZER_C_SRCS) \
187 gezelter 1240 | sed 's/\.o:/\$$(O)\ :/g' > Make.temp
188 gezelter 1295 $(CXX) $(DEPFLAGS) -MM $(SHAPER_CXX_SRCS) $(VISUALIZER_CXX_SRCS) \
189 gezelter 1240 | sed 's/\.o:/\$$(O)\ :/g' >> Make.temp
190     cat Make.temp | sed 's/^[a-zA-Z0-9]/obj\/&/g' >> Make.dep
191 gezelter 1273 $(RM) Make.temp
192 gezelter 1240
193     install : dummy
194    
195     links : dummy
196    
197     tests : dummy
198    
199     dummy :
200    
201     include Make.dep