source: nanovis/trunk/Makefile.in @ 5722

Last change on this file since 5722 was 5613, checked in by ldelgass, 4 years ago

Fix header deps

File size: 12.7 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                $(VTK_LIB_SPEC) \
111                $(TCL_LIB_SPEC) \
112                $(CG_LIB_SPEC) \
113                $(GL_LIB_SPEC) \
114                $(EXTRA_LIBS) \
115                -Wl,-rpath,$(LD_RUN_PATH)
116
117STATIC_LIBS     = \
118                $(GRAPHICS_LIB) \
119                $(IMG_LIB) \
120                $(UTIL_LIB) \
121                $(VRMATH_LIB)
122
123INCLUDES        = \
124                -I. \
125                -I$(srcdir) \
126                $(IMG_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                CmdProc.o \
161                ColorTableShader.o \
162                Command.o \
163                ContourLineFilter.o \
164                ConvexPolygon.o \
165                Flow.o \
166                FlowBox.o \
167                FlowCmd.o \
168                FlowParticles.o \
169                GradientFilter.o \
170                Grid.o \
171                HeightMap.o \
172                LIC.o \
173                OrientationIndicator.o \
174                ParticleAdvectionShader.o \
175                ParticleRenderer.o \
176                PerfQuery.o \
177                Plane.o \
178                PlaneRenderer.o \
179                PPMWriter.o \
180                ReadBuffer.o \
181                ReaderCommon.o \
182                RegularVolumeShader.o \
183                RenderVertexArray.o \
184                ResponseQueue.o \
185                Shader.o \
186                StdVertexShader.o \
187                Switch.o \
188                Texture1D.o \
189                Texture2D.o \
190                Texture3D.o \
191                Trace.o \
192                TransferFunction.o \
193                Unirect.o \
194                VelocityArrowsSlice.o \
195                Volume.o \
196                VolumeInterpolator.o \
197                VolumeRenderer.o \
198                VolumeShader.o \
199                ZincBlendeReconstructor.o \
200                ZincBlendeVolume.o \
201                ZincBlendeVolumeShader.o \
202                md5.o \
203                nanovis.o \
204                nanovisServer.o
205
206resources       = \
207                $(srcdir)/resources/arrows.bmp \
208                $(srcdir)/resources/verdana.fnt \
209                $(srcdir)/resources/verdana_bold.fnt
210
211shaders         = \
212                $(srcdir)/shaders/common.cg \
213                $(srcdir)/shaders/cutplane_fp.cg \
214                $(srcdir)/shaders/cutplane_vp.cg \
215                $(srcdir)/shaders/heightcolor.cg \
216                $(srcdir)/shaders/one_plane.cg \
217                $(srcdir)/shaders/one_volume.cg \
218                $(srcdir)/shaders/particle_common.cg \
219                $(srcdir)/shaders/queryvelocity.cg \
220                $(srcdir)/shaders/render_vel.cg \
221                $(srcdir)/shaders/update_pos.cg \
222                $(srcdir)/shaders/velocityslicefp.cg \
223                $(srcdir)/shaders/velocityslicevp.cg \
224                $(srcdir)/shaders/vertex_std.cg \
225                $(srcdir)/shaders/zincblende_volume.cg
226
227ifdef USE_DX_READER
228OBJS +=         dxReader.o
229endif
230
231ifdef USE_PARTICLE_SYSTEM
232OBJS +=         ParticleEmitter.o \
233                ParticleSystem.o \
234                ParticleSystemFactory.o
235
236shaders +=      $(srcdir)/shaders/passthrough.cg \
237                $(srcdir)/shaders/distance.cg \
238                $(srcdir)/shaders/mergesort.cg \
239                $(srcdir)/shaders/moveparticles.cg \
240                $(srcdir)/shaders/particlefp.cg \
241                $(srcdir)/shaders/particlevp.cg
242endif
243
244ifdef USE_POINTSET_RENDERER
245OBJS +=         BucketSort.o \
246                PCASplit.o \
247                PointSet.o \
248                PointSetRenderer.o \
249                PointShader.o
250STATIC_LIBS +=  $(MAT_LIB)
251INCLUDES +=     $(MAT_INC_SPEC)
252resources +=    $(srcdir)/resources/particle2.bmp
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: 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: $(OBJS) $(STATIC_LIBS)
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
337BMPWriter.o: BMPWriter.cpp BMPWriter.h 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
340CmdProc.o: CmdProc.cpp CmdProc.h
341ColorTableShader.o: ColorTableShader.cpp ColorTableShader.h Shader.h
342Command.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
343ContourLineFilter.o: ContourLineFilter.cpp ContourLineFilter.h
344ConvexPolygon.o: ConvexPolygon.cpp ConvexPolygon.h $(VRMATH_DIR)/include/vrmath/Vector4f.h $(VRMATH_DIR)/include/vrmath/Matrix4x4d.h Plane.h
345DataSetResample.o: DataSetResample.cpp DataSetResample.h
346Flow.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
347FlowBox.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
348FlowCmd.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
349FlowParticles.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
350GradientFilter.o: GradientFilter.cpp GradientFilter.h
351Grid.o: Grid.cpp Grid.h Axis.h $(UTIL_DIR)/Fonts.h $(VRMATH_DIR)/include/vrmath/Color4f.h $(VRMATH_DIR)/include/vrmath/Vector4f.h
352HeightMap.o: HeightMap.cpp HeightMap.h Shader.h
353LIC.o: LIC.cpp LIC.h FlowTypes.h Shader.h define.h
354OrientationIndicator.o: OrientationIndicator.cpp OrientationIndicator.h
355ParticleAdvectionShader.o: ParticleAdvectionShader.cpp ParticleAdvectionShader.h Shader.h
356ParticleEmitter.o: ParticleEmitter.cpp ParticleEmitter.h
357ParticleRenderer.o: ParticleRenderer.cpp ParticleRenderer.h ParticleAdvectionShader.h FlowTypes.h define.h
358ParticleSystem.o: ParticleSystem.cpp ParticleSystem.h
359ParticleSystemFactory.o: ParticleSystemFactory.cpp ParticleSystemFactory.h
360PCASplit.o: PCASplit.cpp PCASplit.h
361PerfQuery.o: PerfQuery.cpp PerfQuery.h
362Plane.o: Plane.cpp Plane.h $(VRMATH_DIR)/include/vrmath/Vector4f.h $(VRMATH_DIR)/include/vrmath/Matrix4x4d.h
363PlaneRenderer.o: PlaneRenderer.cpp PlaneRenderer.h
364PointSet.o: PointSet.cpp PointSet.h
365PointSetRenderer.o: PointSetRenderer.cpp PointSetRenderer.h
366PointShader.o: PointShader.cpp PointShader.h
367PPMWriter.o: PPMWriter.cpp PPMWriter.h
368ReadBuffer.o: ReadBuffer.cpp ReadBuffer.h Trace.h
369ReaderCommon.o: ReaderCommon.cpp ReaderCommon.h GradientFilter.h $(VRMATH_DIR)/include/vrmath/Vector3f.h
370RegularVolumeShader.o: RegularVolumeShader.cpp RegularVolumeShader.h VolumeShader.h Shader.h
371RenderVertexArray.o: RenderVertexArray.cpp RenderVertexArray.h
372Shader.o: Shader.cpp Shader.h config.h
373ShaderGL.o: ShaderGL.cpp ShaderGL.h
374StdVertexShader.o: StdVertexShader.cpp StdVertexShader.h Shader.h
375Switch.o: Switch.cpp Switch.h
376Texture1D.o: Texture1D.cpp Texture1D.h
377Texture2D.o: Texture2D.cpp Texture2D.h config.h define.h
378Texture3D.o: Texture3D.cpp Texture3D.h config.h define.h
379Trace.o: Trace.cpp Trace.h
380TransferFunction.o: TransferFunction.cpp
381Unirect.o: Unirect.cpp Unirect.h Command.h Trace.h
382VelocityArrowsSlice.o: VelocityArrowsSlice.cpp VelocityArrowsSlice.h nanovis.h FlowTypes.h Camera.h Volume.h Shader.h
383Volume.o: Volume.cpp Volume.h config.h define.h
384VolumeInterpolator.o: VolumeInterpolator.cpp VolumeInterpolator.h Volume.h
385VolumeRenderer.o: VolumeRenderer.cpp VolumeRenderer.h ConvexPolygon.h Volume.h nanovis.h Trace.h Plane.h StdVertexShader.h Shader.h
386VolumeShader.o: VolumeShader.cpp VolumeShader.h Shader.h
387VtkDataSetReader.o: VtkDataSetReader.cpp VtkDataSetReader.h DataSetResample.h $(VRMATH_DIR)/include/vrmath/Vector3f.h ReaderCommon.h Trace.h Volume.h nanovis.h config.h
388VtkReader.o: VtkReader.h Trace.h Volume.h $(VRMATH_DIR)/include/vrmath/Vector3f.h ReaderCommon.h nanovis.h config.h
389ZincBlendeReconstructor.o: ZincBlendeReconstructor.cpp ZincBlendeReconstructor.h ZincBlendeVolume.h Volume.h $(VRMATH_DIR)/include/vrmath/Vector3f.h
390ZincBlendeVolume.o: ZincBlendeVolume.cpp ZincBlendeVolume.h config.h define.h
391ZincBlendeVolumeShader.o: ZincBlendeVolumeShader.cpp ZincBlendeVolumeShader.h VolumeShader.h Shader.h
392dxReader.o: dxReader.cpp ReaderCommon.h config.h nanovis.h ZincBlendeVolume.h ZincBlendeReconstructor.h
393md5.o: md5.h
394nanovis.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 VelocityArrowsSlice.h VolumeInterpolator.h VolumeRenderer.h ZincBlendeVolume.h Axis.h $(UTIL_DIR)/Fonts.h
395nanovisServer.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.