Determining the actual dependences is a pain. But strace makes it easy, since it'll tell you what files pdflatex actually opens. Extract them from the log with a python script and et viola, the list of necessary files.
This needs to work on macs. There is no strace on mac, but there is dtruss.