ターゲットは複数かける

意味があるかどうかはよくわからないけど,ターゲットのほうを複数書くことができる.

(a)分割してかいた場合 (b)ターゲットを複数かいた場合
main.o: common.h
        $(CC) -c $*.c
sub.o: common.h
        $(CC) -c $*.c
main.o sub.o: common.h
        $(CC) -c $*.c

なお,動的マクロ$*は“ターゲット”からサフィックスを除いたものを参照することに注意しよう. 依存記述行が“sub.o: sub.c”のようにサフィックスを除いた部分が同じだと曖昧な記憶で問題ないのだけど, この例の(b)のように すべて異なるファイル名が並んでいるような場合,この規則をしっかり覚えていないとコマンド行を書くときにまよってしまう.


はたいたかし
トップ > 開発ツール > make