M4 is "An implementation of the traditional UNIX macro processor in that it copies its input to the output, expanding macros as it goes. Macros are either built-in or user-defined and can take any number of arguments. M4 also has built-in functions for including named files, running UNIX commands, doing integer arithmetic, manipulating text in various ways, and recursions." (from http://directory.fsf.org/gnum4.html ; the gnu m4 home page may be found at http://www.gnu.org/software/m4/m4.html).
If you're not compiling natively on the slug, you probably don't need this.
M4, make, and patch should really be made the same package.