tradcpp is {a traditional (K&R-style) C preprocessor.} It has the particular property that it doesn't (for the most part) trash whitespace, so it can be used on makefiles.

WWW: http://ftp.netbsd.org/pub/NetBSD/misc/dholland/
