The first thing that comes to mind is to just have a cron task that runs make on my Makefile. However, how can I programmatically detect if the build fails and jump to my send_email script?
Dunno about yours, but my cron tends to email me every time something exits with a non-zero exit status. GNU Make would be among the programs that exits with meaningful status.
Other than cron, I'd look at the new and exciting IPC::System::Simple, possibly combined with Net::SMTP::OneLiner. Suddenly it seems like a four line program to me.