Maintain your software with amake (a make utility for developers). Supports strong pattern recognition and transformations. A single makefile can be used to compile an entire project.