#***************************************************************
#*
#*  UNIX Makefile for Persistence of Vision Raytracer v3.1e
#*
#*  Aug-95 : Created by Chris Cason.
#*  Nov-95 : Modified by Andreas Dilger to combine X and non-X.
#*  Mar-96 : Modified by Andreas Dilger to add SVGA
#*  Nov-98 : Modified by Mark Gordon to remove halo and add media and interior.
#*  Jan-99 : Modified by Mike Fleetwood to add John Cairns 3.1 changes
#*  Feb-99 : Modified by Mike Fleetwood to add a more flexible default 
#*           INI file search method 
#*  Mar-99 : More cleanup by Mark Gordon, including suggestions by Axel Hecht
#*  Mar-99 : Modified by Mark Gordon to add -ffast-math to Linux compiler flags 
#*
#***************************************************************

# set ODIR to the location where you want the object files placed.
ODIR=.

# set SRCDIR to the location where the main POV-Ray source is located.
SRCDIR=..

# UTARGET is the name of the text-only UNIX version
UTARGET=povray

# XTARGET is the name of the X-Windows executable.
XTARGET=x-povray

# STARGET is the name of the SVGA executable.
STARGET=s-povray

# libpng and zlib include and library directories.
#
# Use libXXX.a if you want to force static linking of the libraries.
#   Use -Llibdir -lXXX if you want to use shared libraries (if they are
#   available).  It doesn't matter if you only have libXXX.a libraries.
PNGDIR = $(SRCDIR)/libpng
LIBPNGINC = -I$(PNGDIR)
#LIBPNGLIB = $(PNGDIR)/libpng.a
LIBPNGLIB = -L$(PNGDIR) -lpng
#LIBPNGLIB = -L/usr/local/lib -lpng

# The following options are added at the suggestion of Axel Hecht
# Modify png_povDEP accordingly if you use this option
# PREFIX = $HOME
# LIBPNGINCDIR = $(PREFIX)/include
# LIBPNGINC = -I$(LIBPNGINCDIR)
# LIBPNGLIB = -L$(PREFIX)/lib -lpng

ZLIBDIR = $(SRCDIR)/zlib
ZLIBINC = -I$(ZLIBDIR)
#ZLIBLIB = $(ZLIBDIR)/libz.a
ZLIBLIB = -L$(ZLIBDIR) -lz
#ZLIBLIB = -L/usr/local/lib -lz

# The following options are added at the suggestion of Axel Hecht
# PREFIX = $HOME
# ZLIBINCDIR = $(PREFIX)/include
# ZLIBINC = -I$(LIBPNGINCDIR)
# ZLIBLIB = -L$(PREFIX)/lib -lpng

# Define the default POV-Ray library location
POVLIBDIR = /usr/local/lib/povray31

# This is the suffix for object files.
OBJ     = .o

# This is the command used to delete a file
RM    = /bin/rm -f

# The X11 variable should point to the top-level directory where the X11
#   libraries and include files are located.  It should really be set in
#   your system startup script (ie .cshrc or .profile) so that it can be
#   different for each platform without having to change the makefile.
# If you already have it set, comment all of these lines out.  Otherwise,
#   uncomment one of the following lines, or edit one to suit your system.
#X11 = /usr/local/X11R6

# for some SunOS systems:
#X11 = /usr/openwin        

# for some AIX systems:
#X11 = /usr/lpp/X11        

X11 = /usr/X11R6

# You probably won't need to change these if you have the X11 variable
#   above set properly...
XLIBINC = -I$(X11)/include
XLIBLIB = -L$(X11)/lib -lX11

# Libraries for the SVGA Linux version
SLIBLIB = -lvga -lvgagl

SRCINC  = -I. -I$(SRCDIR)

# The exact compiler options may depend on your compiler.  Feel free to
#   modify these as required.
#
# Most compilers are usually satisfied with the -ansi option, if they have
#   a choice between ANSI and non-ANSI compiling.  Use the ANSI mode if
#   possible.  If you can't get -ansi to work or something similar, you may
#   want to add -D__STDC__ to force ANSI prototypes instead of K&R prototypes.
#
# The option -DMEM_TRACE enables memory debugging, but shouldn't be needed
#   for compiles unless you are debugging new code, as it slows things down.
# The option -DPOV_COMMENTS enables informational comments in PNG and PPM
#   format output files (see png_pov.c and ppm.c for more info).
#
# The POVLIBDIR section was added by Mike Fleetwood.
# The -ffast-math flag was added to the Linux flags by Mark Gordon
#
#
# CFLAGS      = -O2 -ansi -c -DCOMPILER_VER=\".`uname`.$(CC)\" $(SRCINC) $(LIBPNGINC) $(ZLIBINC) $(XLIBINC)
LFLAGS      = $(LIBPNGLIB) $(ZLIBLIB) -lm

# Linux compiler flags
CFLAGS      = -O6 -finline-functions -ffast-math -c -ansi -DCOMPILER_VER=\".`uname`.$(CC)\" -DPOV_LIB_DIR=\"$(POVLIBDIR)\" $(SRCINC) $(LIBPNGINC) $(ZLIBINC)

# HPUX compiler flags
#CFLAGS      = +O2 -finline-functions -c -Aa -D_HPUX_SOURCE -DCOMPILER_VER=\".`uname`.$(CC)\" $(SRCINC) $(LIBPNGINC) $(ZLIBINC)

# Your compiler
CC          = gcc

# This decides which version of the executable you will get, either the
# Unix text-only version, the X-Windows version, or the SVGAlib version.
# default: config.h unix
#default: unix
default: xwin
#default: svga

#
# End of user specific options
#

POVOBJS = $(ODIR)/atmosph$(OBJ)  \
          $(ODIR)/bbox$(OBJ)     \
          $(ODIR)/bcyl$(OBJ)     \
          $(ODIR)/bezier$(OBJ)   \
          $(ODIR)/blob$(OBJ)     \
          $(ODIR)/boxes$(OBJ)    \
          $(ODIR)/bsphere$(OBJ)  \
          $(ODIR)/camera$(OBJ)   \
          $(ODIR)/chi2$(OBJ)     \
          $(ODIR)/colour$(OBJ)   \
          $(ODIR)/cones$(OBJ)    \
          $(ODIR)/csg$(OBJ)      \
          $(ODIR)/discs$(OBJ)    \
          $(ODIR)/express$(OBJ)  \
          $(ODIR)/fractal$(OBJ)  \
          $(ODIR)/gif$(OBJ)      \
          $(ODIR)/gifdecod$(OBJ) \
          $(ODIR)/hcmplx$(OBJ)   \
          $(ODIR)/hfield$(OBJ)   \
          $(ODIR)/iff$(OBJ)      \
          $(ODIR)/image$(OBJ)    \
          $(ODIR)/interior$(OBJ) \
          $(ODIR)/lathe$(OBJ)    \
          $(ODIR)/lbuffer$(OBJ)  \
          $(ODIR)/lighting$(OBJ) \
          $(ODIR)/matrices$(OBJ) \
	  $(ODIR)/media$(OBJ)    \
          $(ODIR)/mem$(OBJ)      \
          $(ODIR)/mesh$(OBJ)     \
          $(ODIR)/normal$(OBJ)   \
          $(ODIR)/objects$(OBJ)  \
          $(ODIR)/octree$(OBJ)   \
          $(ODIR)/optin$(OBJ)    \
          $(ODIR)/optout$(OBJ)   \
          $(ODIR)/parse$(OBJ)    \
          $(ODIR)/parstxtr$(OBJ) \
          $(ODIR)/pattern$(OBJ)  \
          $(ODIR)/pgm$(OBJ)      \
          $(ODIR)/pigment$(OBJ)  \
          $(ODIR)/planes$(OBJ)   \
          $(ODIR)/png_pov$(OBJ)  \
          $(ODIR)/point$(OBJ)    \
          $(ODIR)/poly$(OBJ)     \
          $(ODIR)/polygon$(OBJ)  \
          $(ODIR)/polysolv$(OBJ) \
          $(ODIR)/povray$(OBJ)   \
          $(ODIR)/ppm$(OBJ)      \
          $(ODIR)/prism$(OBJ)    \
          $(ODIR)/quadrics$(OBJ) \
          $(ODIR)/quatern$(OBJ)  \
          $(ODIR)/rad_data$(OBJ) \
          $(ODIR)/radiosit$(OBJ) \
          $(ODIR)/ray$(OBJ)      \
          $(ODIR)/render$(OBJ)   \
          $(ODIR)/sor$(OBJ)      \
          $(ODIR)/spheres$(OBJ)  \
          $(ODIR)/super$(OBJ)    \
          $(ODIR)/targa$(OBJ)    \
          $(ODIR)/texture$(OBJ)  \
          $(ODIR)/tokenize$(OBJ) \
          $(ODIR)/torus$(OBJ)    \
          $(ODIR)/triangle$(OBJ) \
          $(ODIR)/truetype$(OBJ) \
          $(ODIR)/txttest$(OBJ)  \
          $(ODIR)/userio$(OBJ)   \
          $(ODIR)/vbuffer$(OBJ)  \
          $(ODIR)/vlbuffer$(OBJ) \
          $(ODIR)/warps$(OBJ)    \
          $(ODIR)/bezier2$(OBJ)  \
          $(ODIR)/f_expr$(OBJ)   \
          $(ODIR)/f_func$(OBJ)   \
          $(ODIR)/f_param$(OBJ)  \
          $(ODIR)/isofunc$(OBJ)  \
          $(ODIR)/isosurf$(OBJ)  \
          $(ODIR)/lightgrp$(OBJ) \
          $(ODIR)/rbezier$(OBJ)  \
          $(ODIR)/sphsweep$(OBJ) \
          $(ODIR)/splines$(OBJ)  \
          $(MACHINE_OBJ)

#
# Specific module header dependencies for POV-Ray:
#

