0

Makefile.amパーツ内の1つのファイルに多くのファイルを含めたいですxxx_SOURCES = ...。そこで典型的なシェル拡張を使用する方法はありますか? 私が探しているのは、次のものと同等の機能です。

xxx_SOURCES = xxx.c $(top_builddir)/src/{aaa,bbb,ccc}.c
4

2 に答える 2

1

それが最善の方法かどうかはわかりませんが、これは私がいつも行ってきたことです。

xxx_SOURCES = xxx.c $(shell echo $(top_builddir)/src/{aaa,bbb,ccc}.c)
于 2009-11-25T22:43:35.877 に答える
1

1)移植可能なMake構文でそれを行う方法はありません(ephemientの答えはGNU Makeでのみ機能します)2)Automakeを使用してそれを行う方法もありません。(ただし、機能を必要とする人が実装するのはそれほど難しくないはずです...)

個人的には使用する利点があまりわかりません

foo_SOURCES = サブディレクトリ/{foo,bar,baz}.c

以上

foo_SOURCES = \
  サブディレクトリ/foo.c \
  サブディレクトリ/bar.c \
  サブディレクトリ/baz.c

前者の方が不可解であり、grep 可能ではありません (たとえば、「どれがMakefile言及しているfoo.cか?」という質問に答えるために)。

于 2009-11-26T17:04:38.180 に答える