CC = clang MAKEDEPEND = $(CC) -MM -MG CPROTO = cproto GNUPLOT = gnuplot LDFLAGS = -O0 -g #-fsanitize=undefined -fsanitize=address CPFLAGS = ifeq ($(CC), clang) CFLAGS = -Weverything -Wextra -pedantic $(LDFLAGS) else CFLAGS = -Wextra -pedantic $(LDFLAGS) endif LDLIBS = -lm .SUFFIXES: .SUFFIXES: .o .d .h .c %.o : %.c $(CC) -c $(CFLAGS) $< %.h : %.c $(CPROTO) $(CPFLAGS) $< -o $@ %.d : %.c $(MAKEDEPEND) $< -MF $@ PROG = kahan-challenge1 OBJS = $(PROG).o SRCS = $(OBJS:.o=.c) HDRS = $(OBJS:.o=.h) DEPS = $(OBJS:.o=.d) all: $(PROG) -include $(DEPS) .PHONY: clean clean: rm -f $(PROG) $(OBJS) $(HDRS) $(DEPS)