CC=gcc IDIR +=. CFLAGS +=$(addprefix -I,$(IDIR)) -g -Wall -W -pedantic -Wno-unused-parameter -Wno-unused-function -Wno-unused-variable LIBS += ODIR = obj SRC = $(wildcard *.c) OBJ = $(addprefix $(ODIR)/,$(SRC:.c=.o)) OUT = ../$(OUTDIR)/toy all: $(OBJ) $(CC) -o $(OUT) $^ $(CFLAGS) $(LIBS) $(OBJ): | $(ODIR) $(ODIR): mkdir $(ODIR) $(ODIR)/%.o: %.c $(CC) -c -o $@ $< $(CFLAGS) .PHONY: clean clean: $(RM) $(ODIR)