SRC = $(wildcard src/*.c) DEPS = $(wildcard deps/**/*.c) OBJS = $(patsubst %.c,%.o,$(DEPS)) BINS = $(notdir $(patsubst %.c,%,$(SRC))) # CFLAGS = -std=c99 -Ideps -Wall -Wno-unused-function -U__STRICT_ANSI__ CFLAGS = -ggdb -std=c99 -Ideps -Wall -Wno-unused-function -pedantic all: $(BINS) echo "BINS=$(BINS)" $(BINS): $(SRC) $(OBJS) $(CC) $(CFLAGS) -o $@ src/$@.c $(OBJS) $(LDFLAGS) %.o: %.c $(CC) $< -c -o $@ $(CFLAGS) clean: $(foreach c, $(BINS), rm -f $(c);) rm -f $(OBJS)