J'utilise un fichier makefile pour automatiser la génération de certains documents. J'ai plusieurs documents dans un répertoire, et une de mes règles makefile va générer une page d'index de ces fichiers. La liste des fichiers elle-même est chargée à la volée en utilisant list := $(shell ls documents/*.txt)
, donc je n'ai pas à déranger manuellement la modification du fichier makefile chaque fois que j'ajoute, supprime ou renommer un document. Naturellement, je veux que la règle de génération d'index se déclenche lorsque le nombre/titre des fichiers dans le répertoire de documents change, mais je ne sais pas comment configurer les conditions préalables pour fonctionner de cette manière.Makefile règle en fonction du changement du nombre/titre des fichiers au lieu de la modification du contenu des fichiers
Je pourrais utiliser .PHONY
ou quelque chose de similaire pour forcer la génération d'index à fonctionner tout le temps, mais je préfère ne pas gaspiller les cycles. En tant que prérequis pour ma règle de génération d'index, j'ai essayé d'ajouter et comme, mais cela nécessiterait soit de modifier manuellement list.txt
(en essayant de l'éviter), soit de le générer automatiquement dans le fichier makefile (cela change la temps de création, donc je ne peux pas utiliser list.txt
dans la condition préalable car cela déclencherait la règle à chaque fois).
+1 oh, c'est intelligent. – Beta
Je me demande si cette solution peut être ajustée pour tenir compte du changement de nom de fichier et pas seulement du nombre de fichiers. – user17925
@goathens, ça peut, je répare la réponse. Mais, en fait, alors que votre intention était claire, vous avez demandé la dépendance sur un * nombre * de fichiers ;-) –