#
# lrt makefile
#
# $Id: Makefile,v 1.1 2002/05/26 19:46:17 niloy Exp niloy $
#

ARCH = $(shell uname)

ifeq ($(ARCH), CYGWIN_NT-5.0)
ARCH = WIN_NT
endif

TIFFINCLUDE=-I../libtiff/include
# system-dependent
ifeq ($(ARCH), WIN_NT)
TIFFLIB=-L../libtiff/win32/lib
else
ifeq ($(ARCH), Linux)
TIFFLIB=
endif
endif

TIFFLIB += -ltiff

ifeq ($(ARCH), WIN_NT)
TIFFLIB += -ljpeg -lz -lmsvcrt
endif

LEX=flex
YACC=bison -d -v -t
LEXLIB = -lfl
ifneq ($(ARCH), WIN_NT)
DLLLIB = -ldl
endif

CXX=g++
OPT=-g
INCLUDE=-I. $(TIFFINCLUDE)
WARN=-Wall
DEFINES=
CXXFLAGS=$(OPT) $(INCLUDE) $(WARN)
LIBS=-L/usr/lib $(TIFFLIB) $(LEXLIB) $(DLLLIB) -lm -lstdc++

.SUFFIXES: .l .y .defs
.PHONY: default check
.SECONDARY: %.cc

# order is key!
LRTCCFILES = riblex.cc ribparse.cc rib.cc util.cc shapes.cc heightfield.cc primitives.cc lrt.cc \
	geometry.cc transform.cc camera.cc api.cc sampling.cc texture.cc \
	reflection.cc color.cc materials.cc transport.cc tiffio.cc light.cc \
	accel.cc image.cc scene.cc nurbs.cc film.cc
LRTHFILES = lrt.h ri.h shapes.h heightfield.h primitives.h accel.h texture.h \
	camera.h image.h color.h geometry.h light.h reflection.h sampling.h \
	materials.h transport.h transform.h scene.h nurbs.h film.h


default: lrt

# building the executable


clean:
	-rm -f *.o *.tiff *~ core lrt

lrt: $(LRTCCFILES:.cc=.o)
	@echo "Linking $@"
	@$(CXX) -o $@ $^ $(LIBS)
