1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17
CC := gcc CFLAGS := -Wall -Wextra -Wpedantic BIND := bin CSRCS = $(shell find . -type f -name '*.c') .PHONY: all clean all: $(CSRCS:%.c=$(BIND)/%) clean: rm -rf $(BIND) $(BIND)/%: %.c mkdir -p $(dir $@)p $(CC) $(CFLAGS) $^ -o $@