############
MACHINE= $(shell uname -s)
PROCESSOR= $(shell uname -p)

ifeq ($(MACHINE),Darwin)
    OPENGL_INC = -FOpenGL
    OPENGL_LIB = -framework OpenGL
    JPEG_INC   = -I/Users/Arun/local/include/jpeg
    JPEG_LIB   = -L/Users/Arun/local/lib -ljpeg
    PNG_INC    = -I/Users/Arun/local/include
    PNG_LIB    = -I/Users/Arun/local/lib -lpng
    SDL_INC    = `sdl-config --cflags`
    SDL_LIB    = `sdl-config --libs`
else
    OPENGL_INC = -I/usr/X11R6/include
    ifeq ($(PROCESSOR), x86_64)
        OPENGL_LIB = -L/usr/lib64 -lGL -lGLU
    else
        OPENGL_LIB = -L/usr/lib -lGL -lGLU
    endif
    JPEG_INC = -I/usr/include
    JPEG_LIB = -L/usr/lib64 -ljpeg
    PNG_INC  = -I/usr/include
    PNG_LIB  = -L/usr/lib64 -lpng
    SDL_INC  = `sdl-config --cflags`
    SDL_LIB  = `sdl-config --libs`
endif

OBJS= main.o trimodel.o baseimghandler.o jpegimghandler.o pngimghandler.o \
	resampleimage.o obj.o model.o camera.o matrix.o pngwrite.o

CXX=g++
CC=gcc
COMPILER_FLAGS= -g
INCLUDE= -I../include $(SDL_INC) $(OPENGL_INC) $(JPEG_INC) $(PNG_INC) 
LIBS= $(SDL_LIB) $(OPENGL_LIB) $(JPEG_LIB) $(PNG_LIB) -lz -lm 

EXEC=proj2

$(EXEC): $(OBJS)
	$(CXX) $(COMPILER_FLAGS) -o $(EXEC) $(OBJS) $(LIBS)
	mv $(EXEC) ../

%.o:    %.cpp
	$(CXX) -c $(COMPILER_FLAGS) -o $@ $< $(INCLUDE)

%.o: %.c
	$(CC) -c $(COMPILER_FLAGS) -o $@ $< $(INCLUDE)

clean:
	rm -f $(OBJS)

