En fait, ça fait un moment que je ne l'ai pas lu... et que je n'ai pas touché à make.
Si tu fais référence à l'exemple du paragraphe 7, il ne peut pas compiler les modules ant ou bee séparément; il recompile la cible "prog" en compilant au besoin ce qui a été listé dans SRC et LIBS. Dans son cas, les "modules" ant et bee sont en fait des séparations au niveau source, mais qui permettent d'obtenir un unique binaire "cible".
En effet, si tu veux juste obtenir un seul binaire, tu t'en fiches un peu qu'il recompile tel ou tel module (tant qu'il ne fait que le strict minimum, ce qui est aussi le but de la méthode de l'article).
Si tu entends tes "modules" comme des entités utilisables séparément (ant et bee sont deux exectuables, ou un executable et une bibliothèque, par exemple, et un coup "je veux compiler ant seul", un coup "je veux compiler bee seul"), il faudra une cible par "module".
Je crois, à ce niveau, que l'incompréhension vient de ce que tu entends par "module" n'est pas la même chose que pour l'auteur de l'article: pour lui, un module est un composant intermédiaire, et il n'y a pas de sens à vouloir compiler tel ou tel module, on ne peut vouloir compiler que la cible - ce qui peut nécessiter de compiler tel ou tel autre module si besoin.
[^] # Re: Attention aux make récursifs...
Posté par alf . En réponse au message Un exemple de makefile. Évalué à 2.
Si tu fais référence à l'exemple du paragraphe 7, il ne peut pas compiler les modules ant ou bee séparément; il recompile la cible "prog" en compilant au besoin ce qui a été listé dans SRC et LIBS. Dans son cas, les "modules" ant et bee sont en fait des séparations au niveau source, mais qui permettent d'obtenir un unique binaire "cible".
En effet, si tu veux juste obtenir un seul binaire, tu t'en fiches un peu qu'il recompile tel ou tel module (tant qu'il ne fait que le strict minimum, ce qui est aussi le but de la méthode de l'article).
Si tu entends tes "modules" comme des entités utilisables séparément (ant et bee sont deux exectuables, ou un executable et une bibliothèque, par exemple, et un coup "je veux compiler ant seul", un coup "je veux compiler bee seul"), il faudra une cible par "module".
Je crois, à ce niveau, que l'incompréhension vient de ce que tu entends par "module" n'est pas la même chose que pour l'auteur de l'article: pour lui, un module est un composant intermédiaire, et il n'y a pas de sens à vouloir compiler tel ou tel module, on ne peut vouloir compiler que la cible - ce qui peut nécessiter de compiler tel ou tel autre module si besoin.