PROGS := qsort-marcel .PHONY: all clean all: $(PROGS) clean: rm -rf *.o *.d $(PROGS) CC := $(shell pm2-config --cc) CFLAGS := -Wall LDFLAGS := CFLAGS += $(shell pm2-config --cflags) LDFLAGS += $(shell pm2-config --libs) SOURCES := $(wildcard *.c) OBJECTS := $(subst .c,.o,$(SOURCES)) DEP_TO_OBJ = $(subst .d,.o,$@) SRC_TO_OBJ = $(subst .c,.o,$<) $(OBJECTS): %.o: Makefile $(PROGS): %: %.o $(CC) -o $@ $^ $(LDFLAGS) $(OBJECTS): %.o: %.c $(CC) $(CFLAGS) -o $(SRC_TO_OBJ) -c $<