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

# Content
1 #####################################################
2 # Makefile for SHAPES #
3 #####################################################
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 # Location of the shapes home
23 SHAPES_HOME=/usr/local/shapes
24 VDW_PARAM_DIR=/usr/local/shapes/share/vdwFiles
25
26 # C compiler
27 CC=icc
28
29 # C++ compiler
30 CXX=icpc
31
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 INSTALL=@INSTALL@
46 INSTALL_PROGRAM=@INSTALL_PROGRAM@
47 INSTALL_DATA=@INSTALL_DATA@
48 MKINSTALLDIRS=@MKINSTALLDIRS@
49
50 # fftw library and include files
51 FFTWINC = -I/usr/local/include
52 FFTWLIB = -L/usr/local/lib/ -lfftw3
53
54 # CPP flags
55 CPPFLAGS=
56
57 # C flags
58 CFLAGS_C= -O3
59
60 # C++ flags
61 CXXFLAGS_C= -O3
62
63 # LDFLAGS
64 LDFLAGS=
65
66 # First do compile-time flags:
67
68 DECLARE=-DVDW_PATH="$(VDW_PARAM_DIR)"
69
70 # include paths starting with "." are all relative to the SUBDIRS!!!
71
72 INCLUDES= -I.. $(FFTWINC)
73
74 CFLAGS=$(CFLAGS_C) $(INCLUDES) $(DECLARE)
75 CXXFLAGS=$(CXXFLAGS_C) $(INCLUDES) $(DECLARE)
76 DEPFLAGS=$(CFLAGS_C) $(INCLUDES) -I.
77
78 SRC_DIR := ..
79
80 SHAPER=shaper$(EXE)
81 VISUALIZER=visualizer$(EXE)
82 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 SHAPER_C_FILES = \
95 $(DIR)/shaperCmd.c \
96 $(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
105 VISUALIZER_C_FILES = \
106 $(DIR)/visualizerCmd.c
107
108 SHAPER_CXX_FILES = \
109 $(DIR)/shaper.cpp \
110 $(DIR)/PDBReader.cpp \
111 $(DIR)/RigidBody.cpp \
112 $(DIR)/VDWAtom.cpp \
113 $(DIR)/GridBuilder.cpp \
114 $(DIR)/SphereHarm.cpp
115
116 VISUALIZER_CXX_FILES = \
117 $(DIR)/SHFunc.cpp \
118 $(DIR)/SHAPE.cpp \
119 $(DIR)/visualizer.cpp
120
121 VDW_FILES= \
122 amber99.vdw \
123 charmm27.vdw \
124 gaff.vdw \
125 LJ.vdw \
126 oplsaal.vdw
127
128 DIR:=.
129 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
136 DIR:=obj
137 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
144 SUBDIRS = obj
145
146 # Possible make targets:
147
148 all: shaper visualizer
149
150 shaper$(EXE) : $(SHAPER_OBJS)
151 $(CXX) $(CFLAGS) $(SHAPER_OBJS) -o $@ $(LDFLAGS) $(LDADD) $(FFTWLIB)
152
153 visualizer$(EXE) : $(VISUALIZER_OBJS)
154 $(CXX) $(CFLAGS) $(VISUALIZER_OBJS) -o $@ $(LDFLAGS) $(LDADD)
155
156 install : $(SHAPER) $(VISUALIZER)
157 $(MKINSTALLDIRS) $(SHAPES_HOME)/bin
158 $(INSTALL_PROGRAM) -s $(SHAPER) $(SHAPES_HOME)/bin/$(SHAPER)
159 $(INSTALL_PROGRAM) -s $(VISUALIZER) $(SHAPES_HOME)/bin/$(VISUALIZER)
160 $(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
166
167 .PHONY : clean
168
169 clean : dummy
170 for i in $(SUBDIRS); do \
171 (cd $$i; $(RM) *.o *.mod) || exit 1; \
172 done
173 $(RM) shaper visualizer *.o *.mod *~ Make.temp
174
175 distclean : dummy
176 for i in $(SUBDIRS); do \
177 (cd $$i; $(RM) *.o *.mod) || exit 1; \
178 done
179 $(RM) shaper visualizer *.o *.mod *~ Make.temp
180
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 $(CC) $(DEPFLAGS) -MM $(SHAPER_C_SRCS) $(VISUALIZER_C_SRCS) \
187 | sed 's/\.o:/\$$(O)\ :/g' > Make.temp
188 $(CXX) $(DEPFLAGS) -MM $(SHAPER_CXX_SRCS) $(VISUALIZER_CXX_SRCS) \
189 | sed 's/\.o:/\$$(O)\ :/g' >> Make.temp
190 cat Make.temp | sed 's/^[a-zA-Z0-9]/obj\/&/g' >> Make.dep
191 $(RM) Make.temp
192
193 install : dummy
194
195 links : dummy
196
197 tests : dummy
198
199 dummy :
200
201 include Make.dep