automatic dependent makefile