atmosphDEP =  $(SRCDIR)/atmosph.c $(SRCDIR)/frame.h config.h $(SRCDIR)/vector.h $(SRCDIR)/povproto.h $(SRCDIR)/mem.h \
 $(SRCDIR)/atmosph.h $(SRCDIR)/chi2.h $(SRCDIR)/colour.h $(SRCDIR)/povray.h $(SRCDIR)/camera.h $(SRCDIR)/media.h $(SRCDIR)/point.h \
 $(SRCDIR)/vlbuffer.h $(SRCDIR)/bbox.h $(SRCDIR)/render.h $(SRCDIR)/texture.h $(SRCDIR)/pattern.h $(SRCDIR)/warps.h $(SRCDIR)/pigment.h \
 $(SRCDIR)/objects.h $(SRCDIR)/lighting.h $(SRCDIR)/matrices.h $(SRCDIR)/ray.h

bboxDEP =  $(SRCDIR)/bbox.c $(SRCDIR)/frame.h config.h $(SRCDIR)/vector.h $(SRCDIR)/povproto.h $(SRCDIR)/mem.h $(SRCDIR)/bbox.h \
 $(SRCDIR)/matrices.h $(SRCDIR)/objects.h $(SRCDIR)/povray.h $(SRCDIR)/atmosph.h $(SRCDIR)/camera.h $(SRCDIR)/media.h $(SRCDIR)/point.h \
 $(SRCDIR)/vlbuffer.h $(SRCDIR)/render.h

bcylDEP =  $(SRCDIR)/bcyl.c $(SRCDIR)/frame.h config.h $(SRCDIR)/vector.h $(SRCDIR)/povproto.h $(SRCDIR)/mem.h $(SRCDIR)/bcyl.h

bezierDEP =  $(SRCDIR)/bezier.c $(SRCDIR)/frame.h config.h $(SRCDIR)/vector.h $(SRCDIR)/povproto.h $(SRCDIR)/mem.h \
 $(SRCDIR)/bezier.h $(SRCDIR)/matrices.h $(SRCDIR)/objects.h $(SRCDIR)/povray.h $(SRCDIR)/atmosph.h $(SRCDIR)/camera.h $(SRCDIR)/media.h \
 $(SRCDIR)/point.h $(SRCDIR)/vlbuffer.h $(SRCDIR)/bbox.h $(SRCDIR)/render.h

bezier2DEP =  $(SRCDIR)/bezier2.c $(SRCDIR)/frame.h config.h $(SRCDIR)/vector.h $(SRCDIR)/povproto.h $(SRCDIR)/mem.h \
 $(SRCDIR)/bezier.h $(SRCDIR)/matrices.h $(SRCDIR)/objects.h $(SRCDIR)/povray.h $(SRCDIR)/atmosph.h $(SRCDIR)/camera.h $(SRCDIR)/media.h \
 $(SRCDIR)/point.h $(SRCDIR)/vlbuffer.h $(SRCDIR)/bbox.h $(SRCDIR)/render.h

blobDEP =  $(SRCDIR)/blob.c $(SRCDIR)/frame.h config.h $(SRCDIR)/povray.h $(SRCDIR)/atmosph.h $(SRCDIR)/camera.h \
 $(SRCDIR)/media.h $(SRCDIR)/point.h $(SRCDIR)/vlbuffer.h $(SRCDIR)/bbox.h $(SRCDIR)/render.h $(SRCDIR)/vector.h $(SRCDIR)/povproto.h $(SRCDIR)/mem.h \
 $(SRCDIR)/blob.h $(SRCDIR)/bsphere.h $(SRCDIR)/lighting.h $(SRCDIR)/matrices.h $(SRCDIR)/objects.h $(SRCDIR)/polysolv.h $(SRCDIR)/texture.h \
 $(SRCDIR)/pattern.h $(SRCDIR)/warps.h

boxesDEP =  $(SRCDIR)/boxes.c $(SRCDIR)/frame.h config.h $(SRCDIR)/povray.h $(SRCDIR)/atmosph.h $(SRCDIR)/camera.h \
 $(SRCDIR)/media.h $(SRCDIR)/point.h $(SRCDIR)/vlbuffer.h $(SRCDIR)/bbox.h $(SRCDIR)/render.h $(SRCDIR)/vector.h $(SRCDIR)/povproto.h $(SRCDIR)/mem.h \
 $(SRCDIR)/boxes.h $(SRCDIR)/matrices.h $(SRCDIR)/objects.h

bsphereDEP =  $(SRCDIR)/bsphere.c $(SRCDIR)/frame.h config.h $(SRCDIR)/vector.h $(SRCDIR)/povproto.h $(SRCDIR)/mem.h \
 $(SRCDIR)/bsphere.h

cameraDEP =  $(SRCDIR)/camera.c $(SRCDIR)/frame.h config.h $(SRCDIR)/vector.h $(SRCDIR)/povproto.h $(SRCDIR)/mem.h \
 $(SRCDIR)/camera.h $(SRCDIR)/matrices.h $(SRCDIR)/normal.h

chi2DEP =  $(SRCDIR)/chi2.c $(SRCDIR)/frame.h config.h $(SRCDIR)/povproto.h $(SRCDIR)/mem.h $(SRCDIR)/chi2.h

colourDEP =  $(SRCDIR)/colour.c $(SRCDIR)/frame.h config.h $(SRCDIR)/vector.h $(SRCDIR)/povproto.h $(SRCDIR)/mem.h \
 $(SRCDIR)/colour.h $(SRCDIR)/pigment.h $(SRCDIR)/normal.h $(SRCDIR)/texture.h $(SRCDIR)/pattern.h $(SRCDIR)/warps.h

conesDEP =  $(SRCDIR)/cones.c $(SRCDIR)/frame.h config.h $(SRCDIR)/povray.h $(SRCDIR)/atmosph.h $(SRCDIR)/camera.h \
 $(SRCDIR)/media.h $(SRCDIR)/point.h $(SRCDIR)/vlbuffer.h $(SRCDIR)/bbox.h $(SRCDIR)/render.h $(SRCDIR)/vector.h $(SRCDIR)/povproto.h $(SRCDIR)/mem.h \
 $(SRCDIR)/cones.h $(SRCDIR)/matrices.h $(SRCDIR)/objects.h

csgDEP =  $(SRCDIR)/csg.c $(SRCDIR)/frame.h config.h $(SRCDIR)/povray.h $(SRCDIR)/atmosph.h $(SRCDIR)/camera.h $(SRCDIR)/media.h \
 $(SRCDIR)/point.h $(SRCDIR)/vlbuffer.h $(SRCDIR)/bbox.h $(SRCDIR)/render.h $(SRCDIR)/vector.h $(SRCDIR)/povproto.h $(SRCDIR)/mem.h $(SRCDIR)/csg.h \
 $(SRCDIR)/hfield.h $(SRCDIR)/boxes.h $(SRCDIR)/matrices.h $(SRCDIR)/objects.h $(SRCDIR)/planes.h $(SRCDIR)/quadrics.h

discsDEP =  $(SRCDIR)/discs.c $(SRCDIR)/frame.h config.h $(SRCDIR)/povray.h $(SRCDIR)/atmosph.h $(SRCDIR)/camera.h \
 $(SRCDIR)/media.h $(SRCDIR)/point.h $(SRCDIR)/vlbuffer.h $(SRCDIR)/bbox.h $(SRCDIR)/render.h $(SRCDIR)/vector.h $(SRCDIR)/povproto.h $(SRCDIR)/mem.h \
 $(SRCDIR)/discs.h $(SRCDIR)/matrices.h $(SRCDIR)/objects.h

expressDEP =  $(SRCDIR)/express.c $(SRCDIR)/frame.h config.h $(SRCDIR)/vector.h $(SRCDIR)/povproto.h $(SRCDIR)/mem.h \
 $(SRCDIR)/parse.h $(SRCDIR)/parstxtr.h $(SRCDIR)/atmosph.h $(SRCDIR)/interior.h $(SRCDIR)/media.h $(SRCDIR)/point.h $(SRCDIR)/vlbuffer.h \
 $(SRCDIR)/bbox.h $(SRCDIR)/colour.h $(SRCDIR)/splines.h $(SRCDIR)/express.h $(SRCDIR)/matrices.h $(SRCDIR)/povray.h $(SRCDIR)/camera.h \
 $(SRCDIR)/render.h $(SRCDIR)/tokenize.h $(SRCDIR)/pattern.h $(SRCDIR)/pigment.h $(SRCDIR)/normal.h $(SRCDIR)/texture.h $(SRCDIR)/warps.h

f_exprDEP =  $(SRCDIR)/f_expr.c $(SRCDIR)/frame.h config.h $(SRCDIR)/vector.h $(SRCDIR)/povproto.h $(SRCDIR)/mem.h \
 $(SRCDIR)/parse.h $(SRCDIR)/tokenize.h $(SRCDIR)/render.h $(SRCDIR)/isosrf.h $(SRCDIR)/f_expr.h $(SRCDIR)/parstxtr.h $(SRCDIR)/atmosph.h \
 $(SRCDIR)/interior.h $(SRCDIR)/media.h $(SRCDIR)/point.h $(SRCDIR)/vlbuffer.h $(SRCDIR)/bbox.h $(SRCDIR)/pigment.h

f_funcDEP =  $(SRCDIR)/f_func.c $(SRCDIR)/frame.h config.h $(SRCDIR)/mem.h $(SRCDIR)/isosrf.h $(SRCDIR)/f_expr.h \
 $(SRCDIR)/texture.h $(SRCDIR)/pattern.h $(SRCDIR)/warps.h $(SRCDIR)/pigment.h

f_paramDEP =  $(SRCDIR)/f_param.c $(SRCDIR)/frame.h config.h $(SRCDIR)/povray.h $(SRCDIR)/atmosph.h $(SRCDIR)/camera.h \
 $(SRCDIR)/media.h $(SRCDIR)/point.h $(SRCDIR)/vlbuffer.h $(SRCDIR)/bbox.h $(SRCDIR)/render.h $(SRCDIR)/objects.h $(SRCDIR)/boxes.h \
 $(SRCDIR)/povproto.h $(SRCDIR)/mem.h $(SRCDIR)/vector.h $(SRCDIR)/matrices.h $(SRCDIR)/isosrf.h $(SRCDIR)/f_expr.h

