source: nanovis/trunk/Makefile.in @ 4920

Last change on this file since 4920 was 4899, checked in by ldelgass, 9 years ago

Sync with release branch

File size: 12.8 KB
Line 
1TRACE                   = #yes
2USE_THREADS             = yes
3USE_POINTSET_RENDERER   = #yes
4USE_PARTICLE_SYSTEM     = #yes
5USE_DX_READER           = yes
6USE_VTK                 = yes
7
8SHELL = /bin/sh
9
10bindir          = @bindir@
11datadir         = @datadir@
12datarootdir     = @datarootdir@
13exec_prefix     = @exec_prefix@
14includedir      = @includedir@
15libdir          = @libdir@
16mandir          = @mandir@
17prefix          = @prefix@
18srcdir          = @srcdir@
19
20VPATH           = $(srcdir)
21
22INSTALL         = @INSTALL@
23MKDIR_P         = @MKDIR_P@
24
25#Why are these files installed owner writable?
26INSTALL_PROGRAM = ${INSTALL} -m 0555
27INSTALL_DATA    = ${INSTALL} -m 0444
28INSTALL_SCRIPT  = ${INSTALL} -m 0444
29RM              = rm -f
30
31CG_INC_SPEC     = @CG_INC_SPEC@
32CG_LIB_SPEC     = @CG_LIB_SPEC@
33
34GL_INC_SPEC     =
35GL_LIB_SPEC     = -lglut -lGLEW -lGLU -lGL
36GRAPHICS_DIR      = ./graphics
37GRAPHICS_INC_SPEC = -I$(srcdir)/$(GRAPHICS_DIR)/include
38GRAPHICS_LIB      = $(GRAPHICS_DIR)/nvgraphics.a
39GRAPHICS_LIB_SPEC = $(GRAPHICS_LIB)
40IMG_DIR         = ./imgLoaders
41IMG_INC_SPEC    = -I$(srcdir)/$(IMG_DIR)
42IMG_LIB         = $(IMG_DIR)/ImageLoaders.a
43IMG_LIB_SPEC    = $(IMG_LIB)
44MAT_DIR         = ./newmat11
45MAT_INC_SPEC    = -I$(srcdir)/$(MAT_DIR)
46MAT_LIB         = $(MAT_DIR)/newmat11.a
47MAT_LIB_SPEC    = $(MAT_LIB)
48UTIL_DIR        = ./util
49UTIL_INC_SPEC   = -I$(srcdir)/$(UTIL_DIR)
50UTIL_LIB        = $(UTIL_DIR)/nvutil.a
51UTIL_LIB_SPEC   = $(UTIL_LIB)
52VRMATH_DIR      = ./vrmath
53VRMATH_INC_SPEC = -I$(srcdir)/$(VRMATH_DIR)/include
54VRMATH_LIB      = $(VRMATH_DIR)/vrmath.a
55VRMATH_LIB_SPEC = $(VRMATH_LIB)
56
57VTK_VERSION     = @VTK_VERSION@
58VTK_LIB_DIR     = @VTK_LIB_DIR@
59VTK_INC_DIR     = @VTK_INC_DIR@
60ifdef USE_VTK
61VTK_INC_SPEC    = -I$(VTK_INC_DIR)/vtk-$(VTK_VERSION)
62VTK_LIB_SPEC    = -L$(VTK_LIB_DIR) \
63                -lvtkIOCore-$(VTK_VERSION) \
64                -lvtkIOLegacy-$(VTK_VERSION) \
65                -lvtkFiltersCore-$(VTK_VERSION) \
66                -lvtkImagingHybrid-$(VTK_VERSION) \
67                -lvtkImagingCore-$(VTK_VERSION) \
68                -lvtkCommonCore-$(VTK_VERSION) \
69                -lvtkCommonDataModel-$(VTK_VERSION) \
70                -lvtkCommonExecutionModel-$(VTK_VERSION) \
71                -lvtkCommonMisc-$(VTK_VERSION) \
72                -lvtkCommonSystem-$(VTK_VERSION) \
73                -lvtkCommonTransforms-$(VTK_VERSION) \
74                -lvtkCommonMath-$(VTK_VERSION)
75else
76VTK_INC_SPEC    =
77VTK_LIB_SPEC    =
78endif
79
80NEED_RAPPTURE2  =
81ifdef USE_DX_READER
82NEED_RAPPTURE2  = yes
83endif
84ifndef USE_VTK
85NEED_RAPPTURE2  = yes
86endif
87
88EXTRA_LIBS      = -lm -lpthread
89RP_DIR          =  @RP_DIR@
90RP_INC_SPEC     = -I$(RP_DIR)/include
91ifdef NEED_RAPPTURE2
92RP_INC_SPEC     += -I$(RP_DIR)/include/rappture2
93endif
94ifdef NEED_RAPPTURE2
95RP_LIB_SPEC     = -L$(RP_DIR)/lib -lrappture2 -lrappture -lexpat -lz
96else
97RP_LIB_SPEC     = -L$(RP_DIR)/lib -lrappture -lexpat -lz
98endif
99
100TCL_LIB_SPEC    = @TCL_LIB_SPEC@
101TCL_INC_SPEC    = @TCL_INC_SPEC@
102
103LD_RUN_PATH     = $(VTK_LIB_DIR):$(libdir):@LD_RPATH@
104
105SVN_VERSION     = $(shell svnversion $(srcdir) | sed 's/Unversioned directory/unknown/')
106STATSDIR        = @STATSDIR@
107
108LIBS            = \
109                $(RP_LIB_SPEC) \
110                $(GRAPHICS_LIB_SPEC) \
111                $(IMG_LIB_SPEC) \
112                $(MAT_LIB_SPEC) \
113                $(UTIL_LIB_SPEC) \
114                $(VRMATH_LIB_SPEC) \
115                $(VTK_LIB_SPEC) \
116                $(TCL_LIB_SPEC) \
117                $(CG_LIB_SPEC) \
118                $(GL_LIB_SPEC) \
119                $(EXTRA_LIBS) \
120                -Wl,-rpath,$(LD_RUN_PATH)
121
122INCLUDES        = \
123                -I. \
124                -I$(srcdir) \
125                $(IMG_INC_SPEC) \
126                $(MAT_INC_SPEC) \
127                $(VRMATH_INC_SPEC) \
128                $(VTK_INC_SPEC) \
129                $(TCL_INC_SPEC) \
130                $(CG_INC_SPEC) \
131                $(GL_INC_SPEC) \
132                $(RP_INC_SPEC)
133
134CC              = @CC@
135CXX             = @CXX@
136CFLAGS          = @CFLAGS@
137EXTRA_CFLAGS    = -Wall
138DEFINES         = -DSVN_VERSION=\"$(SVN_VERSION)\" -DSTATSDIR=\"$(STATSDIR)\"
139ifdef TRACE
140DEFINES         += -DWANT_TRACE
141endif
142ifdef USE_DX_READER
143DEFINES         += -DUSE_DX_READER
144endif
145ifdef USE_THREADS
146DEFINES         += -DUSE_THREADS
147endif
148ifdef USE_POINTSET_RENDERER
149DEFINES         += -DUSE_POINTSET_RENDERER
150endif
151ifdef USE_VTK
152DEFINES         += -DUSE_VTK
153endif
154CXX_SWITCHES    = $(CFLAGS) $(EXTRA_CFLAGS) $(DEFINES) $(INCLUDES)
155
156OBJS            = \
157                Axis.o \
158                BMPWriter.o \
159                Camera.o \
160                Chain.o \
161                CmdProc.o \
162                ColorTableShader.o \
163                Command.o \
164                ContourLineFilter.o \
165                ConvexPolygon.o \
166                Flow.o \
167                FlowBox.o \
168                FlowCmd.o \
169                FlowParticles.o \
170                GradientFilter.o \
171                Grid.o \
172                HeightMap.o \
173                LIC.o \
174                OrientationIndicator.o \
175                ParticleAdvectionShader.o \
176                ParticleRenderer.o \
177                PerfQuery.o \
178                Plane.o \
179                PlaneRenderer.o \
180                PPMWriter.o \
181                ReadBuffer.o \
182                ReaderCommon.o \
183                RegularVolumeShader.o \
184                RenderVertexArray.o \
185                ResponseQueue.o \
186                Shader.o \
187                StdVertexShader.o \
188                Switch.o \
189                Texture1D.o \
190                Texture2D.o \
191                Texture3D.o \
192                Trace.o \
193                TransferFunction.o \
194                Unirect.o \
195                VelocityArrowsSlice.o \
196                Volume.o \
197                VolumeInterpolator.o \
198                VolumeRenderer.o \
199                VolumeShader.o \
200                ZincBlendeReconstructor.o \
201                ZincBlendeVolume.o \
202                ZincBlendeVolumeShader.o \
203                md5.o \
204                nanovis.o \
205                nanovisServer.o
206
207resources       = \
208                $(srcdir)/resources/arrows.bmp \
209                $(srcdir)/resources/particle2.bmp \
210                $(srcdir)/resources/verdana.fnt \
211                $(srcdir)/resources/verdana_bold.fnt
212
213shaders         = \
214                $(srcdir)/shaders/common.cg \
215                $(srcdir)/shaders/cutplane_fp.cg \
216                $(srcdir)/shaders/cutplane_vp.cg \
217                $(srcdir)/shaders/heightcolor.cg \
218                $(srcdir)/shaders/one_plane.cg \
219                $(srcdir)/shaders/one_volume.cg \
220                $(srcdir)/shaders/particle_common.cg \
221                $(srcdir)/shaders/queryvelocity.cg \
222                $(srcdir)/shaders/render_vel.cg \
223                $(srcdir)/shaders/update_pos.cg \
224                $(srcdir)/shaders/velocityslicefp.cg \
225                $(srcdir)/shaders/velocityslicevp.cg \
226                $(srcdir)/shaders/vertex_std.cg \
227                $(srcdir)/shaders/zincblende_volume.cg
228
229ifdef USE_DX_READER
230OBJS +=         dxReader.o
231endif
232
233ifdef USE_PARTICLE_SYSTEM
234OBJS +=         ParticleEmitter.o \
235                ParticleSystem.o \
236                ParticleSystemFactory.o
237
238shaders +=      $(srcdir)/shaders/passthrough.cg \
239                $(srcdir)/shaders/distance.cg \
240                $(srcdir)/shaders/mergesort.cg \
241                $(srcdir)/shaders/moveparticles.cg \
242                $(srcdir)/shaders/particlefp.cg \
243                $(srcdir)/shaders/particlevp.cg
244endif
245
246ifdef USE_POINTSET_RENDERER
247OBJS +=         BucketSort.o \
248                PCASplit.o \
249                PointSet.o \
250                PointSetRenderer.o \
251                PointShader.o
252
253shaders +=      $(srcdir)/shaders/pointsvp.cg
254endif
255
256ifdef USE_VTK
257OBJS +=         DataSetResample.o \
258                VtkDataSetReader.o
259else
260OBJS +=         VtkReader.o
261endif
262
263.PHONY: all install install-resources install-shaders install-nanovis docs clean-docs clean distclean graphics imgloaders newmat11 util vrmath
264
265all: newmat11 graphics imgloaders util vrmath nanovis
266
267install: install-nanovis install-resources install-shaders
268
269docs:
270        $(MKDIR_P) -m 0755 docs/doxygen
271        doxygen
272
273graphics:               $(GRAPHICS_LIB)
274imgloaders:             $(IMG_LIB)
275newmat11:               $(MAT_LIB)
276util:                   $(UTIL_LIB)
277vrmath:                 $(VRMATH_LIB)
278
279$(GRAPHICS_LIB):
280        $(MAKE) -C $(GRAPHICS_DIR) all
281
282$(IMG_LIB):
283        $(MAKE) -C $(IMG_DIR) all
284
285$(MAT_LIB):
286        $(MAKE) -C $(MAT_DIR) all
287
288$(UTIL_LIB):
289        $(MAKE) -C $(UTIL_DIR) all
290
291$(VRMATH_LIB):
292        $(MAKE) -C $(VRMATH_DIR) all
293
294nanovis: $(MAT_LIB) $(GRAPHICS_LIB) $(IMG_LIB) $(UTIL_LIB) $(VRMATH_LIB) $(OBJS)
295        $(CXX) $(CXX_SWITCHES) -o $@ $^ $(LIBS)
296
297.cpp.o:
298        $(CXX) $(CXX_SWITCHES) -o $@ -c $<
299
300install-resources:
301        $(MKDIR_P) $(libdir)/resources
302        @for i in $(resources) ; do \
303            echo "installing $$i..." ; \
304            $(INSTALL_DATA) $$i $(libdir)/resources ; \
305        done
306
307install-shaders:
308        $(MKDIR_P) $(libdir)/shaders
309        @for i in $(shaders) ; do \
310            echo "installing $$i..." ; \
311            $(INSTALL_DATA) $$i $(libdir)/shaders ; \
312        done
313
314install-nanovis: nanovis
315        $(INSTALL_PROGRAM) nanovis $(bindir)
316
317clean:
318        $(MAKE) -C $(MAT_DIR) clean
319        $(MAKE) -C $(GRAPHICS_DIR) clean
320        $(MAKE) -C $(IMG_DIR) clean
321        $(MAKE) -C $(UTIL_DIR) clean
322        $(MAKE) -C $(VRMATH_DIR) clean
323        $(RM) nanovis client *.o
324
325clean-docs:
326        $(RM) -r docs
327
328distclean: clean clean-docs
329        $(MAKE) -C $(MAT_DIR) distclean
330        $(MAKE) -C $(GRAPHICS_DIR) distclean
331        $(MAKE) -C $(IMG_DIR) distclean
332        $(MAKE) -C $(UTIL_DIR) distclean
333        $(MAKE) -C $(VRMATH_DIR) distclean
334        $(RM) Makefile nvconf.h *~
335
336Axis.o: Axis.cpp Axis.h Chain.h
337BMPWriter.o: BMPWriter.cpp nanovis.h
338BucketSort.o: BucketSort.cpp BucketSort.h $(VRMATH_DIR)/include/vrmath/Vector3f.h $(VRMATH_DIR)/include/vrmath/Vector4f.h $(VRMATH_DIR)/include/vrmath/Matrix4x4d.h PCASplit.h
339Camera.o: Camera.cpp Camera.h config.h $(VRMATH_DIR)/include/vrmath/Matrix4x4d.h
340Chain.o: Chain.cpp Chain.h
341CmdProc.o: CmdProc.cpp CmdProc.h
342ColorTableShader.o: ColorTableShader.cpp ColorTableShader.h Shader.h
343Command.o: Command.cpp nanovis.h nanovisServer.h ReadBuffer.h ResponseQueue.h config.h define.h FlowCmd.h CmdProc.h Trace.h PlaneRenderer.h PPMWriter.h BMPWriter.h dxReader.h Grid.h HeightMap.h Camera.h ZincBlendeReconstructor.h OrientationIndicator.h Unirect.h Volume.h VolumeRenderer.h
344ContourLineFilter.o: ContourLineFilter.cpp ContourLineFilter.h
345ConvexPolygon.o: ConvexPolygon.cpp ConvexPolygon.h $(VRMATH_DIR)/include/vrmath/Vector4f.h $(VRMATH_DIR)/include/vrmath/Matrix4x4d.h Plane.h
346DataSetResample.o: DataSetResample.cpp DataSetResample.h
347Flow.o: Flow.cpp Flow.h FlowCmd.h FlowTypes.h FlowBox.h FlowParticles.h LIC.h VelocityArrowsSlice.h Switch.h Unirect.h Volume.h TransferFunction.h Trace.h
348FlowBox.o: FlowBox.cpp FlowBox.h FlowTypes.h Switch.h Trace.h Volume.h $(VRMATH_DIR)/include/vrmath/Vector3f.h $(VRMATH_DIR)/include/vrmath/Vector4f.h $(VRMATH_DIR)/include/vrmath/Matrix4x4d.h
349FlowCmd.o: FlowCmd.cpp FlowCmd.h FlowParticles.h FlowBox.h FlowTypes.h Command.h PPMWriter.h Switch.h Trace.h TransferFunction.h nanovis.h nanovisServer.h CmdProc.h LIC.h Unirect.h Volume.h VelocityArrowsSlice.h $(VRMATH_DIR)/include/vrmath/Vector3f.h
350FlowParticles.o: FlowParticles.cpp FlowParticles.h FlowTypes.h FlowCmd.h Switch.h Trace.h ParticleRenderer.h Volume.h $(VRMATH_DIR)/include/vrmath/Vector3f.h $(VRMATH_DIR)/include/vrmath/Vector4f.h
351GradientFilter.o: GradientFilter.cpp GradientFilter.h
352Grid.o: Grid.cpp Grid.h Axis.h Chain.h $(UTIL_DIR)/Fonts.h $(VRMATH_DIR)/include/vrmath/Color4f.h $(VRMATH_DIR)/include/vrmath/Vector4f.h
353HeightMap.o: HeightMap.cpp HeightMap.h Shader.h
354LIC.o: LIC.cpp LIC.h FlowTypes.h Shader.h define.h
355OrientationIndicator.o: OrientationIndicator.cpp OrientationIndicator.h
356ParticleAdvectionShader.o: ParticleAdvectionShader.cpp ParticleAdvectionShader.h Shader.h
357ParticleEmitter.o: ParticleEmitter.cpp ParticleEmitter.h
358ParticleRenderer.o: ParticleRenderer.cpp ParticleRenderer.h FlowTypes.h define.h
359ParticleSystem.o: ParticleSystem.cpp ParticleSystem.h
360ParticleSystemFactory.o: ParticleSystemFactory.cpp ParticleSystemFactory.h
361PCASplit.o: PCASplit.cpp PCASplit.h
362PerfQuery.o: PerfQuery.cpp PerfQuery.h
363Plane.o: Plane.cpp Plane.h $(VRMATH_DIR)/include/vrmath/Vector4f.h $(VRMATH_DIR)/include/vrmath/Matrix4x4d.h
364PlaneRenderer.o: PlaneRenderer.cpp PlaneRenderer.h
365PointSet.o: PointSet.cpp PointSet.h
366PointSetRenderer.o: PointSetRenderer.cpp PointSetRenderer.h
367PointShader.o: PointShader.cpp PointShader.h
368PPMWriter.o: PPMWriter.cpp PPMWriter.h
369ReadBuffer.o: ReadBuffer.cpp ReadBuffer.h Trace.h
370ReaderCommon.o: ReaderCommon.cpp ReaderCommon.h GradientFilter.h $(VRMATH_DIR)/include/vrmath/Vector3f.h
371RegularVolumeShader.o: RegularVolumeShader.cpp RegularVolumeShader.h VolumeShader.h Shader.h
372RenderVertexArray.o: RenderVertexArray.cpp RenderVertexArray.h
373Shader.o: Shader.cpp Shader.h config.h
374ShaderGL.o: ShaderGL.cpp ShaderGL.h
375StdVertexShader.o: StdVertexShader.cpp StdVertexShader.h Shader.h
376Switch.o: Switch.cpp Switch.h
377Texture1D.o: Texture1D.cpp Texture1D.h
378Texture2D.o: Texture2D.cpp Texture2D.h config.h define.h
379Texture3D.o: Texture3D.cpp Texture3D.h config.h define.h
380Trace.o: Trace.cpp Trace.h
381TransferFunction.o: TransferFunction.cpp
382Unirect.o: Unirect.cpp Unirect.h Command.h Trace.h
383VelocityArrowsSlice.o: VelocityArrowsSlice.cpp VelocityArrowsSlice.h nanovis.h FlowTypes.h Camera.h Volume.h Shader.h
384Volume.o: Volume.cpp Volume.h config.h define.h
385VolumeInterpolator.o: VolumeInterpolator.cpp VolumeInterpolator.h Volume.h
386VolumeRenderer.o: VolumeRenderer.cpp VolumeRenderer.h ConvexPolygon.h Volume.h nanovis.h Trace.h Plane.h StdVertexShader.h Shader.h
387VolumeShader.o: VolumeShader.cpp VolumeShader.h Shader.h
388VtkDataSetReader.o: VtkDataSetReader.cpp VtkDataSetReader.h DataSetResample.h $(VRMATH_DIR)/include/vrmath/Vector3f.h ReaderCommon.h Trace.h Volume.h nanovis.h config.h
389VtkReader.o: VtkReader.h Trace.h Volume.h $(VRMATH_DIR)/include/vrmath/Vector3f.h ReaderCommon.h nanovis.h config.h
390ZincBlendeReconstructor.o: ZincBlendeReconstructor.cpp ZincBlendeReconstructor.h ZincBlendeVolume.h Volume.h $(VRMATH_DIR)/include/vrmath/Vector3f.h
391ZincBlendeVolume.o: ZincBlendeVolume.cpp ZincBlendeVolume.h config.h define.h
392ZincBlendeVolumeShader.o: ZincBlendeVolumeShader.cpp ZincBlendeVolumeShader.h VolumeShader.h Shader.h
393dxReader.o: dxReader.cpp ReaderCommon.h config.h nanovis.h Unirect.h ZincBlendeVolume.h ZincBlendeReconstructor.h
394md5.o: md5.h
395nanovis.o: nanovis.cpp nanovis.h nanovisServer.h config.h define.h Command.h Flow.h Grid.h HeightMap.h Camera.h LIC.h ZincBlendeReconstructor.h OrientationIndicator.h PerfQuery.h PlaneRenderer.h PointSetRenderer.h PointSet.h Switch.h Trace.h Unirect.h VelocityArrowsSlice.h VolumeInterpolator.h VolumeRenderer.h ZincBlendeVolume.h Axis.h Chain.h $(UTIL_DIR)/Fonts.h
396nanovisServer.o: nanovisServer.cpp nanovisServer.h config.h nanovis.h define.h Command.h PPMWriter.h ReadBuffer.h Shader.h ResponseQueue.h Trace.h
Note: See TracBrowser for help on using the repository browser.