srcs := a.cc b.cc c.cc
srcs := $(addprefix ./,$(srcs))
objs := $(patsubst ./%.cc,./%.o,$(srcs))

test: out

out: $(objs)

$(objs): ./%.o: ./%.cc
	echo $@: $<: $^

a.o: a.cc a.h
b.o: b.cc a.h b.h
c.o: b.cc a.h b.h c.h