MAKEFLAGS += -j16 CFLAGS=-std=c17 -pedantic-errors -Wall -Wextra -Wconversion -g LDFLAGS= # CFLAGS+=-fsanitize=address build_dir = build obj_dir = $(build_dir)/obj sources = \ src/main.c \ src/collections.c target=$(build_dir)/jq all: $(target) debug: $(target) gdb tui -ex 'b main.c:254' -ex 'b collections.c:161' -ex 'r' --args build/jq '.' data.json $(target): $(sources:%.c=$(obj_dir)/%.o) gcc -o $@ $(CFLAGS) $(LDFLAGS) $^ $(obj_dir)/%.o: %.c @mkdir -p $(dir $@) gcc $< -c -o $@ -MMD -MP $(CFLAGS) clean: rm -rf $(build_dir) -include $(sources:%.c=$(obj_dir)/%.d)