Supposons que je travaille sur un makefile et j'ai la déclaration variable suivante en haut:Comment utiliser une liste de variables en tant que cible dans un Makefile?
FILES = file1.cpp file2.cpp file3.cpp
Supposons maintenant que je veux compiler chacun de ceux qui ont une commande spéciale sans spécifier chaque cible comme ceci:
file1.o : file1.cpp
custom_command file1.cpp
file2.o : file2.cpp
custom_command file2.cpp
file3.o : file3.cpp
custom_command file3.cpp
Existe-t-il un meilleur moyen de le faire en utilisant la variable $(FILES)
I déclarée ci-dessus?
Quelque chose comme:
$(FILES:.cpp=.o) : $(FILES)
custom_command $(FILES)
... seulement il a besoin de faire cela pour chaque fichier dans la variable $(FILES)
.
Ya, c'est à peu près ce que j'essaie de faire. –
Une autre façon de spécifier exactement les dépendances consiste à utiliser [expansion secondaire] (https://www.gnu.org/software/make/manual/html_node/Secondary-Expansion.html) des conditions préalables (fonction spécifique GNU Make). – ruvim