El Makefile que acabamos de describir tiene una gran cantidad de texto repetido. Si pensamos en cualquier proyecto serio, donde el número de ficheros puede ser enorme y donde la interdependencia de todos ellos puede ser alta, los Makefiles pueden llegar a ser inmanejables.
Sin embargo, make nos ofrece una serie de herramientas que nos hacen la vida más fácil. Una de ellas son las macros.
Las macros se definen y se usan en el contexto de un mismo Makefile. La definición de una macro tiene la siguiente estructura:
nombre_de_macro = valor_de_macro
Después de la definición de la macro podemos utilizarla en lugar de su valor, aliviando notablemente el trabajo del programador. Para ello basta con invocarla de cualquiera de las siguientes formas:
¡Vaya, es sospechosamente parecido al uso de las variables de la shell!.
Aunque el orden de las macros no altera su interpretación, las macros que se usen en una linea de dependencias han de estar definidas antes que ella.