Makefileに次のルールがあるとします。
foo: foo1.c foo2.c head1.h head2.h
gcc -o $@ foo1.c foo2.c
ご覧のとおり、この場合(ほとんどの場合と同様)、ルール内の.cファイルは、gccに渡す.cファイルに対応しています。私の質問は、「ルール内のすべての.cファイル」と評価されるMakefileに渡すことができる変数はありますか?
個人的に、私は以下を使用します:
CFILES=$(filter %.c,$^)
foo: foo1.c foo2.c head1.h head2.h
gcc -o $@ $(CFILES)
しかし、これが正しい方法かどうかはわかりません...