include config.mk

BINARY=bin/client

SRC_FILES=$(wildcard src/*.c)
OBJ_FILES=$(patsubst src/%.c,obj/%.o,$(SRC_FILES))

release: $(BINARY)
release: CFLAGS+=-DNDEBUG -O2

debug: $(BINARY)
debug: CFLAGS+=-g

$(BINARY): $(OBJ_FILES) | bin
	cc $(LDFLAGS) $^ -o $@

obj/%.o: src/%.c src/config.h | obj
	cc $(CFLAGS) -c $< -o $@

src/config.h:
	cp config.h.in $@

bin obj:
	mkdir -p $@

clean:
	rm -rf bin obj

.PHONY: release debug clean