fractalDEP =  $(SRCDIR)/fractal.c $(SRCDIR)/frame.h config.h $(SRCDIR)/povray.h $(SRCDIR)/atmosph.h $(SRCDIR)/camera.h \
 $(SRCDIR)/media.h $(SRCDIR)/point.h $(SRCDIR)/vlbuffer.h $(SRCDIR)/bbox.h $(SRCDIR)/render.h $(SRCDIR)/vector.h $(SRCDIR)/povproto.h $(SRCDIR)/mem.h \
 $(SRCDIR)/matrices.h $(SRCDIR)/objects.h $(SRCDIR)/spheres.h $(SRCDIR)/fractal.h $(SRCDIR)/quatern.h $(SRCDIR)/hcmplx.h

gifDEP =  $(SRCDIR)/gif.c $(SRCDIR)/frame.h config.h $(SRCDIR)/povproto.h $(SRCDIR)/mem.h $(SRCDIR)/gif.h $(SRCDIR)/gifdecod.h \
 $(SRCDIR)/povray.h $(SRCDIR)/atmosph.h $(SRCDIR)/camera.h $(SRCDIR)/media.h $(SRCDIR)/point.h $(SRCDIR)/vlbuffer.h $(SRCDIR)/bbox.h \
 $(SRCDIR)/render.h

gifdecodDEP =  $(SRCDIR)/gifdecod.c $(SRCDIR)/frame.h config.h $(SRCDIR)/povproto.h $(SRCDIR)/mem.h $(SRCDIR)/gif.h \
 $(SRCDIR)/gifdecod.h

hcmplxDEP =  $(SRCDIR)/hcmplx.c $(SRCDIR)/frame.h config.h $(SRCDIR)/povray.h $(SRCDIR)/atmosph.h $(SRCDIR)/camera.h \
 $(SRCDIR)/media.h $(SRCDIR)/point.h $(SRCDIR)/vlbuffer.h $(SRCDIR)/bbox.h $(SRCDIR)/render.h $(SRCDIR)/vector.h $(SRCDIR)/povproto.h $(SRCDIR)/mem.h \
 $(SRCDIR)/fractal.h $(SRCDIR)/spheres.h $(SRCDIR)/hcmplx.h

hfieldDEP =  $(SRCDIR)/hfield.c $(SRCDIR)/frame.h config.h $(SRCDIR)/povray.h $(SRCDIR)/atmosph.h $(SRCDIR)/camera.h \
 $(SRCDIR)/media.h $(SRCDIR)/point.h $(SRCDIR)/vlbuffer.h $(SRCDIR)/bbox.h $(SRCDIR)/render.h $(SRCDIR)/vector.h $(SRCDIR)/povproto.h $(SRCDIR)/mem.h \
 $(SRCDIR)/hfield.h $(SRCDIR)/boxes.h $(SRCDIR)/matrices.h $(SRCDIR)/objects.h

iffDEP =  $(SRCDIR)/iff.c $(SRCDIR)/frame.h config.h $(SRCDIR)/povproto.h $(SRCDIR)/mem.h $(SRCDIR)/iff.h $(SRCDIR)/povray.h \
 $(SRCDIR)/atmosph.h $(SRCDIR)/camera.h $(SRCDIR)/media.h $(SRCDIR)/point.h $(SRCDIR)/vlbuffer.h $(SRCDIR)/bbox.h $(SRCDIR)/render.h

imageDEP =  $(SRCDIR)/image.c $(SRCDIR)/frame.h config.h $(SRCDIR)/vector.h $(SRCDIR)/povproto.h $(SRCDIR)/mem.h \
 $(SRCDIR)/texture.h $(SRCDIR)/pattern.h $(SRCDIR)/warps.h $(SRCDIR)/image.h $(SRCDIR)/matrices.h $(SRCDIR)/povray.h $(SRCDIR)/atmosph.h \
 $(SRCDIR)/camera.h $(SRCDIR)/media.h $(SRCDIR)/point.h $(SRCDIR)/vlbuffer.h $(SRCDIR)/bbox.h $(SRCDIR)/render.h $(SRCDIR)/isosrf.h

interiorDEP =  $(SRCDIR)/interior.c $(SRCDIR)/frame.h config.h $(SRCDIR)/vector.h $(SRCDIR)/povproto.h $(SRCDIR)/mem.h \
 $(SRCDIR)/chi2.h $(SRCDIR)/colour.h $(SRCDIR)/povray.h $(SRCDIR)/atmosph.h $(SRCDIR)/camera.h $(SRCDIR)/media.h $(SRCDIR)/point.h \
 $(SRCDIR)/vlbuffer.h $(SRCDIR)/bbox.h $(SRCDIR)/render.h $(SRCDIR)/texture.h $(SRCDIR)/pattern.h $(SRCDIR)/warps.h $(SRCDIR)/pigment.h \
 $(SRCDIR)/objects.h $(SRCDIR)/lighting.h $(SRCDIR)/matrices.h $(SRCDIR)/interior.h $(SRCDIR)/ray.h

isofuncDEP =  $(SRCDIR)/isofunc.c $(SRCDIR)/isofunc.h $(SRCDIR)/frame.h config.h $(SRCDIR)/isosrf.h $(SRCDIR)/vector.h \
 $(SRCDIR)/povproto.h $(SRCDIR)/mem.h $(SRCDIR)/f_expr.h $(SRCDIR)/pigment.h

isosurfDEP =  $(SRCDIR)/isosurf.c $(SRCDIR)/frame.h config.h $(SRCDIR)/povray.h $(SRCDIR)/atmosph.h $(SRCDIR)/camera.h \
 $(SRCDIR)/media.h $(SRCDIR)/point.h $(SRCDIR)/vlbuffer.h $(SRCDIR)/bbox.h $(SRCDIR)/render.h $(SRCDIR)/vector.h $(SRCDIR)/povproto.h $(SRCDIR)/mem.h \
 $(SRCDIR)/boxes.h $(SRCDIR)/spheres.h $(SRCDIR)/matrices.h $(SRCDIR)/objects.h $(SRCDIR)/isosrf.h $(SRCDIR)/f_expr.h

latheDEP =  $(SRCDIR)/lathe.c $(SRCDIR)/frame.h config.h $(SRCDIR)/povray.h $(SRCDIR)/atmosph.h $(SRCDIR)/camera.h \
 $(SRCDIR)/media.h $(SRCDIR)/point.h $(SRCDIR)/vlbuffer.h $(SRCDIR)/bbox.h $(SRCDIR)/render.h $(SRCDIR)/vector.h $(SRCDIR)/povproto.h $(SRCDIR)/mem.h \
 $(SRCDIR)/bcyl.h $(SRCDIR)/lathe.h $(SRCDIR)/polysolv.h $(SRCDIR)/matrices.h $(SRCDIR)/objects.h $(SRCDIR)/torus.h

lbufferDEP =  $(SRCDIR)/lbuffer.c $(SRCDIR)/frame.h config.h $(SRCDIR)/vector.h $(SRCDIR)/povproto.h $(SRCDIR)/mem.h \
 $(SRCDIR)/point.h $(SRCDIR)/vlbuffer.h $(SRCDIR)/bbox.h $(SRCDIR)/povray.h $(SRCDIR)/atmosph.h $(SRCDIR)/camera.h $(SRCDIR)/media.h \
 $(SRCDIR)/render.h $(SRCDIR)/lbuffer.h $(SRCDIR)/objects.h $(SRCDIR)/triangle.h $(SRCDIR)/lightgrp.h

lightgrpDEP =  $(SRCDIR)/lightgrp.c $(SRCDIR)/frame.h config.h $(SRCDIR)/povproto.h $(SRCDIR)/mem.h \
 $(SRCDIR)/lightgrp.h $(SRCDIR)/point.h $(SRCDIR)/vlbuffer.h $(SRCDIR)/bbox.h $(SRCDIR)/povray.h $(SRCDIR)/atmosph.h $(SRCDIR)/camera.h \
 $(SRCDIR)/media.h $(SRCDIR)/render.h $(SRCDIR)/objects.h $(SRCDIR)/csg.h

lightingDEP =  $(SRCDIR)/lighting.c $(SRCDIR)/frame.h config.h $(SRCDIR)/vector.h $(SRCDIR)/povproto.h $(SRCDIR)/mem.h \
 $(SRCDIR)/blob.h $(SRCDIR)/bsphere.h $(SRCDIR)/bbox.h $(SRCDIR)/colour.h $(SRCDIR)/image.h $(SRCDIR)/interior.h $(SRCDIR)/media.h $(SRCDIR)/point.h \
 $(SRCDIR)/vlbuffer.h $(SRCDIR)/lbuffer.h $(SRCDIR)/lighting.h $(SRCDIR)/mesh.h $(SRCDIR)/normal.h $(SRCDIR)/objects.h $(SRCDIR)/octree.h \
 $(SRCDIR)/pattern.h $(SRCDIR)/pigment.h $(SRCDIR)/povray.h $(SRCDIR)/atmosph.h $(SRCDIR)/camera.h $(SRCDIR)/render.h $(SRCDIR)/radiosit.h \
 $(SRCDIR)/ray.h $(SRCDIR)/texture.h $(SRCDIR)/warps.h $(SRCDIR)/lightgrp.h

matricesDEP =  $(SRCDIR)/matrices.c $(SRCDIR)/frame.h config.h $(SRCDIR)/vector.h $(SRCDIR)/povproto.h $(SRCDIR)/mem.h \
 $(SRCDIR)/matrices.h

mediaDEP =  $(SRCDIR)/media.c $(SRCDIR)/frame.h config.h $(SRCDIR)/vector.h $(SRCDIR)/povproto.h $(SRCDIR)/mem.h \
 $(SRCDIR)/chi2.h $(SRCDIR)/colour.h $(SRCDIR)/povray.h $(SRCDIR)/atmosph.h $(SRCDIR)/camera.h $(SRCDIR)/media.h $(SRCDIR)/point.h \
 $(SRCDIR)/vlbuffer.h $(SRCDIR)/bbox.h $(SRCDIR)/render.h $(SRCDIR)/texture.h $(SRCDIR)/pattern.h $(SRCDIR)/warps.h $(SRCDIR)/pigment.h \
 $(SRCDIR)/objects.h $(SRCDIR)/lighting.h $(SRCDIR)/matrices.h $(SRCDIR)/ray.h $(SRCDIR)/lightgrp.h

