Advertisement
Not a member of Pastebin yet?
Sign Up,
it unlocks many cool features!
- .PHONY: all clean
- CFLAGS += -g -Wall -Wpedantic -std=c11 -I include/
- LDFLAGS += -L lib/
- LDLIBS += -l libName
- BINDIR = bin
- SRCDIR = src
- OBJDIR = obj
- DEPDIR = .dep
- COMPILE = $(CC) $(CFLAGS) -c -o $@ $<
- LINK = $(CC) $(LDFLAGS) -o $@ $^ $(LDLIBS)
- MAKEDEPEND = $(CC) $(CFLAGS) -MM -MP -MT $@ -o $(DEPDIR)/$*.d $<
- OUT = $(BINDIR)/program
- SRC = $(wildcard $(SRCDIR)/*.c)
- OBJ = $(SRC:$(SRCDIR)/%.c=$(OBJDIR)/%.o)
- $(shell mkdir -p $(DEPDIR) $(OBJDIR) $(BINDIR))
- all: $(OUT)
- clean:
- rm -rf $(DEPDIR) $(OBJDIR) $(BINDIR)
- $(OBJDIR)/%.o : $(SRCDIR)/%.c
- $(OBJDIR)/%.o : $(SRCDIR)/%.c $(DEPDIR)/%.d
- $(MAKEDEPEND)
- $(COMPILE)
- $(OUT): $(OBJ)
- $(LINK)
- $(DEPDIR)/%.d: ;
- .PRECIOUS: $(DEPDIR)/%.d
- -include $(SRC:$(SRCDIR)/%.c=$(DEPDIR)/%.d)
Advertisement
Add Comment
Please, Sign In to add comment
Advertisement