CC = gcc CFLAGS = -Wall -g TARGET = snag SRCS = main.c OBJS = $(SRCS:.c=.o) .SILENT: $(OBJS) $(TARGET) all: $(TARGET) clean: rm -f $(OBJS) $(TARGET) $(TARGET): $(OBJS) printf " LD %s\n" $@ $(CC) $(CFLAGS) -o $@ $< %.o: %.c printf " CC %s\n" $< $(CC) $(CFLAGS) -c $< -o $@