How does it handle building from LaTeX sources where you need to "rebuild" the document multiple times to get page numbers and references right?
Instead of plugging latex directly into a Makefile or tup, use such a wrapper.
It seems that latexmk could be such a script: http://mirror.unl.edu/ctan/support/latexmk/README