make コマンドによる環境変数の使用法について
make コマンドは、実行のたびに、 現在の環境変数を読み、それらを定義されているマクロに追加します。
MAKEFLAGS マクロまたは MFLAGS マクロを使用して、 ユーザーは、make コマンドに渡すフラグを指定することができます。 両方とも設定されている場合、MAKEFLAGS マクロが MFLAGS マクロを指定変更します。 これらの変数を使用して指定されたフラグは、 任意のコマンド・ライン・オプションとともに make コマンドへ渡されます。 make コマンドに対する再帰呼び出しの場合は、 記述ファイルの $(MAKE) マクロを使用して、make コマンドがそれぞれのコールのたびにすべてのフラグを渡します。
make コマンドが実行されると、 次の順序でマクロ定義が割り当てられます。
- MAKEFLAGS 環境変数を読む。
MAKEFLAGS 環境変数が存在していないか null の場合、make コマンドは MFLAGS 環境変数内の非 null 値を調べます。 これらの変数の 1 つに値がある場合、make コマンドは、 その値の中の各文字が入力フラグであると想定します。 make コマンドは、 これらのフラグを使用して (MAKEFLAGS または MFLAGS 環境変数から設定できない -f、-p、 および -d のフラグを除く) その操作条件を判別します。
- コマンド・ラインから入力フラグを読んで、 設定する。 コマンド・ラインは、 MAKEFLAGS または MFLAGS 環境変数から直前の設定を追加します。
- コマンド・ラインからマクロ定義を読む。 make コマンドは、 これらの名前にこれ以上の割り当てがあっても無視します。
- 内部マクロ定義を読む。
- 環境を読む。 make コマンドは、 環境変数をマクロ定義として扱い、それらを他のシェル・プログラムに渡します。