Question

J'aimerais inclure de nombreux fichiers dans un seul fichier Makefile.am dans la partie xxx_SOURCES = ... . Est-il possible d'utiliser une extension de shell typique? Ce que je recherche, c’est un équivalent de travail pour:

xxx_SOURCES = xxx.c $(top_builddir)/src/{aaa,bbb,ccc}.c
Était-ce utile?

La solution

1) Il n’existe aucun moyen de le faire dans la syntaxe Make Make (la réponse de ephemient fonctionnera uniquement avec GNU Make) 2) Il n’ya aucun moyen de faire cela en utilisant Automake non plus. (Bien que la fonctionnalité ne devrait pas être trop difficile à mettre en œuvre par quelqu'un qui en a besoin ...)

Personnellement, je ne vois pas vraiment l'avantage d'utiliser

foo_SOURCES = subdir/{foo,bar,baz}.c

sur

foo_SOURCES = \
  subdir/foo.c \
  subdir/bar.c \
  subdir/baz.c

Je trouve que le premier est plus crypté et qu'il n'est pas grepable (par exemple, pour répondre à la question "quel Makefile mentionne foo.c ?").

Autres conseils

Je ne sais pas si c'est la meilleure façon, mais c'est ce que j'ai toujours fait:

xxx_SOURCES = xxx.c $(shell echo $(top_builddir)/src/{aaa,bbb,ccc}.c)
Licencié sous: CC-BY-SA avec attribution
Non affilié à StackOverflow
scroll top