Previous Next Contents

2. Règles

Les fichiers Makefile sont structurés grâce aux règles. Ce sont elles qui définissent ce qui doit être exécuté ou non, et qui permettent de compiler un programme de différentes façons.

2.1 Qu'est-ce qu'une règle ?

Une règle est une suite d'instructions qui seront exécutées pour construire une cible, mais uniquement si des dépendances sont plus récentes.

La syntaxe d'une règle est la suivante:


cible: dependances
        commandes
        ...

2.2 Cible

La cible est généralement le nom d'un fichier qui va être généré par les commandes qui vont suivre, ou une action gérée par ces mêmes commandes, par exemple clean ou install (Voir chapitre IX [Cibles] pour plus de détails sur les conventions utilisées dans l'attribution d'un nom à une règle).

2.3 Dépendances

Les dépendances sont les fichiers ou les règles nécessaires à la création de la cible. Par exemple un fichier en-tête ou un fichier source dans le cas d'une compilation C. Dans le cas d'un fichier, la cible n'est construite que si ce fichier est plus récent que la cible.

2.4 Commandes

C'est une suite de commandes shell qui seront exécutées au moment de la création de la cible. Une étrangeté de la syntaxe des fichiers Makefile oblige l'utilisateur de make à insérer une tabulation au début de chaque ligne, faute de quoi make affichera une erreur au moment de son exécution.

La syntaxe de make oblige aussi l'utilisateur à ajouter une caractère "backslash" ('\') à la fin de chaque ligne dès que les commandes à exécuter dépassent une ligne de texte.


Previous Next Contents