DMS_INCLUDE_DIR = .
DMS_LIB_DIR = .
CFLAGS = -O -I/home/dms/depape/include -I$(DMS_INCLUDE_DIR)
CPPFLAGS = $(CFLAGS)
LFLAGS = -O
LIBS = -L$(DMS_LIB_DIR) -ldms \
	-lglut -lGLU -lGL -L/usr/X11R6/lib -lX11 -lm -L/home/dms/depape/lib -limage -ltiff

ALLTARGETS = libdms.a gltest vectortest vector4test ivtest squaretest

all: $(ALLTARGETS)

clean:
	rm -f $(ALLTARGETS) *.o

install: libdms.a
	cp libdms.a ../lib
	cp dms/*.h ../include/dms


LIBDMS_OBJECTS = Vector2.o Vector3.o Vector4.o Util.o Random.o \
    Color.o Light.o Material.o Transparency.o \
    Image.o FileImage.o TIFFImage.o JPEGImage.o \
    Texture.o Texture2D.o Texture1D.o \
    Camera.o PerspCamera.o OrthoCamera.o \
    Transform.o SimpleTransform.o \
    Object.o QuadricObject.o Square.o InventorModel.o

libdms.a: $(LIBDMS_OBJECTS)
	rm -f libdms.a
	ar -rv libdms.a $(LIBDMS_OBJECTS)


Vector2.o: Vector2.cpp dms/Vector2.h
Vector3.o: Vector3.cpp dms/Vector3.h
Vector4.o: Vector4.cpp dms/Vector4.h
Camera.o: Camera.cpp dms/Camera.h
PerspCamera.o: PerspCamera.cpp dms/PerspCamera.h
OrthoCamera.o: OrthoCamera.cpp dms/OrthoCamera.h
Light.o: Light.cpp dms/Light.h
Material.o: Material.cpp dms/Material.h
Image.o: Image.cpp dms/Image.h
TIFFImage.o: TIFFImage.cpp dms/TIFFImage.h
Texture.o: Texture.cpp dms/Texture.h
Texture2D.o: Texture2D.cpp dms/Texture2D.h
Object.o: Object.cpp dms/Object.h
QuadricObject.o: QuadricObject.cpp dms/QuadricObject.h


gltest: gltest.o libdms.a
	c++ $(LFLAGS) -o gltest gltest.o  $(LIBS)

squaretest: squaretest.o libdms.a
	c++ $(LFLAGS) -o squaretest squaretest.o  $(LIBS)

ivtest: ivtest.o libdms.a
	c++ $(LFLAGS) -o ivtest ivtest.o  $(LIBS) -lInventor -lInventorXt

vectortest: vectortest.o libdms.a
	c++ $(LFLAGS) -o vectortest vectortest.o  $(LIBS)

vector4test: vector4test.o libdms.a
	c++ $(LFLAGS) -o vector4test vector4test.o  $(LIBS)
