変数
自動変数リスト
POINT
[.] Rule.が決定した後に展開される
[.] そのため Command 以外での利用はできない
[.] Make は Command を実行する前に 自動変数 を設定する
$@: Target
$?: Target より新しい Depend ( Space 区切りで展開 )
$^: all Depend
$%: library 構成指定要素 すべて
$<: first dep
$+: 重複を含む all Depend
( Linker の用途 )
$*: suffix を除く target( pattern rule 以外での使用禁止 )
// make との互換機能
D: dir 返却
F: file 返却
EX
$(@D), $(<F)
TIP
// GNU make
dir, notdir 関数をサポート
target: main.o sub.o
gcc $^ -o $@ # gcc main.o sub.o -o target
WARNING
Command Line 以外は利用できない
target: main.o sub.o
gcc $^ $@ # ここだけで使用できる