CC = gcc
CFLAGS = -Wall -Wextra -pedantic-errors -std=c99 -Wno-format
OUTFILE = cards

SRCDIR = src
OBJDIR = obj
INCDIR = src/include

SRC = $(wildcard $(SRCDIR)/*.c)
INC = $(wildcard $(INCDIR)/*.h)
_OBJ = $(SRC:.c=.o)
OBJ = $(subst $(SRCDIR),$(OBJDIR),$(_OBJ))

$(OUTFILE): $(OBJ)
	$(CC) $(CFLAGS) -o $(OUTFILE) $(OBJ)

$(OBJDIR)/%.o: $(SRCDIR)/%.c $(INCDIR)/%.h
	$(CC) $(CFLAGS) -o $@ -c $<

.PHONY: clean
clean:
	-rm $(OUTFILE) $(OBJ)