CFLAGS += -Wall -Werror -Werror=jump-misses-init -fPIC -O2 OBJDIR = $(OUT_DIR)/objs OBJS = $(patsubst %.c,$(OBJDIR)/%.o,$(SRCS)) SUFFIXES += .d DEPEND_FILES := $(patsubst %c,$(OBJDIR)/%d,$(SRCS)) NODEPS := clean distclean all: $(TARGET) $(info "LDLIBS : $(LDLIBS)") $(info "TARGET_CFLAGS : $(TARGET_CFLAGS)") $(info "CFLAGS : $(CFLAGS)") $(info "LDFLAGS : $(LDFLAGS)") $(info "OUT_DIR : $(OUT_DIR)") $(info "STAGING_DIR : $(STAGING_DIR)") $(info "TARGET_DIR : $(TARGET_DIR)") ifeq "$(findstring $(MAKECMDGOALS),$(NODEPS))" "" -include $(DEPEND_FILES) endif $(TARGET): $(OBJS) @echo " [LINK] $@" @$(CC) $(LDFLAGS) $+ $(LDLIBS) -o $(OUT_DIR)/$@ #@$(CC) -o $@ $(LDFLAGS) $+ $(LDLIBS) $(OBJDIR)/%.o: %.c $(OBJDIR)/%.d @echo " [CC] $<" @$(CC) $(CPPFLAGS) $(CFLAGS) -o $@ -c $< $(OBJDIR)/%.d: %.c @echo " [DEP] $<" @mkdir -p $(OBJDIR)/$(dir $<) @$(CC) $(CPPFLAGS) $(CFLAGS) -M -MT "$(patsubst %.c,$(OBJDIR)/%.o,$<)" $< -MF $@ .PHONY:clean clean: @echo " [CLEAN] ..." @rm -rf $(OBJDIR) $(TARGET)