memDEP =  $(SRCDIR)/mem.c $(SRCDIR)/frame.h config.h $(SRCDIR)/povproto.h $(SRCDIR)/mem.h $(SRCDIR)/parse.h $(SRCDIR)/povray.h \
 $(SRCDIR)/atmosph.h $(SRCDIR)/camera.h $(SRCDIR)/media.h $(SRCDIR)/point.h $(SRCDIR)/vlbuffer.h $(SRCDIR)/bbox.h $(SRCDIR)/render.h

meshDEP =  $(SRCDIR)/mesh.c $(SRCDIR)/frame.h config.h $(SRCDIR)/vector.h $(SRCDIR)/povproto.h $(SRCDIR)/mem.h $(SRCDIR)/bbox.h \
 $(SRCDIR)/matrices.h $(SRCDIR)/objects.h $(SRCDIR)/mesh.h $(SRCDIR)/texture.h $(SRCDIR)/pattern.h $(SRCDIR)/warps.h $(SRCDIR)/povray.h \
 $(SRCDIR)/atmosph.h $(SRCDIR)/camera.h $(SRCDIR)/media.h $(SRCDIR)/point.h $(SRCDIR)/vlbuffer.h $(SRCDIR)/render.h

normalDEP =  $(SRCDIR)/normal.c $(SRCDIR)/frame.h config.h $(SRCDIR)/vector.h $(SRCDIR)/povproto.h $(SRCDIR)/mem.h \
 $(SRCDIR)/texture.h $(SRCDIR)/pattern.h $(SRCDIR)/warps.h $(SRCDIR)/image.h $(SRCDIR)/matrices.h $(SRCDIR)/normal.h $(SRCDIR)/povray.h \
 $(SRCDIR)/atmosph.h $(SRCDIR)/camera.h $(SRCDIR)/media.h $(SRCDIR)/point.h $(SRCDIR)/vlbuffer.h $(SRCDIR)/bbox.h $(SRCDIR)/render.h \
 $(SRCDIR)/txttest.h $(SRCDIR)/pigment.h

objectsDEP =  $(SRCDIR)/objects.c $(SRCDIR)/frame.h config.h $(SRCDIR)/povray.h $(SRCDIR)/atmosph.h $(SRCDIR)/camera.h \
 $(SRCDIR)/media.h $(SRCDIR)/point.h $(SRCDIR)/vlbuffer.h $(SRCDIR)/bbox.h $(SRCDIR)/render.h $(SRCDIR)/vector.h $(SRCDIR)/povproto.h $(SRCDIR)/mem.h \
 $(SRCDIR)/interior.h $(SRCDIR)/objects.h $(SRCDIR)/texture.h $(SRCDIR)/pattern.h $(SRCDIR)/warps.h $(SRCDIR)/matrices.h

octreeDEP =  $(SRCDIR)/octree.c $(SRCDIR)/frame.h config.h $(SRCDIR)/vector.h $(SRCDIR)/povproto.h $(SRCDIR)/mem.h \
 $(SRCDIR)/povray.h $(SRCDIR)/atmosph.h $(SRCDIR)/camera.h $(SRCDIR)/media.h $(SRCDIR)/point.h $(SRCDIR)/vlbuffer.h $(SRCDIR)/bbox.h \
 $(SRCDIR)/render.h $(SRCDIR)/octree.h $(SRCDIR)/radiosit.h

optinDEP =  $(SRCDIR)/optin.c $(SRCDIR)/frame.h config.h $(SRCDIR)/povproto.h $(SRCDIR)/mem.h $(SRCDIR)/bbox.h \
 $(SRCDIR)/lighting.h $(SRCDIR)/point.h $(SRCDIR)/vlbuffer.h $(SRCDIR)/octree.h $(SRCDIR)/povray.h $(SRCDIR)/atmosph.h $(SRCDIR)/camera.h \
 $(SRCDIR)/media.h $(SRCDIR)/render.h $(SRCDIR)/optin.h $(SRCDIR)/optout.h $(SRCDIR)/parse.h $(SRCDIR)/radiosit.h $(SRCDIR)/tokenize.h $(SRCDIR)/ppm.h \
 $(SRCDIR)/targa.h $(SRCDIR)/userio.h $(SRCDIR)/png_pov.h $(PNGDIR)/png.h $(ZLIBDIR)/zlib.h $(ZLIBDIR)/zconf.h \
 $(PNGDIR)/pngconf.h

optoutDEP =  $(SRCDIR)/optout.c $(SRCDIR)/frame.h config.h $(SRCDIR)/vector.h $(SRCDIR)/povproto.h $(SRCDIR)/mem.h \
 $(SRCDIR)/atmosph.h $(SRCDIR)/bezier.h $(SRCDIR)/blob.h $(SRCDIR)/bsphere.h $(SRCDIR)/bbox.h $(SRCDIR)/cones.h $(SRCDIR)/csg.h $(SRCDIR)/discs.h \
 $(SRCDIR)/fractal.h $(SRCDIR)/hfield.h $(SRCDIR)/boxes.h $(SRCDIR)/lathe.h $(SRCDIR)/bcyl.h $(SRCDIR)/lighting.h $(SRCDIR)/point.h \
 $(SRCDIR)/vlbuffer.h $(SRCDIR)/mesh.h $(SRCDIR)/polysolv.h $(SRCDIR)/objects.h $(SRCDIR)/parse.h $(SRCDIR)/poly.h $(SRCDIR)/polygon.h \
 $(SRCDIR)/octree.h $(SRCDIR)/quadrics.h $(SRCDIR)/planes.h $(SRCDIR)/pgm.h $(SRCDIR)/ppm.h $(SRCDIR)/prism.h $(SRCDIR)/radiosit.h $(SRCDIR)/render.h \
 $(SRCDIR)/sor.h $(SRCDIR)/spheres.h $(SRCDIR)/super.h $(SRCDIR)/targa.h $(SRCDIR)/texture.h $(SRCDIR)/pattern.h $(SRCDIR)/warps.h $(SRCDIR)/torus.h \
 $(SRCDIR)/triangle.h $(SRCDIR)/truetype.h $(SRCDIR)/userio.h $(SRCDIR)/lbuffer.h $(SRCDIR)/vbuffer.h $(SRCDIR)/povray.h $(SRCDIR)/camera.h \
 $(SRCDIR)/media.h $(SRCDIR)/optin.h $(SRCDIR)/optout.h $(SRCDIR)/isosrf.h

parseDEP =  $(SRCDIR)/parse.c $(SRCDIR)/frame.h config.h $(SRCDIR)/vector.h $(SRCDIR)/povproto.h $(SRCDIR)/mem.h \
 $(SRCDIR)/parse.h $(SRCDIR)/parstxtr.h $(SRCDIR)/atmosph.h $(SRCDIR)/interior.h $(SRCDIR)/media.h $(SRCDIR)/point.h $(SRCDIR)/vlbuffer.h \
 $(SRCDIR)/bbox.h $(SRCDIR)/bezier.h $(SRCDIR)/rbezier.h $(SRCDIR)/blob.h $(SRCDIR)/bsphere.h $(SRCDIR)/boxes.h $(SRCDIR)/colour.h $(SRCDIR)/cones.h \
 $(SRCDIR)/csg.h $(SRCDIR)/discs.h $(SRCDIR)/splines.h $(SRCDIR)/express.h $(SRCDIR)/fractal.h $(SRCDIR)/gif.h $(SRCDIR)/hfield.h $(SRCDIR)/iff.h \
 $(SRCDIR)/image.h $(SRCDIR)/lathe.h $(SRCDIR)/bcyl.h $(SRCDIR)/polysolv.h $(SRCDIR)/matrices.h $(SRCDIR)/mesh.h $(SRCDIR)/normal.h \
 $(SRCDIR)/objects.h $(SRCDIR)/octree.h $(SRCDIR)/pigment.h $(SRCDIR)/planes.h $(SRCDIR)/poly.h $(SRCDIR)/polygon.h $(SRCDIR)/povray.h \
 $(SRCDIR)/camera.h $(SRCDIR)/render.h $(SRCDIR)/pgm.h $(SRCDIR)/ppm.h $(SRCDIR)/prism.h $(SRCDIR)/quadrics.h $(SRCDIR)/radiosit.h $(SRCDIR)/sor.h \
 $(SRCDIR)/spheres.h $(SRCDIR)/sphsweep.h $(SRCDIR)/super.h $(SRCDIR)/targa.h $(SRCDIR)/texture.h $(SRCDIR)/pattern.h $(SRCDIR)/warps.h \
 $(SRCDIR)/tokenize.h $(SRCDIR)/torus.h $(SRCDIR)/triangle.h $(SRCDIR)/truetype.h $(SRCDIR)/isosrf.h $(SRCDIR)/f_expr.h $(SRCDIR)/lightgrp.h

parstxtrDEP =  $(SRCDIR)/parstxtr.c $(SRCDIR)/frame.h config.h $(SRCDIR)/vector.h $(SRCDIR)/povproto.h $(SRCDIR)/mem.h \
 $(SRCDIR)/parse.h $(SRCDIR)/parstxtr.h $(SRCDIR)/atmosph.h $(SRCDIR)/interior.h $(SRCDIR)/media.h $(SRCDIR)/point.h $(SRCDIR)/vlbuffer.h \
 $(SRCDIR)/bbox.h $(SRCDIR)/colour.h $(SRCDIR)/express.h $(SRCDIR)/gif.h $(SRCDIR)/iff.h $(SRCDIR)/image.h $(SRCDIR)/matrices.h $(SRCDIR)/normal.h \
 $(SRCDIR)/pigment.h $(SRCDIR)/povray.h $(SRCDIR)/camera.h $(SRCDIR)/render.h $(SRCDIR)/pgm.h $(SRCDIR)/ppm.h $(SRCDIR)/targa.h $(SRCDIR)/png_pov.h \
 $(PNGDIR)/png.h $(ZLIBDIR)/zlib.h $(ZLIBDIR)/zconf.h $(PNGDIR)/pngconf.h $(SRCDIR)/texture.h \
 $(SRCDIR)/pattern.h $(SRCDIR)/warps.h $(SRCDIR)/tokenize.h $(SRCDIR)/isosrf.h

