Personally I write all my makefiles from scratch. I'm always baffled by other makefiles though. They always look so huge and for some unknown reason just overly complex.
Really? I've been using the same one for the last 15 years, and before me it was owned by an old geezer. Some people say I should try some newfangled nonsense like Ant, but make has never let me down.
Ant, waf, and the rest of them are usually overkill IMHO. With makefiles the basics are simple and straightforward and I'd argue that most uses only require the basics, it's like what I've been hearing about autotools these days but even autotools seems overkill especially on Linux where we've had proper pkgconfig support everywhere for years. The same is probably true for the BSDs as well. I can't comment on Windows or OS X as I have no experince there but I imagine it must be easier to write a couple basic makefiles for 2 differnt platforms if you need. Most cross platform projects don't need as they either use Gtk, glib, Qt, etc which already pulls in all their dependencies.
Personally I write all my makefiles from scratch. I'm always baffled by other makefiles though. They always look so huge and for some unknown reason just overly complex.