さらにロクでもない仕様が判明
DontCareフラグとしての空レシピは擬似ターゲット(ほんとのPHONYターゲット)では別な挙動を示す。
- リソースターゲット(PHONYではないターゲット)では、空レシピはDontCareフラグとして働く。
- 擬似ターゲット(ほんとのPHONYターゲット)では、空レシピはDontCareフラグとしての効果がない。擬似ターゲットをup-to-dateにする手段がない。[追記].PHONY指定した擬似ターゲットはup-to-dateになってはいけない、という発想か?[/追記]
- レシピのオーバーライドに関しては空レシピも普通にオーバーライドの規則で扱われる。
こんなことをする理由がまったく分からない。リソースターゲットのときだけDontCareフラグが働くのは謎だ。逆に、擬似ターゲットのときだけDontCareを使いたい方が多いだろうに。互換性か? だとしても酷い仕様を残していいることになる。イイカゲンに互換性命もやめて欲しい。