CC = gcc CFLAGS = -Wall -Werror TARG = main SRCS = foo.c main-foo.c OBJS = $(SRCS:.c=.o) LIBS = all: $(TARG) $(TARG): $(OBJS) $(CC) -o $(TARG) $(OBJS) $(LIBS) %.o: %.c $(CC) -c $< $(CFLAGS) clean: rm -f $(TARG) $(OBJS)