我想在Makefile.am
部分的一个xxx_SOURCES = ...
文件中加入许多文件。有没有办法在那里使用典型的shell扩展?我正在寻找的是等效于:
xxx_SOURCES = xxx.c $(top_builddir)/src/{aaa,bbb,ccc}.c
答案 0 :(得分:1)
我不知道这是不是最好的方式,但这是我一直以来所做的:
xxx_SOURCES = xxx.c $(shell echo $(top_builddir)/src/{aaa,bbb,ccc}.c)
答案 1 :(得分:1)
1)在便携式Make语法中无法做到这一点(ephemient的答案仅适用于GNU Make) 2)使用Automake也无法做到这一点。 (虽然这个功能不应该太难以由需要它的人实现......)
就我个人而言,我并没有真正看到使用
的优势foo_SOURCES = subdir/{foo,bar,baz}.c
在
foo_SOURCES = \ subdir/foo.c \ subdir/bar.c \ subdir/baz.c
我发现前者更加神秘,并且不易变形(例如回答“Makefile
提及foo.c
?”的问题。