patternDEP =  $(SRCDIR)/pattern.c $(SRCDIR)/frame.h config.h $(SRCDIR)/vector.h $(SRCDIR)/povproto.h $(SRCDIR)/mem.h \
 $(SRCDIR)/matrices.h $(SRCDIR)/pattern.h $(SRCDIR)/povray.h $(SRCDIR)/atmosph.h $(SRCDIR)/camera.h $(SRCDIR)/media.h $(SRCDIR)/point.h \
 $(SRCDIR)/vlbuffer.h $(SRCDIR)/bbox.h $(SRCDIR)/render.h $(SRCDIR)/texture.h $(SRCDIR)/warps.h $(SRCDIR)/image.h $(SRCDIR)/txttest.h \
 $(SRCDIR)/colour.h $(SRCDIR)/isosrf.h

pgmDEP =  $(SRCDIR)/pgm.c $(SRCDIR)/frame.h config.h $(SRCDIR)/povproto.h $(SRCDIR)/mem.h $(SRCDIR)/povray.h $(SRCDIR)/atmosph.h \
 $(SRCDIR)/camera.h $(SRCDIR)/media.h $(SRCDIR)/point.h $(SRCDIR)/vlbuffer.h $(SRCDIR)/bbox.h $(SRCDIR)/render.h $(SRCDIR)/pgm.h $(SRCDIR)/ppm.h

pigmentDEP =  $(SRCDIR)/pigment.c $(SRCDIR)/frame.h config.h $(SRCDIR)/vector.h $(SRCDIR)/povproto.h $(SRCDIR)/mem.h \
 $(SRCDIR)/texture.h $(SRCDIR)/pattern.h $(SRCDIR)/warps.h $(SRCDIR)/colour.h $(SRCDIR)/image.h $(SRCDIR)/matrices.h $(SRCDIR)/pigment.h \
 $(SRCDIR)/txttest.h

planesDEP =  $(SRCDIR)/planes.c $(SRCDIR)/frame.h config.h $(SRCDIR)/povray.h $(SRCDIR)/atmosph.h $(SRCDIR)/camera.h \
 $(SRCDIR)/media.h $(SRCDIR)/point.h $(SRCDIR)/vlbuffer.h $(SRCDIR)/bbox.h $(SRCDIR)/render.h $(SRCDIR)/vector.h $(SRCDIR)/povproto.h $(SRCDIR)/mem.h \
 $(SRCDIR)/matrices.h $(SRCDIR)/objects.h $(SRCDIR)/planes.h

png_povDEP =  $(SRCDIR)/png_pov.c $(SRCDIR)/frame.h config.h $(SRCDIR)/povproto.h $(SRCDIR)/mem.h $(SRCDIR)/povray.h \
 $(SRCDIR)/atmosph.h $(SRCDIR)/camera.h $(SRCDIR)/media.h $(SRCDIR)/point.h $(SRCDIR)/vlbuffer.h $(SRCDIR)/bbox.h $(SRCDIR)/render.h \
 $(SRCDIR)/optout.h $(PNGDIR)/png.h $(ZLIBDIR)/zlib.h $(ZLIBDIR)/zconf.h $(PNGDIR)/pngconf.h \
 $(SRCDIR)/png_pov.h

pointDEP =  $(SRCDIR)/point.c $(SRCDIR)/frame.h config.h $(SRCDIR)/vector.h $(SRCDIR)/povproto.h $(SRCDIR)/mem.h \
 $(SRCDIR)/point.h $(SRCDIR)/vlbuffer.h $(SRCDIR)/bbox.h $(SRCDIR)/matrices.h $(SRCDIR)/objects.h $(SRCDIR)/povray.h $(SRCDIR)/atmosph.h \
 $(SRCDIR)/camera.h $(SRCDIR)/media.h $(SRCDIR)/render.h

polyDEP =  $(SRCDIR)/poly.c $(SRCDIR)/frame.h config.h $(SRCDIR)/vector.h $(SRCDIR)/povproto.h $(SRCDIR)/mem.h $(SRCDIR)/bbox.h \
 $(SRCDIR)/polysolv.h $(SRCDIR)/matrices.h $(SRCDIR)/objects.h $(SRCDIR)/poly.h $(SRCDIR)/povray.h $(SRCDIR)/atmosph.h $(SRCDIR)/camera.h \
 $(SRCDIR)/media.h $(SRCDIR)/point.h $(SRCDIR)/vlbuffer.h $(SRCDIR)/render.h

polygonDEP =  $(SRCDIR)/polygon.c $(SRCDIR)/frame.h config.h $(SRCDIR)/vector.h $(SRCDIR)/povproto.h $(SRCDIR)/mem.h \
 $(SRCDIR)/matrices.h $(SRCDIR)/objects.h $(SRCDIR)/polygon.h $(SRCDIR)/povray.h $(SRCDIR)/atmosph.h $(SRCDIR)/camera.h $(SRCDIR)/media.h \
 $(SRCDIR)/point.h $(SRCDIR)/vlbuffer.h $(SRCDIR)/bbox.h $(SRCDIR)/render.h

polysolvDEP =  $(SRCDIR)/polysolv.c $(SRCDIR)/frame.h config.h $(SRCDIR)/povray.h $(SRCDIR)/atmosph.h \
 $(SRCDIR)/camera.h $(SRCDIR)/media.h $(SRCDIR)/point.h $(SRCDIR)/vlbuffer.h $(SRCDIR)/bbox.h $(SRCDIR)/render.h $(SRCDIR)/povproto.h $(SRCDIR)/mem.h \
 $(SRCDIR)/vector.h $(SRCDIR)/polysolv.h

povrayDEP =  $(SRCDIR)/povray.c $(SRCDIR)/frame.h config.h $(SRCDIR)/povproto.h $(SRCDIR)/mem.h $(SRCDIR)/bezier.h \
 $(SRCDIR)/blob.h $(SRCDIR)/bsphere.h $(SRCDIR)/bbox.h $(SRCDIR)/cones.h $(SRCDIR)/csg.h $(SRCDIR)/discs.h $(SRCDIR)/express.h $(SRCDIR)/fractal.h \
 $(SRCDIR)/hfield.h $(SRCDIR)/boxes.h $(SRCDIR)/isosrf.h $(SRCDIR)/lathe.h $(SRCDIR)/bcyl.h $(SRCDIR)/lighting.h $(SRCDIR)/point.h \
 $(SRCDIR)/vlbuffer.h $(SRCDIR)/mesh.h $(SRCDIR)/polysolv.h $(SRCDIR)/objects.h $(SRCDIR)/octree.h $(SRCDIR)/parse.h $(SRCDIR)/pigment.h \
 $(SRCDIR)/poly.h $(SRCDIR)/polygon.h $(SRCDIR)/povray.h $(SRCDIR)/atmosph.h $(SRCDIR)/camera.h $(SRCDIR)/media.h $(SRCDIR)/render.h $(SRCDIR)/optin.h \
 $(SRCDIR)/optout.h $(SRCDIR)/quadrics.h $(SRCDIR)/planes.h $(SRCDIR)/pgm.h $(SRCDIR)/png_pov.h $(PNGDIR)/png.h $(ZLIBDIR)/zlib.h \
 $(ZLIBDIR)/zconf.h $(PNGDIR)/pngconf.h $(SRCDIR)/ppm.h $(SRCDIR)/prism.h $(SRCDIR)/radiosit.h $(SRCDIR)/sor.h \
 $(SRCDIR)/spheres.h $(SRCDIR)/sphsweep.h $(SRCDIR)/super.h $(SRCDIR)/targa.h $(SRCDIR)/texture.h $(SRCDIR)/pattern.h $(SRCDIR)/warps.h \
 $(SRCDIR)/tokenize.h $(SRCDIR)/torus.h $(SRCDIR)/triangle.h $(SRCDIR)/truetype.h $(SRCDIR)/userio.h $(SRCDIR)/lbuffer.h $(SRCDIR)/vbuffer.h

ppmDEP =  $(SRCDIR)/ppm.c $(SRCDIR)/frame.h config.h $(SRCDIR)/povproto.h $(SRCDIR)/mem.h $(SRCDIR)/povray.h $(SRCDIR)/atmosph.h \
 $(SRCDIR)/camera.h $(SRCDIR)/media.h $(SRCDIR)/point.h $(SRCDIR)/vlbuffer.h $(SRCDIR)/bbox.h $(SRCDIR)/render.h $(SRCDIR)/optout.h $(SRCDIR)/pgm.h \
 $(SRCDIR)/ppm.h

prismDEP =  $(SRCDIR)/prism.c $(SRCDIR)/frame.h config.h $(SRCDIR)/povray.h $(SRCDIR)/atmosph.h $(SRCDIR)/camera.h \
 $(SRCDIR)/media.h $(SRCDIR)/point.h $(SRCDIR)/vlbuffer.h $(SRCDIR)/bbox.h $(SRCDIR)/render.h $(SRCDIR)/vector.h $(SRCDIR)/povproto.h $(SRCDIR)/mem.h \
 $(SRCDIR)/matrices.h $(SRCDIR)/objects.h $(SRCDIR)/polysolv.h $(SRCDIR)/prism.h

quadricsDEP =  $(SRCDIR)/quadrics.c $(SRCDIR)/frame.h config.h $(SRCDIR)/povray.h $(SRCDIR)/atmosph.h \
 $(SRCDIR)/camera.h $(SRCDIR)/media.h $(SRCDIR)/point.h $(SRCDIR)/vlbuffer.h $(SRCDIR)/bbox.h $(SRCDIR)/render.h $(SRCDIR)/vector.h \
 $(SRCDIR)/povproto.h $(SRCDIR)/mem.h $(SRCDIR)/objects.h $(SRCDIR)/matrices.h $(SRCDIR)/planes.h $(SRCDIR)/quadrics.h

