next up previous contents index
Next: Otros aspectos de make Up: Las lineas de comandos Previous: Las lineas de comandos   Índice General   Índice de Materias


Estado de salida de los comandos ejecutados desde make

Si en algún momento make ejecuta un comando que da un estado de salida distinto de cero, make terminará bruscamente. Este comportamiento es normalmente lo que buscamos, pues si no el error se puede propagar dando lugar a situaciones peligrosas.

Pero hay ocasiones en que no nos interesa que sea así, por ejemplo es muy habitual definir reglas para make que limpien los resultados de antiguas compilaciones:

   clean:
        rm *.o
        rm ejecutable1 ejecutable2

Si en un momento dado no existe ningún fichero objeto pero si ejecutables, al invocar:

   $ make clean
Nos encontraremos con que make termina su ejecución antes de borrar los ejecutables, por eso la manera correcta de hacer esto sería:
   clean:
        - rm *.o
        - rm ejecutable1 ejecutable2

El guión antes de los comandos evita que make se aborte aunque el comando haya fallado.



Alberto Cortés 2001-03-26