make s'appuie sur la date des fichiers pour savoir s'il doit recompiler quelquechose. En gros, s'il détecte que le fichier "source" est plus récent que le fichier généré, il "recompile".
Si ton script regénère tous tes fichiers SVG à chaque fois, make pourra pas trop t'aider, parce qu'en regardant les dates, il recompilera toujours tout. Par contre, si ton script ne génère que les SVG modifiés, là, il suffit de pondre la règle permettant de construire un png à partir d'un SVG, et make s'en sortira très bien.
Si tous tes fichiers SVG sont générés à chaque fois, va falloir trouver autre chose ...
une piste, c'est trouver un moyen pour que ton script d'extraction de la BD ne génère que les SVG modifés (ajout de dates dans la base, positionnement d'un booleen, autre chose ?)
les md5, c'est une autre piste. Comment faire ? Ben par exemple, tu stockes dans un fichier tous les md5 de tes fichiers SVG. A chaque compil, tu recalcules ces md5 dans un nouveau fichier. Tu fais un bête diff et un peu de cut ou de sed et hop, t'as la liste de tes fichiers modifiés.
[^] # Makefile
Posté par gaaaaaAab . En réponse au message Makefile sur une génération dynamique de fichier.. Évalué à 2.
Si ton script regénère tous tes fichiers SVG à chaque fois, make pourra pas trop t'aider, parce qu'en regardant les dates, il recompilera toujours tout. Par contre, si ton script ne génère que les SVG modifiés, là, il suffit de pondre la règle permettant de construire un png à partir d'un SVG, et make s'en sortira très bien.
Si tous tes fichiers SVG sont générés à chaque fois, va falloir trouver autre chose ...
une piste, c'est trouver un moyen pour que ton script d'extraction de la BD ne génère que les SVG modifés (ajout de dates dans la base, positionnement d'un booleen, autre chose ?)
les md5, c'est une autre piste. Comment faire ? Ben par exemple, tu stockes dans un fichier tous les md5 de tes fichiers SVG. A chaque compil, tu recalcules ces md5 dans un nouveau fichier. Tu fais un bête diff et un peu de cut ou de sed et hop, t'as la liste de tes fichiers modifiés.