微妙に違う (make)
GNU Make自動変数:
- $* : 一致する暗黙のルールの語幹(どんな型が一致するかの項を参照)。
- $@ : ターゲットのファイル名。
- $^ 、$+ : 全依存関係の名前を空白で挟んで並べたもの。アーカイブメンバである依存関係についてはメンバー名だけが利用されます(アーカイブファイル更新にmakeを利用するの項を参照)。 $^の値では重複する依存関係は省略し、一方$+では残し、さらに順番も保存されます。
- $< : 最初の依存関係の名前。
- $% : ターゲットがアーカイブメンバだった時のターゲットメンバ名。
- $? : ターゲットより新しい全部の依存関係の名前を空白をはさんで並べたもの。 アーカイブメンバである依存関係についてはメンバー名だけが利用されます(アーカイブファイル更新にmakeを利用するの項を参照)。
OMake特殊変数:
- $* : 拡張子を除いたターゲットの名前
- $@ : ターゲットの名前
- $^ : 依存ファイルのリストをアルファベット順に並べ、かつ重複した内容を削除したもの
- $+ : 元の順番で並んでいる依存ファイルのリスト
- $< : 最初の依存ファイル
$@, $^, $+, $< は同じとみなして大丈夫か。