quaternDEP =  $(SRCDIR)/quatern.c $(SRCDIR)/frame.h config.h $(SRCDIR)/povray.h $(SRCDIR)/atmosph.h $(SRCDIR)/camera.h \
 $(SRCDIR)/media.h $(SRCDIR)/point.h $(SRCDIR)/vlbuffer.h $(SRCDIR)/bbox.h $(SRCDIR)/render.h $(SRCDIR)/vector.h $(SRCDIR)/povproto.h $(SRCDIR)/mem.h \
 $(SRCDIR)/fractal.h $(SRCDIR)/quatern.h $(SRCDIR)/spheres.h

rad_dataDEP =  $(SRCDIR)/rad_data.c $(SRCDIR)/frame.h config.h $(SRCDIR)/octree.h $(SRCDIR)/radiosit.h

radiositDEP =  $(SRCDIR)/radiosit.c \
 C:\Cygnus\B19\H-i386-cygwin32\lib\gcc-lib\i386-cygwin32\egcs-2.91.57\..\..\..\..\i386-cygwin32\include\string.h \
 C:\Cygnus\B19\H-i386-cygwin32\lib\gcc-lib\i386-cygwin32\egcs-2.91.57\..\..\..\..\i386-cygwin32\include\_ansi.h \
 $(SRCDIR)/frame.h config.h $(SRCDIR)/lighting.h $(SRCDIR)/point.h $(SRCDIR)/vlbuffer.h $(SRCDIR)/bbox.h $(SRCDIR)/vector.h \
 $(SRCDIR)/povray.h $(SRCDIR)/atmosph.h $(SRCDIR)/camera.h $(SRCDIR)/media.h $(SRCDIR)/render.h $(SRCDIR)/optin.h $(SRCDIR)/povproto.h $(SRCDIR)/mem.h \
 $(SRCDIR)/texture.h $(SRCDIR)/pattern.h $(SRCDIR)/warps.h $(SRCDIR)/octree.h $(SRCDIR)/radiosit.h $(SRCDIR)/ray.h

rayDEP =  $(SRCDIR)/ray.c $(SRCDIR)/frame.h config.h $(SRCDIR)/vector.h $(SRCDIR)/povproto.h $(SRCDIR)/mem.h $(SRCDIR)/povray.h \
 $(SRCDIR)/atmosph.h $(SRCDIR)/camera.h $(SRCDIR)/media.h $(SRCDIR)/point.h $(SRCDIR)/vlbuffer.h $(SRCDIR)/bbox.h $(SRCDIR)/render.h \
 $(SRCDIR)/interior.h $(SRCDIR)/ray.h $(SRCDIR)/texture.h $(SRCDIR)/pattern.h $(SRCDIR)/warps.h

rbezierDEP =  $(SRCDIR)/rbezier.c $(SRCDIR)/frame.h config.h $(SRCDIR)/vector.h $(SRCDIR)/povproto.h $(SRCDIR)/mem.h \
 $(SRCDIR)/bezier.h $(SRCDIR)/matrices.h $(SRCDIR)/objects.h $(SRCDIR)/povray.h $(SRCDIR)/atmosph.h $(SRCDIR)/camera.h $(SRCDIR)/media.h \
 $(SRCDIR)/point.h $(SRCDIR)/vlbuffer.h $(SRCDIR)/bbox.h $(SRCDIR)/render.h $(SRCDIR)/rbezier.h

renderDEP =  $(SRCDIR)/render.c $(SRCDIR)/frame.h config.h $(SRCDIR)/vector.h $(SRCDIR)/povproto.h $(SRCDIR)/mem.h \
 $(SRCDIR)/bbox.h $(SRCDIR)/chi2.h $(SRCDIR)/colour.h $(SRCDIR)/interior.h $(SRCDIR)/media.h $(SRCDIR)/point.h $(SRCDIR)/vlbuffer.h \
 $(SRCDIR)/lighting.h $(SRCDIR)/normal.h $(SRCDIR)/objects.h $(SRCDIR)/octree.h $(SRCDIR)/optout.h $(SRCDIR)/povray.h $(SRCDIR)/atmosph.h \
 $(SRCDIR)/camera.h $(SRCDIR)/render.h $(SRCDIR)/radiosit.h $(SRCDIR)/ray.h $(SRCDIR)/targa.h $(SRCDIR)/texture.h $(SRCDIR)/pattern.h \
 $(SRCDIR)/warps.h $(SRCDIR)/vbuffer.h $(SRCDIR)/userio.h

sorDEP =  $(SRCDIR)/sor.c $(SRCDIR)/frame.h config.h $(SRCDIR)/povray.h $(SRCDIR)/atmosph.h $(SRCDIR)/camera.h $(SRCDIR)/media.h \
 $(SRCDIR)/point.h $(SRCDIR)/vlbuffer.h $(SRCDIR)/bbox.h $(SRCDIR)/render.h $(SRCDIR)/vector.h $(SRCDIR)/povproto.h $(SRCDIR)/mem.h \
 $(SRCDIR)/polysolv.h $(SRCDIR)/matrices.h $(SRCDIR)/objects.h $(SRCDIR)/sor.h $(SRCDIR)/bcyl.h

spheresDEP =  $(SRCDIR)/spheres.c $(SRCDIR)/frame.h config.h $(SRCDIR)/povray.h $(SRCDIR)/atmosph.h $(SRCDIR)/camera.h \
 $(SRCDIR)/media.h $(SRCDIR)/point.h $(SRCDIR)/vlbuffer.h $(SRCDIR)/bbox.h $(SRCDIR)/render.h $(SRCDIR)/vector.h $(SRCDIR)/povproto.h $(SRCDIR)/mem.h \
 $(SRCDIR)/matrices.h $(SRCDIR)/objects.h $(SRCDIR)/spheres.h

sphsweepDEP =  $(SRCDIR)/sphsweep.c $(SRCDIR)/frame.h config.h $(SRCDIR)/povray.h $(SRCDIR)/atmosph.h \
 $(SRCDIR)/camera.h $(SRCDIR)/media.h $(SRCDIR)/point.h $(SRCDIR)/vlbuffer.h $(SRCDIR)/bbox.h $(SRCDIR)/render.h $(SRCDIR)/vector.h \
 $(SRCDIR)/povproto.h $(SRCDIR)/mem.h $(SRCDIR)/matrices.h $(SRCDIR)/objects.h $(SRCDIR)/polysolv.h $(SRCDIR)/sphsweep.h

splinesDEP =  $(SRCDIR)/splines.c $(SRCDIR)/frame.h config.h $(SRCDIR)/mem.h $(SRCDIR)/splines.h

superDEP =  $(SRCDIR)/super.c $(SRCDIR)/frame.h config.h $(SRCDIR)/povray.h $(SRCDIR)/atmosph.h $(SRCDIR)/camera.h \
 $(SRCDIR)/media.h $(SRCDIR)/point.h $(SRCDIR)/vlbuffer.h $(SRCDIR)/bbox.h $(SRCDIR)/render.h $(SRCDIR)/vector.h $(SRCDIR)/povproto.h $(SRCDIR)/mem.h \
 $(SRCDIR)/matrices.h $(SRCDIR)/objects.h $(SRCDIR)/super.h

targaDEP =  $(SRCDIR)/targa.c $(SRCDIR)/frame.h config.h $(SRCDIR)/povproto.h $(SRCDIR)/mem.h $(SRCDIR)/povray.h \
 $(SRCDIR)/atmosph.h $(SRCDIR)/camera.h $(SRCDIR)/media.h $(SRCDIR)/point.h $(SRCDIR)/vlbuffer.h $(SRCDIR)/bbox.h $(SRCDIR)/render.h $(SRCDIR)/targa.h

textureDEP =  $(SRCDIR)/texture.c $(SRCDIR)/frame.h config.h $(SRCDIR)/povray.h $(SRCDIR)/atmosph.h $(SRCDIR)/camera.h \
 $(SRCDIR)/media.h $(SRCDIR)/point.h $(SRCDIR)/vlbuffer.h $(SRCDIR)/bbox.h $(SRCDIR)/render.h $(SRCDIR)/vector.h $(SRCDIR)/povproto.h $(SRCDIR)/mem.h \
 $(SRCDIR)/texture.h $(SRCDIR)/pattern.h $(SRCDIR)/warps.h $(SRCDIR)/image.h $(SRCDIR)/matrices.h $(SRCDIR)/normal.h $(SRCDIR)/pigment.h

tokenizeDEP =  $(SRCDIR)/tokenize.c $(SRCDIR)/frame.h config.h $(SRCDIR)/povray.h $(SRCDIR)/atmosph.h \
 $(SRCDIR)/camera.h $(SRCDIR)/media.h $(SRCDIR)/point.h $(SRCDIR)/vlbuffer.h $(SRCDIR)/bbox.h $(SRCDIR)/render.h $(SRCDIR)/povproto.h $(SRCDIR)/mem.h \
 $(SRCDIR)/parse.h $(SRCDIR)/colour.h $(SRCDIR)/texture.h $(SRCDIR)/pattern.h $(SRCDIR)/warps.h $(SRCDIR)/tokenize.h $(SRCDIR)/express.h \
 $(SRCDIR)/matrices.h

torusDEP =  $(SRCDIR)/torus.c $(SRCDIR)/frame.h config.h $(SRCDIR)/povray.h $(SRCDIR)/atmosph.h $(SRCDIR)/camera.h \
 $(SRCDIR)/media.h $(SRCDIR)/point.h $(SRCDIR)/vlbuffer.h $(SRCDIR)/bbox.h $(SRCDIR)/render.h $(SRCDIR)/vector.h $(SRCDIR)/povproto.h $(SRCDIR)/mem.h \
 $(SRCDIR)/polysolv.h $(SRCDIR)/matrices.h $(SRCDIR)/objects.h $(SRCDIR)/torus.h

triangleDEP =  $(SRCDIR)/triangle.c $(SRCDIR)/frame.h config.h $(SRCDIR)/povray.h $(SRCDIR)/atmosph.h \
 $(SRCDIR)/camera.h $(SRCDIR)/media.h $(SRCDIR)/point.h $(SRCDIR)/vlbuffer.h $(SRCDIR)/bbox.h $(SRCDIR)/render.h $(SRCDIR)/vector.h \
 $(SRCDIR)/povproto.h $(SRCDIR)/mem.h $(SRCDIR)/matrices.h $(SRCDIR)/objects.h $(SRCDIR)/triangle.h

