Gnome uses a number of tools. This section describes some of them.
Autoconf
Autoconf is a tool designed to help in the automatic configuration of software source code packages. It creates a script called configure that perform a set of tests in order to discover system characteristics. This script is run when a package is compiled and the results of the tests can then be used to adapt the package to different systems and make it more portable. Autoconf makes heavy use of m4 macros and is often used in conjunction with Automake and Libtool.
Automake
Automake is a tool that assists in the creation of Makefiles. It takes an input file called Makefile.am which has a very high level specification of what needs to be built. It creates makefile templates named Makefile.in. These makefile templates are used by configure (which is created by Autoconf) to generate the final makefiles that contain system-dependent information.
gettext
gettext is a set of tools (and documentation) to assist in making messages in programs multi-lingual so that those whose mother tongue is a different language than that of the author of the program can also use it.
intltool
libtool is a frontend to gettext and extends the functionality in gettext to include things like .desktop files, glade and gconf support files, XML files, and others. intltool is only needed when building from CVS (distributed tarballs contain a copy of the relevant scripts).
Libtool
Libtool provides a consistent interface for creating shared libraries across platforms. According to its homepage, "Libtool hides the complexity of using shared libraries..." If that is true, I would hate to be faced with the task of building shared libraries without Libtool; it must be beyond the ability of mere mortals.
M4 Macro Processor
M4 is a macro processor. It basically just copies its input to the output but first expands any macros it comes across. (It is similar in nature to the C preprocessor, which handles inclusion of header files (#include's), conditional compilation (#ifdef's), and macros (#defines), execpt of course that M4 is not tailored to the C language but is rather designed for more general use.)
Make
Make is a program for building software from source code. It reads a file (which is usually named Makefile) that contains a description of what to build and how to build those things. Makefiles are usually very simple when written by hand for small projects, but they become extremely long and complicated when a package needs to be portable and have flexible build options.