SHELL = /bin/sh CXX = g++ CXXFLAGS = -std=c++11 -g -ggdb3 -Wall -I../include -I/usr/include/SDL2 LDFLAGS = -lSDL2 -lGLEW -lGL -lassimp OBJDIR = build LIB = ../build/libTangerine.a BINDIR = bin ifeq ($(USE_INTERNAL_ASSIMP), y) CXXFLAGS += -I../$(ASSIMP_DIR)/include -I../$(ASSIMP_DIR)/build/include LDFLAGS = -lSDL2 -lGLEW -lGL ASSIMP_LIB := ../$(ASSIMP_DIR)/build/code/libassimp.a endif EXAMPLE_SOURCES = \ hello_world/main.cpp \ assimp_loading/main.cpp \ simple_mesh/main.cpp \ EXAMPLE_OBJECTS = $(patsubst %/, $(OBJDIR)/%.o, $(dir $(EXAMPLE_SOURCES))) EXAMPLES = hello_world simple_mesh assimp_loading BINARIES = $(patsubst %, $(BINDIR)/%, $(EXAMPLES)) all: mkdirs $(BINARIES) .PHONY: all $(OBJDIR)/hello_world.o: $(CXX) $(CXXFLAGS) -c -MMD hello_world/main.cpp -o $@ $(BINDIR)/hello_world: $(OBJDIR)/hello_world.o $(CXX) -o $@ $(LDFLAGS) $^ $(LIB) $(ASSIMP_LIB) $(OBJDIR)/simple_mesh.o: $(CXX) $(CXXFLAGS) -c -MMD simple_mesh/main.cpp -o $@ $(BINDIR)/simple_mesh: $(OBJDIR)/simple_mesh.o $(CXX) -o $@ $(LDFLAGS) $^ $(LIB) $(ASSIMP_LIB) $(OBJDIR)/assimp_loading.o: $(CXX) $(CXXFLAGS) -c -MMD assimp_loading/main.cpp -o $@ $(BINDIR)/assimp_loading: $(OBJDIR)/assimp_loading.o $(CXX) -o $@ $(LDFLAGS) $^ $(LIB) $(ASSIMP_LIB) -include $(OBJDIR)/*.d mkdirs: @mkdir -p $(BINDIR) $(OBJDIR) .PHONY: mkdirs clean: rm -rf $(OBJDIR)/* bin/* .PHONY: clean