truetypeDEP =  $(SRCDIR)/truetype.c $(SRCDIR)/frame.h config.h $(SRCDIR)/povray.h $(SRCDIR)/atmosph.h \
 $(SRCDIR)/camera.h $(SRCDIR)/media.h $(SRCDIR)/point.h $(SRCDIR)/vlbuffer.h $(SRCDIR)/bbox.h $(SRCDIR)/render.h $(SRCDIR)/vector.h \
 $(SRCDIR)/povproto.h $(SRCDIR)/mem.h $(SRCDIR)/matrices.h $(SRCDIR)/objects.h $(SRCDIR)/truetype.h $(SRCDIR)/csg.h

txttestDEP =  $(SRCDIR)/txttest.c $(SRCDIR)/frame.h config.h $(SRCDIR)/vector.h $(SRCDIR)/povproto.h $(SRCDIR)/mem.h \
 $(SRCDIR)/texture.h $(SRCDIR)/pattern.h $(SRCDIR)/warps.h $(SRCDIR)/povray.h $(SRCDIR)/atmosph.h $(SRCDIR)/camera.h $(SRCDIR)/media.h \
 $(SRCDIR)/point.h $(SRCDIR)/vlbuffer.h $(SRCDIR)/bbox.h $(SRCDIR)/render.h $(SRCDIR)/txttest.h

userioDEP =  $(SRCDIR)/userio.c $(SRCDIR)/frame.h config.h $(SRCDIR)/vector.h $(SRCDIR)/povproto.h $(SRCDIR)/mem.h \
 $(SRCDIR)/parse.h $(SRCDIR)/povray.h $(SRCDIR)/atmosph.h $(SRCDIR)/camera.h $(SRCDIR)/media.h $(SRCDIR)/point.h $(SRCDIR)/vlbuffer.h $(SRCDIR)/bbox.h \
 $(SRCDIR)/render.h $(SRCDIR)/tokenize.h $(SRCDIR)/userio.h

vbufferDEP =  $(SRCDIR)/vbuffer.c $(SRCDIR)/frame.h config.h $(SRCDIR)/vector.h $(SRCDIR)/povproto.h $(SRCDIR)/mem.h \
 $(SRCDIR)/bbox.h $(SRCDIR)/boxes.h $(SRCDIR)/hfield.h $(SRCDIR)/lighting.h $(SRCDIR)/point.h $(SRCDIR)/vlbuffer.h $(SRCDIR)/matrices.h \
 $(SRCDIR)/objects.h $(SRCDIR)/povray.h $(SRCDIR)/atmosph.h $(SRCDIR)/camera.h $(SRCDIR)/media.h $(SRCDIR)/render.h $(SRCDIR)/triangle.h \
 $(SRCDIR)/vbuffer.h $(SRCDIR)/userio.h $(SRCDIR)/isosrf.h

vlbufferDEP =  $(SRCDIR)/vlbuffer.c $(SRCDIR)/frame.h config.h $(SRCDIR)/vector.h $(SRCDIR)/povproto.h $(SRCDIR)/mem.h \
 $(SRCDIR)/bbox.h $(SRCDIR)/vlbuffer.h

warpsDEP =  $(SRCDIR)/warps.c $(SRCDIR)/frame.h config.h $(SRCDIR)/vector.h $(SRCDIR)/povproto.h $(SRCDIR)/mem.h \
 $(SRCDIR)/matrices.h $(SRCDIR)/warps.h $(SRCDIR)/pattern.h $(SRCDIR)/texture.h

unixDEP                 = unix.c               \
                          config.h             \
                          $(SRCDIR)/frame.h    \
                          $(SRCDIR)/povproto.h \
			  $(SRCDIR)/povray.h   \
			  $(SRCDIR)/optin.h

svgaDEP                 = svga.c               \
                          config.h             \
                          unixconf.h           \
                          $(SRCDIR)/frame.h    \
                          $(SRCDIR)/povproto.h \
                          $(SRCDIR)/povray.h

xwindowsDEP             = xwindows.c           \
                          config.h             \
                          unixconf.h           \
                          $(SRCDIR)/frame.h    \
                          xpovicon.xbm         \
                          xpovmask.xbm         \
                          $(SRCDIR)/povproto.h

config.h:
	@echo
	@echo 'You need to select which executable version you want'
	@echo 'to make (xwin, svga, or unix), and then use the'
	@echo 'appropriate make command to create the config.h file.'
	@echo 'Use "make newunix" to make the text-only version.'
	@echo 'Use "make newxwin" to make the X Windows version.'
	@echo 'Use "make newsvga" to make the SVGAlib version.'
	@echo
	@echo 'If you want to build the X-Windows version, you should make'
	@echo 'sure that the X11 variable is set correctly.  It is currently'
	@echo 'set to '$(X11)'.  By default this is set at the top of the'
	@echo 'makefile, but can also be set in your shell startup script.'
	@echo
	@echo 'Both the X Windows and SVGAlib versions also use the'
	@echo 'unixconf.h file, so it must still be present when'
	@echo 'compiling the display capable versions of POV-Ray.'
	@echo
	@false

unix:	$(UTARGET)
	@echo

$(UTARGET):	$(POVOBJS) $(ODIR)/unix$(OBJ)
	$(CC) $(POVOBJS) $(ODIR)/unix$(OBJ) $(LFLAGS) -o $(UTARGET)

svga:	$(STARGET)
	@echo

$(STARGET):	$(POVOBJS) $(ODIR)/svga$(OBJ) $(ODIR)/unix$(OBJ)
	$(CC) $(POVOBJS) $(ODIR)/svga$(OBJ) $(ODIR)/unix$(OBJ) $(LFLAGS) $(SLIBLIB) -o $(STARGET)

xwin:	$(XTARGET)
	@echo

$(XTARGET):	$(POVOBJS) $(ODIR)/xwindows$(OBJ) $(ODIR)/unix$(OBJ)
	$(CC) $(POVOBJS) $(ODIR)/xwindows$(OBJ) $(ODIR)/unix$(OBJ) $(LFLAGS) $(XLIBLIB) -o $(XTARGET)

# Only these files need to be rebuilt if the display type was changed
DISPOBJS = $(ODIR)/povray$(OBJ) $(ODIR)/render$(OBJ) \
           $(ODIR)/userio$(OBJ) $(ODIR)/vbuffer$(OBJ)

