CFLAGS+=-Wall -O2 $(shell pkg-config --cflags allegro-5 allegro_primitives-5 libsodium) CFLAGSDEBUG=-Wall -ggdb3 -O0 -DDEBUG $(shell pkg-config --cflags allegro-5 allegro_primitives-5 libsodium) LDFLAGS+=-Wall -O2 $(shell pkg-config --libs allegro-5 allegro_primitives-5 libsodium) LDFLAGSDEBUG=-Wall -ggdb3 -O0 -DDEBUG $(shell pkg-config --libs allegro-5 allegro_primitives-5 libsodium) SRCDIR=./src OBJDIR=./build SRC=$(wildcard $(SRCDIR)/*.c) OBJ=$(patsubst $(SRCDIR)%.c,$(OBJDIR)%.o,$(SRC)) BIN=rwalk all: $(OBJ) $(CC) $(LDFLAGS) -o $(BIN) $^ $(OBJ): | $(OBJDIR) $(OBJDIR)/%.o: $(SRCDIR)/%.c $(CC) $(CFLAGS) -c -o $@ $< $(OBJDIR): mkdir -p $(OBJDIR) clean: rm -rf $(OBJDIR) $(BIN) debug: CFLAGS=$(CFLAGSDEBUG) debug: LDFLAGS=$(LDFLAGSDEBUG) debug: all new: clean all