Entendiendo el comando Make (I)
El comando make se utiliza para mantener los programas actualizados según su última
versión a través de una serie de objetivos y de acciones.
Supongamos que siempre queremos tener al día un fichero de estadisticas.dat a partir
de un fichero de datos.dat. Simplificando, esto lo podriamos hacer de la siguiente manera:
cp datos.dat estadisticas.dat
Si creamos un ejecutable de nombre make y le damos permisos de ejecución chmod u+x make ya habremos
resuelto la tarea. Este “ejecutable” podría ser más inteligente y en el caso de que el fichero de datos.dat
no haya cambiado desde la última copia, podría no realizar la copia, ahorrando trabajo.
El comando make se apoya en un fichero de reglas denominado Makefile. Un posible Makefile que
implemente nuestro anterior ejemplo sería el siguiente:
estadisticas.dat: datos.dat cp datos.dat estadisticas.dat
En este fichero Makefile podemos ver claramente 3 partes diferenciadas:
- Objetivo: estadisticas.dat
- Lista de Requisitos: datos.dat
- Lista de acciones: cp datos.dat estadisticas.dat
El objetivo va seguido del caracter “:” y de la lista de requisitos. A continuación va la lista de acciones. Cada lista de acciones
debe comenzar por un tabulador.
El fichero Makefile puede tener varios objetivos. Por ejemplo:
estadisticas.dat: datos.dat cp datos.dat estadisticas.dat ultimasestadisticas.dat: estadisticas.dat tail estadisticas.dat ultimasestadisticas.dat
Ahora al comando make podemos pedirle:
make estadisticas.dat o bien make ultimasestadisticas.dat
Si escribimos simplemente make, el objetivo del comando make será el de la regla situada en primer lugar en el
fichero Makefile.