Différences
Ci-dessous, les différences entre deux révisions de la page.
| Prochaine révision | Révision précédente | ||
|
make [Le 02/02/2015, 10:05] hector créée |
make [Le 13/09/2016, 16:44] (Version actuelle) bcag2 reformulation phrase intro, ajout liens |
||
|---|---|---|---|
| Ligne 2: | Ligne 2: | ||
| ---- | ---- | ||
| - | ====== Description ====== | + | ====== Make ====== |
| - | make est un gestionnaire de versions. | + | make est un utilitaire pour "scripter" la compilation et l'édition de liens\\ |
| + | Sa syntaxe est au premier abord déroutante... | ||
| ===== Affectations ===== | ===== Affectations ===== | ||
| - | * = | + | * = affectation par "référence" (signifie que, quand on pose A=$(B) et que B est défini plus loin dans le makefile, on affecte à A la (dernière) valeur de B quand même). |
| - | * := | + | * := affectation par "valeur" (signifie que, quand on pose A:=$(B) et que B est défini plus loin dans le makefile, on affecte à A la valeur de vide). |
| - | * ?= | + | * ?= affectation conditionnelle |
| + | * += affectation par concaténation (ajout à droite, avec un espace) | ||
| ===== Variables internes ===== | ===== Variables internes ===== | ||
| - | * $@ Le nom de la cible | + | ''cible : dépendance1 dépendance2 dépendance 3 \\ |
| - | * $< Le nom de la première dépendance | + | commande'' |
| - | * $^ La liste des dépendances | + | |
| - | * $? La liste des dépendances plus récentes que la cible | + | | $@ |Le nom de la cible| |
| - | * $* Le nom du fichier sans suffixe | + | | $< |Le nom de la première dépendance| |
| + | | $^ |La liste des dépendances| | ||
| + | | $? |La liste des dépendances plus récentes que la cible| | ||
| + | |$* |Le nom du fichier sans suffixe| | ||
| + | |||
| + | ===== Références/Liens ===== | ||
| + | [[http://www.labri.fr/perso/billaud/IUT/AP2-POO-0910/060-faire-makefile.pdf]]\\ | ||
| + | [[http://www.gnu.org/software/make/manual/make.html | doc officielle de make sur gnu.org (en)]] | ||