CXX=g++ CXXFLAGS= -std=c++11 -g -ggdb3 -Wall LDFLAGS=-lasound -lgpiod OBJDIR = build SRCDIR = src BINDIR = bin BIN = $(BINDIR)/midi_to_cv SOURCES = $(wildcard $(SRCDIR)/*.cpp) OBJECTS = $(patsubst $(SRCDIR)/%.cpp, $(OBJDIR)/%.o, $(SOURCES)) all: mkdirs $(OBJECTS) ctags -R ./ $(CXX) -o $(BIN) $(OBJECTS) $(LDFLAGS) .PHONY: all mkdirs: mkdir -p $(BINDIR) $(OBJDIR) .PHONY: mkdirs -include $(OBJDIR)/*.d $(OBJECTS): $(OBJDIR)/%.o : $(SRCDIR)/%.cpp $(CXX) $(CXXFLAGS) -c -MMD $< -o $@ clean: rm -rf $(BIN) rm -rf build/* .PHONY: clean