The Unreasonable Effectiveness of Makefiles
make build a directed-acyclic build graph (DAG) of dependencies, and uses file modification times to decide whether or not the outputs need to be rebuilt.
Source: The Unreasonable Effectiveness of Makefiles, an article by Matt Rickard.