2009-02-12 6 views
2

Je suis nouveau à faire et makefiles, alors pardonnez-moi si c'est très basique.Les cibles ".target-name" dans les fichiers make seront-elles toujours exécutées?

Je suis à la recherche par certains makefiles dans mon projet et je vois 2 types de cibles - cibles qui ne commencent pas avec. le caractère et les cibles qui font.

Et d'après ce que je devine, il semble que les objectifs « .target-name » sont toujours exécutées, est mon hypothèse vrai? J'ai lu sur makefiles par Googling mais je n'ai rien trouvé de spécifique à cela.

Et comme toujours, merci pour les réponses!

Répondre

3

n °

Les cibles avec un point sont normalement des cibles de sens particulier (à savoir leur functioniality est builtin en faire). L'un d'entre eux est .PHONY, c'est celui qui définit les cibles qui sont toujours exécutées (cela signifie que les commandes de leurs règles sont exécutées sans condition).

Mais il y a aussi d'autres, comme DEFAULT pour la règle par défaut, ou .precious avec ne supprime pas les objectifs implicites construits en cas d'interruption.

+0

Merci! Mais très étrange, je vois d'autres noms que ceux-ci dans la documentation: http://www.gnu.org/software/autoconf/manual/make/Special-Targets.html#Special-Targets – Srikanth

+0

Ce que je voulais dire, je vois " .some-random-name-not-in-documentation "dans mon projet. Alors errant d'où ils sont appelés. Je posterai quand je comprendrai. – Srikanth

+1

Sont derrière le. noms, ou juste des fins de fichiers combinés? Les fichiers combinés (comme ".c.o") est une ancienne façon de déclarer des règles implicites générales (dans l'exemple pour générer des fichiers .o à partir de fichiers .c). Sinon, ils ne sont que des cibles normales qui commencent par un ".". – flolo

2

Pour en savoir plus sur make, et surtout gmake, je vous suggère de jeter un oeil à l'excellent livre "Managing Projects with GNU Make" (sanitised Amazon link).

HTH.

bravo,

+0

@Rob: Merci, je vais y jeter un oeil si je fais plus de ces choses à l'avenir :) J'apprends beaucoup en regardant les fichiers des autres, un livre aide certainement! – Srikanth

Questions connexes