New improved automatic makefile