newunix:
	-@$(RM) $(DISPOBJS)
	-@cp unixconf.h config.h
	-@touch $(ODIR)/*$(OBJ)
	-@$(MAKE) unix

newsvga:
	-@$(RM) $(DISPOBJS)
	-@cp svgaconf.h config.h
	-@touch $(ODIR)/*$(OBJ)
	-@$(MAKE) svga

newxwin:
	-@$(RM) $(DISPOBJS)
	-@cp xwinconf.h config.h
	-@touch $(ODIR)/*$(OBJ)
	-@$(MAKE) xwin

clean:
	-@$(RM) $(POVOBJS) $(ODIR)/unix$(OBJ) $(ODIR)/xwindows$(OBJ)
	-@$(RM) $(ODIR)/svga$(OBJ) $(UTARGET) $(XTARGET) $(STARGET)

$(ODIR)/atmosph$(OBJ)  : $(atmosphDEP)
	$(CC) $(CFLAGS) $(SRCDIR)/atmosph.c -o $@

$(ODIR)/bbox$(OBJ)     : $(bboxDEP)
	$(CC) $(CFLAGS) $(SRCDIR)/bbox.c -o $@

$(ODIR)/bcyl$(OBJ)     : $(bcylDEP)
	$(CC) $(CFLAGS) $(SRCDIR)/bcyl.c -o $@

$(ODIR)/bezier$(OBJ)   : $(bezierDEP)
	$(CC) $(CFLAGS) $(SRCDIR)/bezier.c -o $@

$(ODIR)/blob$(OBJ)     : $(blobDEP)
	$(CC) $(CFLAGS) $(SRCDIR)/blob.c -o $@

$(ODIR)/boxes$(OBJ)    : $(boxesDEP)
	$(CC) $(CFLAGS) $(SRCDIR)/boxes.c -o $@

$(ODIR)/bsphere$(OBJ)  : $(bsphereDEP)
	$(CC) $(CFLAGS) $(SRCDIR)/bsphere.c -o $@

$(ODIR)/camera$(OBJ)   : $(cameraDEP)
	$(CC) $(CFLAGS) $(SRCDIR)/camera.c -o $@

$(ODIR)/chi2$(OBJ)     : $(chi2DEP)
	$(CC) $(CFLAGS) $(SRCDIR)/chi2.c -o $@

$(ODIR)/colour$(OBJ)   : $(colourDEP)
	$(CC) $(CFLAGS) $(SRCDIR)/colour.c -o $@

$(ODIR)/cones$(OBJ)    : $(conesDEP)
	$(CC) $(CFLAGS) $(SRCDIR)/cones.c -o $@

$(ODIR)/csg$(OBJ)      : $(csgDEP)
	$(CC) $(CFLAGS) $(SRCDIR)/csg.c -o $@

$(ODIR)/discs$(OBJ)    : $(discsDEP)
	$(CC) $(CFLAGS) $(SRCDIR)/discs.c -o $@

$(ODIR)/express$(OBJ)  : $(expressDEP)
	$(CC) $(CFLAGS) $(SRCDIR)/express.c -o $@

$(ODIR)/fractal$(OBJ)  : $(fractalDEP)
	$(CC) $(CFLAGS) $(SRCDIR)/fractal.c -o $@

$(ODIR)/gif$(OBJ)      : $(gifDEP)
	$(CC) $(CFLAGS) $(SRCDIR)/gif.c -o $@

$(ODIR)/gifdecod$(OBJ) : $(gifdecodDEP)
	$(CC) $(CFLAGS) $(SRCDIR)/gifdecod.c -o $@

$(ODIR)/hcmplx$(OBJ)   : $(hcmplxDEP)
	$(CC) $(CFLAGS) $(SRCDIR)/hcmplx.c -o $@

$(ODIR)/hfield$(OBJ)   : $(hfieldDEP)
	$(CC) $(CFLAGS) $(SRCDIR)/hfield.c -o $@

$(ODIR)/iff$(OBJ)      : $(iffDEP)
	$(CC) $(CFLAGS) $(SRCDIR)/iff.c -o $@

$(ODIR)/image$(OBJ)    : $(imageDEP)
	$(CC) $(CFLAGS) $(SRCDIR)/image.c -o $@

$(ODIR)/interior$(OBJ) : $(interiorDEP)
	$(CC) $(CFLAGS) $(SRCDIR)/interior.c -o $@

$(ODIR)/lathe$(OBJ)    : $(latheDEP)
	$(CC) $(CFLAGS) $(SRCDIR)/lathe.c -o $@

$(ODIR)/lbuffer$(OBJ)  : $(lbufferDEP)
	$(CC) $(CFLAGS) $(SRCDIR)/lbuffer.c -o $@

$(ODIR)/lighting$(OBJ) : $(lightingDEP)
	$(CC) $(CFLAGS) $(SRCDIR)/lighting.c -o $@

$(ODIR)/matrices$(OBJ) : $(matricesDEP)
	$(CC) $(CFLAGS) $(SRCDIR)/matrices.c -o $@

$(ODIR)/media$(OBJ)    : $(mediaDEP)
	$(CC) $(CFLAGS) $(SRCDIR)/media.c -o $@

$(ODIR)/mem$(OBJ)      : $(memDEP)
	$(CC) $(CFLAGS) $(SRCDIR)/mem.c -o $@

$(ODIR)/mesh$(OBJ)     : $(meshDEP)
	$(CC) $(CFLAGS) $(SRCDIR)/mesh.c -o $@

$(ODIR)/normal$(OBJ)   : $(normalDEP)
	$(CC) $(CFLAGS) $(SRCDIR)/normal.c -o $@

$(ODIR)/objects$(OBJ)  : $(objectsDEP)
	$(CC) $(CFLAGS) $(SRCDIR)/objects.c -o $@

$(ODIR)/octree$(OBJ)   : $(octreeDEP)
	$(CC) $(CFLAGS) $(SRCDIR)/octree.c -o $@

$(ODIR)/optin$(OBJ)    : $(optinDEP)
	$(CC) $(CFLAGS) $(SRCDIR)/optin.c -o $@

$(ODIR)/optout$(OBJ)   : $(optoutDEP)
	$(CC) $(CFLAGS) $(SRCDIR)/optout.c -o $@

$(ODIR)/parse$(OBJ)    : $(parseDEP)
	$(CC) $(CFLAGS) $(SRCDIR)/parse.c -o $@

$(ODIR)/parstxtr$(OBJ) : $(parstxtrDEP)
	$(CC) $(CFLAGS) $(SRCDIR)/parstxtr.c -o $@

$(ODIR)/pattern$(OBJ)  : $(patternDEP)
	$(CC) $(CFLAGS) $(SRCDIR)/pattern.c -o $@

$(ODIR)/pgm$(OBJ)      : $(pgmDEP)
	$(CC) $(CFLAGS) $(SRCDIR)/pgm.c -o $@

$(ODIR)/pigment$(OBJ)  : $(pigmentDEP)
	$(CC) $(CFLAGS) $(SRCDIR)/pigment.c -o $@

$(ODIR)/planes$(OBJ)   : $(planesDEP)
	$(CC) $(CFLAGS) $(SRCDIR)/planes.c -o $@

$(ODIR)/point$(OBJ)    : $(pointDEP)
	$(CC) $(CFLAGS) $(SRCDIR)/point.c -o $@

$(ODIR)/poly$(OBJ)     : $(polyDEP)
	$(CC) $(CFLAGS) $(SRCDIR)/poly.c -o $@

$(ODIR)/polygon$(OBJ)  : $(polygonDEP)
	$(CC) $(CFLAGS) $(SRCDIR)/polygon.c -o $@

$(ODIR)/polysolv$(OBJ) : $(polysolvDEP)
	$(CC) $(CFLAGS) $(SRCDIR)/polysolv.c -o $@

$(ODIR)/povray$(OBJ)   : $(povrayDEP)
	$(CC) $(CFLAGS) $(SRCDIR)/povray.c -o $@

$(ODIR)/png_pov$(OBJ)  : $(png_povDEP)
	$(CC) $(CFLAGS) $(SRCDIR)/png_pov.c -o $@

$(ODIR)/ppm$(OBJ)      : $(ppmDEP)
	$(CC) $(CFLAGS) $(SRCDIR)/ppm.c -o $@

$(ODIR)/prism$(OBJ)    : $(prismDEP)
	$(CC) $(CFLAGS) $(SRCDIR)/prism.c -o $@

$(ODIR)/quadrics$(OBJ) : $(quadricsDEP)
	$(CC) $(CFLAGS) $(SRCDIR)/quadrics.c -o $@

$(ODIR)/quatern$(OBJ)  : $(quaternDEP)
	$(CC) $(CFLAGS) $(SRCDIR)/quatern.c -o $@

$(ODIR)/rad_data$(OBJ) : $(rad_dataDEP)
	$(CC) $(CFLAGS) $(SRCDIR)/rad_data.c -o $@

$(ODIR)/radiosit$(OBJ) : $(radiositDEP)
	$(CC) $(CFLAGS) $(SRCDIR)/radiosit.c -o $@

$(ODIR)/ray$(OBJ)      : $(rayDEP)
	$(CC) $(CFLAGS) $(SRCDIR)/ray.c -o $@

$(ODIR)/render$(OBJ)   : $(renderDEP)
	$(CC) $(CFLAGS) $(SRCDIR)/render.c -o $@

$(ODIR)/sor$(OBJ)      : $(sorDEP)
	$(CC) $(CFLAGS) $(SRCDIR)/sor.c -o $@

$(ODIR)/spheres$(OBJ)  : $(spheresDEP)
	$(CC) $(CFLAGS) $(SRCDIR)/spheres.c -o $@

$(ODIR)/super$(OBJ)    : $(superDEP)
	$(CC) $(CFLAGS) $(SRCDIR)/super.c -o $@

$(ODIR)/svga$(OBJ) : $(svgaDEP)
	$(CC) $(CFLAGS) svga.c -o $@

$(ODIR)/targa$(OBJ)    : $(targaDEP)
	$(CC) $(CFLAGS) $(SRCDIR)/targa.c -o $@

$(ODIR)/texture$(OBJ)  : $(textureDEP)
	$(CC) $(CFLAGS) $(SRCDIR)/texture.c -o $@

$(ODIR)/tokenize$(OBJ) : $(tokenizeDEP)
	$(CC) $(CFLAGS) $(SRCDIR)/tokenize.c -o $@

$(ODIR)/torus$(OBJ)    : $(torusDEP)
	$(CC) $(CFLAGS) $(SRCDIR)/torus.c -o $@

$(ODIR)/triangle$(OBJ) : $(triangleDEP)
	$(CC) $(CFLAGS) $(SRCDIR)/triangle.c -o $@

$(ODIR)/truetype$(OBJ) : $(truetypeDEP)
	$(CC) $(CFLAGS) $(SRCDIR)/truetype.c -o $@

$(ODIR)/txttest$(OBJ)  : $(txttestDEP)
	$(CC) $(CFLAGS) $(SRCDIR)/txttest.c -o $@

$(ODIR)/unix$(OBJ)     : $(unixDEP)
	$(CC) $(CFLAGS) unix.c -o $@

$(ODIR)/userio$(OBJ)   : $(userioDEP)
	$(CC) $(CFLAGS) $(SRCDIR)/userio.c -o $@

$(ODIR)/vbuffer$(OBJ)  : $(vbufferDEP)
	$(CC) $(CFLAGS) $(SRCDIR)/vbuffer.c -o $@

$(ODIR)/vlbuffer$(OBJ) : $(vlbufferDEP)
	$(CC) $(CFLAGS) $(SRCDIR)/vlbuffer.c -o $@

$(ODIR)/warps$(OBJ)    : $(warpsDEP)
	$(CC) $(CFLAGS) $(SRCDIR)/warps.c -o $@

$(ODIR)/xwindows$(OBJ) : $(xwindowsDEP)
	$(CC) $(CFLAGS) $(XLIBINC) xwindows.c -o $@

$(ODIR)/bezier2$(OBJ)   : $(bezier2DEP)
	$(CC) $(CFLAGS) $(SRCDIR)/bezier2.c -o $@

$(ODIR)/f_expr$(OBJ)    : $(f_exprDEP)
	$(CC) $(CFLAGS) $(SRCDIR)/f_expr.c -o $@

$(ODIR)/f_func$(OBJ)    : $(f_funcDEP)
	$(CC) $(CFLAGS) $(SRCDIR)/f_func.c -o $@

$(ODIR)/f_param$(OBJ)   : $(f_paramDEP)
	$(CC) $(CFLAGS) $(SRCDIR)/f_param.c -o $@

$(ODIR)/isofunc$(OBJ)   : $(isofuncDEP)
	$(CC) $(CFLAGS) $(SRCDIR)/isofunc.c -o $@

$(ODIR)/isosurf$(OBJ)   : $(isosurfDEP)
	$(CC) $(CFLAGS) $(SRCDIR)/isosurf.c -o $@

$(ODIR)/lightgrp$(OBJ)  : $(lightgrpDEP)
	$(CC) $(CFLAGS) $(SRCDIR)/lightgrp.c -o $@

$(ODIR)/rbezier$(OBJ)   : $(rbezierDEP)
	$(CC) $(CFLAGS) $(SRCDIR)/rbezier.c -o $@

$(ODIR)/sphsweep$(OBJ)  : $(sphsweepDEP)
	$(CC) $(CFLAGS) $(SRCDIR)/sphsweep.c -o $@

$(ODIR)/splines$(OBJ)   : $(splinesDEP)
	$(CC) $(CFLAGS) $(SRCDIR)/splines.c -o $@
