実行されるたびに計算された値を持ちます。‘$@’、ソースファイル名に‘$<’を使用します。自動変数についてまとめた一覧が以下のものです。$@ルールにおけるターゲットのファイル名。ある場合、‘$@’はそのアーカイブファイルの名前になります。‘$@’は、ルールのコマンドが実行されるターゲットのどれかの名前になります。$%ターゲットがアーカイブのメンバーの場合は、ターゲットメンバーの名前。アーカイブファイルのアップデートにmakeを使用する.。‘bar.o’で‘$@’は‘foo.a’になります。メンバーでない場合は、‘$%’は空です。$<最初の必要条件の名前。暗黙のルールの使用.)。$?ターゲットよりも新しいすべての必要条件の名前で、スペースで区切られています。アーカイブファイルのアップデートにmakeを使用する.)。$^スペースで区切られたすべての必要条件の名前。アップデートにmakeを使用する.)。何回リストされたかは問題ではありません。1回以上リストされた必要条件が重複します。ファイル名を繰り返す場合のリンクコマンドにおいて有益です。パターンマッチの方法.)。stemは‘dir/foo’です。stemは関連する名前の構築の際に有用です。おいては‘%’にマッチします。明示的なルールの場合にはstemはありません。ターゲット名からサフィックスを取ったものとなります。‘foo.c’の場合は、‘$*’は‘foo’とセットされます。‘.c’がサフィックスだからです。除いて‘$*’の使用は避けたほうがよいのでしょう。そのルールに関して、空の文字列としてセットされます。あったオブジェクトファイルだけをアーカイブにコピーします。リストの値を持ちます。そのディレクトリのファイル名だけだったりするバリエーションを持っています。それらの名前は‘D’あるいは‘F’を追加される書式となります。変数はGNUのmakeではやや時代遅れとなっています。ファイル名に対するファンクション.)。以下にバリアントの一覧を示します。‘$(@D)’ターゲットのファイル名のディレクトリ部でうしろのスラッシュを除いたもの。‘$@’の値が‘dir/foo.o’のとき、‘$(@D)’は‘dir’です。‘$@’がスラッシュを含まないときは値は‘.’となります。‘$(@F)’ターゲットのファイル名のファイル名の部分。‘dir/foo.o’のときは、‘$(@F)’は‘foo.o’です。‘$(*D)’‘$(*F)’ディレクトリ部とstemのファイル名。この例では‘dir’と‘foo’。‘$(%D)’‘$(%F)’ターゲットのアーカイブメンバーのディレクトリ部とファイル名。ターゲットとしてのアーカイブメンバー.)。‘$(<D)’‘$(<F)’最初の必要条件のディレクトリ部とファイル名。‘$(^D)’‘$(^F)’すべての必要条件のディレクトリ部とファイル名のリスト。‘$(?D)’‘$(?F)’ターゲットよりも新しいすべての必要条件のディレクトリ部とファイル名のリスト。用いることに注意してください。‘$<’と記述することです。自然であると考えます。名付けられた変数を参照することと同じです。場所で‘$(<)’を使うことができます。場合も含めて両者のあいだの‘%’から構成されています。ファイル名にマッチします。stemと呼ばれます。‘test.o’にマッチするときのstemは‘test’です。それは‘test.c’と展開されます。比較されるまえにファイル名から取り除かれます。パターンとファイル名から生成された必要条件のファイル名に加えられます。ルールの発見の目的のためだけに無視されます。‘src/a’をstemとしてファイル名‘src/eat’にマッチします。加えられ、stemの残りは‘%’で代用されます。‘c%r’を伴うstem‘src/a’はファイル名‘src/car’を与えます。ファイル名にでもマッチします。多くの時間を費やします。リストされた個々のファイル名に対してすべて考慮しなければならないからです。コンパイルとリンクなどによってmakeすることを考慮しなければなりません。実行可能ではないことを知っているため滑稽だと感じます。これらの可能性を考慮する場合、最終的にはそれらを拒絶するでしょう。それらを考慮した場合には非常に動作が遅くなってしまいます。方法にさまざまな制約を置きます。適用できる制約は2つあります。選択しなければなりません。ターミナルであるとしてマークすることです。その必要条件が実際に存在しない限りそれは適用されません。ルールによって作られた必要条件は十分なものではありません。ターミナルルールを越えて連鎖は許可されないのです。それをみなそうとしません。ソースファイルであり、ほかのファイルから作り出されることはありません。時間を節約できるのです。ターミナルでないことになります。特別なタイプのデータを示すファイル名には適用できないことになります。ファイル名は特別なタイプのデータを示すことになります。実行するルール)に対するターゲットとマッチします。ターミナルでない何にでもマッチするルールを考慮するのを妨げるのに十分です。実行ファイルとして‘foo.c’を作成しようと考慮することさえしないのです。作成するのに用いられるためです。提供されていて、ターミナルでない何にでもマッチするルールは考慮されません。ほかの目的に対しては無視されます。探すための時間をむだにすることを回避するのです。古いスタイルのサフィックスルール.)。この場合コマンドは異なるものが必要です。定義されると組み込み済みのものは置き換えられます。シーケンスにおける新しいルールの位置は、新しいルールを書いた場所によります。定義することでキャンセルすることが可能です。異なるものが必要です。何にでもマッチするパターンルール.)。マッチするという唯一の点で異なります。ターゲットと必要条件に対して用いられます。存在するだけなので気にしてはなりません。