A GNU implementation of the traditional UNIX macro processor. m4 isuseful for writing text files which can be logically parsed, and isused by many programs as part of their build process. m4 has built-infunctions for including files, running shell commands, doing arithmetic,etc. The autoconf program needs m4 for generating configure scripts,but not for running configure scripts.