# RCSid: $Id: Rmakefile,v 2.13 2004/10/27 23:23:47 greg Exp $
#
# Makefile for object generation programs
#

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

INSTDIR = /usr/local/bin

LIBDIR = /usr/local/lib/ray

PROGS = genbox gensky xform genblinds genrev genworm \
		gensurf genprism replmarks mkillum genclock

LIBFILES = illum.cal rev.cal skybright.cal surf.cal clockface.hex \
		glaze1.cal glaze2.cal

all:	$(PROGS)

install:	$(PROGS) $(LIBFILES) glaze.csh
	cp $(PROGS) $(INSTDIR)
	cp glaze.csh $(INSTDIR)/glaze
	chmod 755 $(INSTDIR)/glaze
	cd $(LIBDIR) && rm -f $(LIBFILES)
	cp $(LIBFILES) $(LIBDIR)

clean:
	set nonomatch; rm -f $(PROGS) *.o core

genbeads:	genbeads.o hermite3.o
	$(CC) $(CFLAGS) -o genbeads genbeads.o hermite3.o $(MLIB)

genbox:	genbox.o
	$(CC) $(CFLAGS) -o genbox genbox.o

genmarble:	genmarble.o ../common/random.h
	$(CC) $(CFLAGS) -o genmarble genmarble.o $(MLIB)

gensky:	gensky.o sun.o
	$(CC) $(CFLAGS) -o gensky gensky.o sun.o $(MLIB)

genblinds:	genblinds.o
	$(CC) $(CFLAGS) -o genblinds genblinds.o $(MLIB)

genprism:	genprism.o
	$(CC) $(CFLAGS) -o genprism genprism.o $(MLIB)

xform:	xform.o
	$(CC) $(CFLAGS) -o xform xform.o -lrt $(MLIB)

replmarks:	replmarks.o
	$(CC) $(CFLAGS) -o replmarks replmarks.o -lrt $(MLIB)

mkillum:	mkillum.o mkillum2.o mkillum3.o
	$(CC) $(CFLAGS) -o mkillum mkillum.o mkillum2.o mkillum3.o -lrt $(MLIB)

genrev:	genrev.o 
	$(CC) $(CFLAGS) -o genrev genrev.o -lrt $(MLIB)

gencatenary: gencat.o
	$(CC) $(CFLAGS) -o gencatenary gencat.o -lrt $(MLIB)

genworm:	genworm.o
	$(CC) $(CFLAGS) -o genworm genworm.o -lrt $(MLIB)

gensurf:	gensurf.o
	$(CC) $(CFLAGS) -o gensurf gensurf.o -lrt $(MLIB)

genclock:	genclock.o
	$(CC) $(CFLAGS) -o genclock genclock.o $(MLIB)

genbranch:	genbranch.o
	$(CC) $(CFLAGS) -o genbranch genbranch.o $(MLIB)

genworm.o replmarks.o:	../common/fvect.h

gensurf.o xform.o:	../common/standard.h \
../common/rtmisc.h ../common/rtio.h \
../common/rtmath.h ../common/rterror.h \
../common/mat4.h ../common/fvect.h ../common/tifftypes.h

genworm.o genrev.o gensurf.o:	../common/resolu.h ../common/rterror.h

xform.o:	../common/otypes.h ../common/object.h

mkillum.o mkillum2.o mkillum3.o:	mkillum.h ../common/standard.h \
../common/mat4.h ../common/fvect.h ../common/otypes.h ../common/object.h

gensky.o:	../common/color.h

gensurf.o genworm.o genrev.o:	../common/calcomp.h
