
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

