
CC = g++
OPT = -Wno-deprecated -O3
LIBS = -lm
SRC = proj1.cpp functions.cpp image.cpp ray.cpp raytracer.cpp
OBJ = proj1.o functions.o image.o ray.o raytracer.o
INC = defs.h functions.h
TARGET = proj1
MISC = Makefile

all: $(TARGET)

$(TARGET) : $(OBJ) $(MISC)
	$(CC) $(OPT) -o $(TARGET) $(OBJ) $(LIBS)

%.o : %.cpp $(MISC) $(INC)
	$(CC) $(OPT) -c -o $@ $<

clean:
	rm -f $(OBJ) $(TARGET)



#all : proj1

#proj1 : proj1.o functions.o image.o ray.o
#	$(CC) $(OPT) -o proj1 proj1.o functions.o $(LIBS)

#proj1.o : proj1.c defs.h
#	$(CC) $(OPT) -c proj1.c

#functions.o: functions.cpp defs.h functions.h
#	$(CC) $(OPT) -c functions.cpp

#image.o: image.cpp defs.h
#	$(CC) $(OPT) -c image.cpp

#clean: 
#	rm *.o proj1

