GNU m4 is the GNU version of the m4 macro preprocessor. It is designed to avoid many kinds of limits found in traditional m4s: limits like maximum line lengths, maximum size of a macro, number of macros, etc.

The GNU Autoconf package makes extensive use of the features of GNU m4.

GNU m4 is currently maintained (albeit intermittently) by René Seindal.