ターゲットを複数回記述できる
ターゲットの重複で失敗する例
"greeting"という名前のターゲットを2回(2か所)記述している。
1 2 3 4 5 6 7 |
.PHONY: greeting greeting: @echo Hello greeting: @echo Bye |
実行すると以下のような警告が発せられ最後のコマンドだけが実行される
1 2 3 4 |
$ make Makefile:7: warning: overriding recipe for target 'greeting' Makefile:4: warning: ignoring old recipe for target 'greeting' Bye |
二重コロンに書き換えてターゲットの重複で成功する例
1 2 3 4 5 6 7 |
.PHONY: greeting greeting:: @echo Hello greeting:: @echo Bye |
1つ目と2つ目の両方のコマンドが正常に実行される。複数の依存関係に分割して記述したいときに便利な記法である。
1 2 3 |
$ make Hello Bye |