OS = $(shell uname)
CC = g++
FLAGS = -Wall
DEPENDENCIES = common/texture.o common/controls.o common/shader.o

ifeq ($(OS),Darwin)
	LIB_FLAGS = -framework Cocoa -framework OpenGL -framework IOKit -framework CoreVideo -lglfw3 -lglew
endif
ifeq ($(OS),Linux)
	LIB_FLAGS = -lGL -lglut -lGLEW `pkg-config glfw3 --static --cflags --libs`
endif

graphics_engine : main.cpp $(DEPENDENCIES)
	$(CC) -o $@ $+ $(FLAGS) $(LIB_FLAGS)

%.o : %.cpp
	$(CC) -c -o $@ $? $(FLAGS)

clean:
	rm -f *.o
	rm -f common/*.o
	rm -f graphics_engine
