source: trunk/vizservers/nanovis/Makefile.in @ 940

Last change on this file since 940 was 940, checked in by gah, 17 years ago

More Makefile cleanup

File size: 7.5 KB
Line 
1
2SHELL = /bin/sh
3
4#.SUFFIX:
5#SUFFIX: .c .o .cpp
6
7.PHONY: all install clean distclean
8
9bindir          = @bindir@
10datadir         = @datarootdir@
11exec_prefix     = @exec_prefix@
12includedir      = @includedir@
13libdir          = @libdir@
14mandir          = @mandir@
15prefix          = @prefix@
16srcdir          = @srcdir@
17
18VPATH           = $(srcdir)
19
20INSTALL         = @INSTALL@
21#Why are these files installed owner writable?
22INSTALL_PROGRAM = ${INSTALL} -m 555
23INSTALL_DATA    = ${INSTALL} -m 444
24INSTALL_SCRIPT  = ${INSTALL} -m 444
25RM              = rm -f
26
27AUXSRC          = config.h define.h global.h
28
29DX_DIR          = /usr/lib/dx
30DX_INC_SPEC     = -I$(DX_DIR)/include
31DX_LIB_SPEC     = -L$(DX_DIR)/lib_linux -lDXcallm -lm
32GL_INC_SPEC     = -I/usr/include/GL
33GL_LIB_SPEC     = -lGL -lglut -lglui -lGLEW -lCg -lCgGL -lpthread
34IMG_DIR         = ./imgLoaders
35IMG_INC_SPEC    = -I$(srcdir)/$(IMG_DIR)
36IMG_LIB         = $(IMG_DIR)/ImageLoaders.a
37IMG_LIB_SPEC    = $(IMG_LIB)
38MAT_DIR         = ./newmat11
39MAT_INC_SPEC    = -I$(srcdir)/$(MAT_DIR)
40MAT_LIB         = $(MAT_DIR)/newmat11.a
41MAT_LIB_SPEC    = $(MAT_LIB)
42R2_DIR          = ./R2
43R2_INC_SPEC     = -I$(srcdir)/$(R2_DIR)/include
44R2_LIB          = $(R2_DIR)/src/R2.a
45R2_LIB_SPEC     = $(R2_LIB)
46
47RP_DIR          =  @RP_DIR@
48RP_INC_SPEC     = -I$(RP_DIR)/include -I$(RP_DIR)/include/rappture2
49RP_LIB_SPEC     = -L$(RP_DIR)/lib -lrappture2 -lb64 -lz
50
51TF_DIR          = ./transfer-function
52TF_INC_SPEC     = -I$(TF_DIR)
53TF_LIB          = $(TF_DIR)/transfer-function.a
54TF_LIB_SPEC     = $(TF_LIB)
55
56LIBS            = \
57                $(RP_LIB_SPEC) \
58                $(DX_LIB_SPEC) \
59                $(IMG_LIB_SPEC) \
60                $(R2_LIB_SPEC) \
61                $(TF_LIB_SPEC) \
62                $(MAT_LIB_SPEC) \
63                -ltcl8.4 \
64                $(GL_LIB_SPEC)
65
66INCLUDES        = \
67                -I$(srcdir) \
68                $(RP_INC_SPEC) \
69                $(GL_INC_SPEC) \
70                $(R2_INC_SPEC) \
71                $(IMG_INC_SPEC) \
72                $(MAT_INC_SPEC)
73
74CC              = @CC@
75CFLAGS          = @CFLAGS@
76EXTRA_CFLAGS    = -Wall
77DEFINES         = @DEFINES@
78CC_SWITCHES     = $(CFLAGS) $(EXTRA_CFLAGS) $(INCLUDES)
79
80OBJS            = \
81                Axis.o \
82                BucketSort.o \
83                Chain.o \
84                CmdProc.o \
85                Color.o \
86                Command.o \
87                ContourLineFilter.o \
88                ConvexPolygon.o \
89                Event.o \
90                GradientFilter.o \
91                Grid.o \
92                HeightMap.o \
93                Mat4x4.o \
94                Nv.o \
95                NvCamera.o \
96                NvColorTableRenderer.o \
97                NvColorTableShader.o \
98                NvDefaultTFData.o \
99                NvEventLog.o \
100                NvLIC.o \
101                NvLoadFile.o \
102                NvParticleAdvectionShader.o \
103                NvParticleRenderer.o \
104                NvRegularVolumeShader.o \
105                NvShader.o \
106                NvStdVertexShader.o \
107                NvVolumeShader.o \
108                NvZincBlendeReconstructor.o \
109                NvZincBlendeVolumeShader.o \
110                PCASplit.o \
111                PerfQuery.o \
112                Plane.o \
113                PlaneRenderer.o \
114                PointSet.o \
115                PointSetRenderer.o \
116                PointShader.o \
117                RenderContext.o \
118                RenderVertexArray.o \
119                Renderable.o \
120                RpDX.o \
121                ScreenSnapper.o \
122                Sphere.o \
123                Texture1D.o \
124                Texture2D.o \
125                Texture3D.o \
126                Trace.o \
127                TransferFunction.o \
128                Util.o \
129                Vector3.o \
130                Vector4.o \
131                Volume.o \
132                VolumeInterpolator.o \
133                VolumeRenderer.o \
134                ZincBlendeVolume.o \
135                dxReader.o \
136                dxReader2.o \
137                dxReaderCommon.o \
138                nanovis.o
139
140resources       = \
141                $(srcdir)/resources/Font.bmp \
142                $(srcdir)/resources/particle2.bmp \
143                $(srcdir)/resources/verdana.fnt \
144                $(srcdir)/resources/verdana_bold.fnt
145
146shaders         = \
147                $(srcdir)/shaders/common.cg \
148                $(srcdir)/shaders/copy_texcoord.cg \
149                $(srcdir)/shaders/heightcolor.cg \
150                $(srcdir)/shaders/one_plane.cg \
151                $(srcdir)/shaders/one_volume.cg \
152                $(srcdir)/shaders/passthru.cg \
153                $(srcdir)/shaders/pointsvp.cg \
154                $(srcdir)/shaders/render_vel.cg \
155                $(srcdir)/shaders/update_pos.cg \
156                $(srcdir)/shaders/update_pos_vel.cg \
157                $(srcdir)/shaders/update_vel.cg \
158                $(srcdir)/shaders/vertex_std.cg \
159                $(srcdir)/shaders/volqd_volume.cg \
160                $(srcdir)/shaders/zincblende_volume.cg
161
162all: nanovis
163
164install: install-nanovis install-resources install-shaders
165
166$(MAT_LIB):
167        $(MAKE) -C $(MAT_DIR) all
168
169$(R2_LIB):
170        $(MAKE) -C $(R2_DIR)/src all
171
172$(IMG_LIB):
173        $(MAKE) -C $(IMG_DIR) all
174
175$(TF_LIB):
176        $(MAKE) -C $(TF_DIR) all
177
178nanovis: $(MAT_LIB) $(R2_LIB) $(IMG_LIB) $(TF_LIB) $(OBJS)
179        $(CC) $(CC_SWITCHES) -o $@ $^ $(LIBS)
180
181.cpp.o:
182        $(CC) $(CC_SWITCHES) -o $@ -c $<
183
184dxReader2.o: $(srcdir)/dxReader2.cpp
185        $(CC) -c $(CC_SWITCHES) $(DX_INC_SPEC) $?
186RpDX.o: $(srcdir)/RpDX.cpp
187        $(CC) -c $(CC_SWITCHES) $(DX_INC_SPEC) $?
188
189client: Socket.o ClientSocket.o RenderClient.o Event.o
190        $(CC) $(CC_SWITCHES) -o $@ $^ $(LIBS)
191
192Socket.o: socket/Socket.cpp socket/Socket.h
193        $(CC) $(CC_SWITCHES) -o $@ -c $<
194ClientSocket.o: socket/ClientSocket.cpp socket/ClientSocket.h
195        $(CC) $(CC_SWITCHES) -o $@ -c $<
196RenderClient.o: socket/RenderClient.cpp socket/RenderClient.h
197        $(CC) $(CC_SWITCHES) -o $@ -c $<
198
199install-resources:
200        mkdir -p $(libdir)/resources
201        @for i in $(resources) ; do \
202            echo "installing $$i..." ; \
203            $(INSTALL_DATA) -m 0444 $$i $(libdir)/resources ; \
204        done
205
206install-shaders:
207        mkdir -p $(libdir)/shaders
208        @for i in $(shaders) ; do \
209            echo "installing $$i..." ; \
210            $(INSTALL_DATA) -m 0444 $$i $(libdir)/shaders ; \
211        done
212
213install-nanovis: nanovis
214        $(INSTALL) -m 0555 nanovis $(bindir)/nanovis
215
216# Only do what's necessary: These items assume an already installed version
217# of rappture. We won't install them.
218#       $(INSTALL_PROGRAM) $(RP_DIR)/bin/voronoi $(bindir)/voronoi
219#       $(INSTALL_DATA) $(RP_DIR)/lib/librappture2.so $(libdir)/librappture2.so
220#       $(INSTALL_DATA) $(RP_DIR)/lib/libz.so $(libdir)/libz.so
221#       $(INSTALL_DATA) $(RP_DIR)/lib/libb64.so $(libdir)/libb64.so
222
223
224clean:
225        $(MAKE) -C $(MAT_DIR) clean
226        $(MAKE) -C $(R2_DIR)/src clean
227        $(MAKE) -C $(IMG_DIR) clean
228        $(MAKE) -C $(TF_DIR) clean
229        $(RM) nanovis client $(OBJS)
230
231distclean: clean
232        $(RM) Makefile *~
233
234NvStdVertexShader.o: NvStdVertexShader.cpp NvStdVertexShader.h
235ContourLineFilter.o: ContourLineFilter.cpp ContourLineFilter.h
236HeightMap.o: HeightMap.cpp HeightMap.h
237Grid.o: Grid.cpp Grid.h
238NvLoadFile.o: NvLoadFile.cpp NvLoadFile.h
239NvParticleAdvectionShader.o: NvParticleAdvectionShader.cpp NvParticleAdvectionShader.h
240NvParticleRenderer.o: NvParticleRenderer.cpp NvParticleRenderer.h
241NvColorTableShader.o: NvColorTableShader.cpp NvColorTableShader.h
242NvLIC.o: NvLIC.cpp NvLIC.h
243NvColorTableRenderer.o: NvColorTableRenderer.cpp NvColorTableRenderer.h
244NvEventLog.o: NvEventLog.cpp NvEventLog.h
245NvShader.o: NvShader.cpp NvShader.h
246NvVolumeShader.o: NvVolumeShader.cpp NvVolumeShader.h
247NvDefaultTFData.o: NvDefaultTFData.cpp
248NvRegularVolumeShader.o: NvRegularVolumeShader.cpp NvRegularVolumeShader.h
249NvZincBlendeVolumeShader.o: NvZincBlendeVolumeShader.cpp NvZincBlendeVolumeShader.h
250RenderVertexArray.o: RenderVertexArray.cpp RenderVertexArray.h
251Color.o: Color.cpp Color.h
252Event.o: Event.cpp Event.h
253Sphere.o: Sphere.cpp Sphere.h
254TransferFunction.o: TransferFunction.cpp
255Texture1D.o: Texture1D.cpp Texture1D.h
256Texture2D.o: Texture2D.cpp Texture2D.h $(AUXSRC)
257Texture3D.o: Texture3D.cpp Texture3D.h $(AUXSRC)
258Renderable.o: Renderable.cpp Renderable.h
259NvCamera.o: NvCamera.cpp NvCamera.h
260ScreenSnapper.o: ScreenSnapper.cpp ScreenSnapper.h define.h
261Volume.o: Volume.cpp Volume.h $(AUXSRC)
262ZincBlendeVolume.o: ZincBlendeVolume.cpp ZincBlendeVolume.h $(AUXSRC)
263VolumeRenderer.o: VolumeRenderer.cpp VolumeRenderer.h
264PlaneRenderer.o: PlaneRenderer.cpp PlaneRenderer.h
265Mat4x4.o: Mat4x4.cpp Mat4x4.h
266Vector4.o: Vector4.cpp Vector4.h
267Vector3.o: Vector3.cpp Vector3.h
268Plane.o: Plane.cpp Plane.h
269ConvexPolygon.o: ConvexPolygon.cpp ConvexPolygon.h
270PerfQuery.o: PerfQuery.cpp PerfQuery.h
271PointShader.o: PointShader.cpp PointShader.h
272PCASplit.o: PCASplit.cpp PCASplit.h
273BucketSort.o: BucketSort.cpp BucketSort.h
274PointSetRenderer.o: PointSetRenderer.cpp PointSetRenderer.h
275PointSet.o: PointSet.cpp PointSet.h
276RenderContext.o: RenderContext.cpp RenderContext.h
277VolumeInterpolator.o: VolumeInterpolator.cpp VolumeInterpolator.h
278GradientFilter.o: GradientFilter.cpp GradientFilter.h
279
280Util.o: Util.cpp Util.h
281Command.o: Command.cpp Command.h
282Trace.o: Trace.cpp Trace.h
283
284nanovis.o: nanovis.cpp nanovis.h $(AUXSRC)
Note: See TracBrowser for help on using the repository browser.