CC=gcc
CFLAGS=-g -std=c11
LD=gcc
LDFLAGS=-g

SRCS=$(wildcard src/*.c)
OBJS=$(SRCS:src/%.c=bin/%.o)
DEPS=$(SRCS:src/%.c=bin/deps/%.d)

glisp: $(OBJS)
	$(LD) $(LDFLAGS) -o $@ $^

bin/%.o: src/%.c
	@mkdir -p bin/deps
	$(CC) $(CFLAGS) -c -MMD -MF $(^:src/%.c=bin/deps/%.d) -o $@ $^

clean:
	rm -rf glisp bin/

.PHONY: clean

-include $(DEPS)
