# SCCSid "@(#)Rmakefile 2.3 9/24/92 LBL"

#
#  Compiles for octree conversion program
#
#     The compile define "STRICT" enforces strict intersection calculations
#  so that no cube which does not intersect an object contains that object.
#  Otherwise, a somewhat faster more lax approach is taken by certain routines.
#

OPT = -O
MACH = -DBSD
CFLAGS = -DSTRICT $(OPT) $(MACH) -I../common -L../lib
CC = cc

LIBDIR = /usr/local/lib/ray

INSTDIR = /usr/local/bin

all:	oconv getbbox

oconv:	oconv.o sphere.o writeoct.o o_face.o plocate.o \
clip.o o_cone.o o_instance.o bbox.o initotypes.o readfargs.o malloc.o
	$(CC) $(CFLAGS) -o oconv oconv.o writeoct.o sphere.o o_face.o \
plocate.o clip.o o_cone.o o_instance.o bbox.o readfargs.o \
initotypes.o malloc.o -lrt -lm

getbbox:	getbbox.o readobj2.o bbox.o init2otypes.o
	$(CC) $(CFLAGS) -o getbbox getbbox.o readobj2.o \
bbox.o init2otypes.o -lrt -lm

install:	oconv getbbox
	cp oconv getbbox $(INSTDIR)

clean:
	set nonomatch; rm -f oconv getbbox *.o core

oconv.o:	oconv.c
	$(CC) $(CFLAGS) -DDEFPATH=\":$(LIBDIR)\" -c oconv.c

readfargs.o:	readfargs.c ../common/object.h
	$(CC) $(CFLAGS) -DMEMHOG -c readfargs.c

bbox.o initotypes.o o_cone.o o_face.o \
o_instance.o oconv.o sphere.o \
writeoct.o:	../common/standard.h ../common/mat4.h ../common/fvect.h

initotypes.o o_cone.o o_face.o oconv.o \
sphere.o writeoct.o:	../common/octree.h

bbox.o o_cone.o o_face.o o_instance.o oconv.o \
sphere.o writeoct.o:	../common/object.h

bbox.o initotypes.o oconv.o \
sphere.o writeoct.o:	../common/otypes.h

bbox.o o_cone.o:	../common/cone.h

bbox.o o_face.o:	../common/face.h

bbox.o o_instance.o:	../common/instance.h ../common/octree.h

clip.o o_face.o plocate.o:	plocate.h

clip.o plocate.o:	../common/fvect.h

initotypes.o init2otypes.o:	../common/otypes.h
