make コマンドでは、引数として、マクロ定義、オプション、記述ファイル名、ターゲットファイル名を以下の形式で指定します。
$ make [ options ] [ macro definitions and targets ]
以下に、各引数の意味を説明します。
まず、すべてのマクロ定義の引数 (= 記号が組み込まれた引数) が解析され、値が割り当てられます。コマンド行のマクロは、記述ファイル中の対応する定義を無効にします。次にオプションの引数が調べられます。使用可能なオプションは、以下のとおりです。
呼び出したコマンドが返すエラーコードを無視します。.IGNORE というターゲット名が記述ファイルに記述されている場合に、このモードになります。
サイレントモードです。実行前にコマンド行を出力しません。.SILENT というターゲット名が記述ファイルに記述されている場合にも、このモードになります。
組み込み規則を使用しません。
実行を行わないモードです。コマンドは出力しますが、コマンドを実際には実行しません。@ 記号で始まる行も出力されます。
通常のコマンドは実行せずに、ターゲットファイルに touch コマンドを実行します (ファイルが更新されます)。
make コマンドは、ターゲットファイルが最新かどうかにより、ゼロまたはゼロ以外の状態コードを返します。
すべてのマクロ定義およびターゲットの記述を出力します。
障害が発生した場合に現在のエントリでの処理を中止しますが、現在のエントリに依存しない他の分岐では処理を続行します。
メークファイルでのマクロの割り当てよりも環境変数を優先します。
引数は、記述ファイル名とみなされます。ファイル名が - の場合は、標準入力を示します。-f に引数がない場合は、現在のディレクトリにある makefile、Makefile、s.makefile、s.Makefile のいずれかの名前のファイルが読み込まれます。記述ファイルの内容 (ある場合) は、組み込み規則よりも優先されます。以下の 2 つのターゲット名は、フラグと同様に評価されます。
ファイルを作成する際に明示的なコマンドまたは関連する組み込み規則がない場合、.DEFAULT という名前があればそれに対応するコマンドが実行されます。
Quit または Interrupt が実行された場合にこのターゲットの依存関係は削除されません。
その他の引数は、作成するターゲット名とみなされ、引数は左から右の順序で処理されます。他に引数がない場合は、記述ファイルに記述されている最初の文字が . 記号でない名前が使用されます。