依存ファイルは可能なかぎりひとつにしたほうがメンテナンスが楽になってよい. 例えば,下のMakefileの(a)は,(b)のように書き直すことによって,コマンド行を一般化でき, あとでMakefileの修正が必要になったときに修正が楽になる. このように依存ファイルを複数の定義にわけて書く場合,コマンド行はどちらかひとつにしかかけないことに注意.
| (a) 改良前 | (b) 改良後 | (c) さらに改良 |
|---|---|---|
sub.o: sub.c sub.h
$(CC) -c sub.c
|
sub.o: sub.c
$(CC) -c $<
sub.o: sub.h
|
.c.o:
$(CC) -c $<
sub.o: sub.h
|