依存関係作成を生成します。
このオプションは、標準出力でのコンパイルされたソースファイルの依存関係作成を生成します。このオプションは、ソースファイル (ヘッダーファイルと Fortran モジュールの両方) のすべての依存関係作成を扱います。
モジュール依存関係の場合、このオプションは、オブジェクトベースのモジュール依存関係スキームを使用して、モジュールファイルを作成するための明示的な構築規則の必要性をなくします。
このコンパイルは、-c、-S、-Xlist、または別のコンパイル出力を生成するほかのどのコンパイルオプションとも一緒に使用することはできません。
生成された依存関係出力には構築規則は含まれず、ファイルの依存関係だけが含まれます。ユーザーは、構築に必要なすべてのファイルの構築規則を指定する必要があります。ただし、モジュールファイルの場合は、関連したオブジェクトファイルと同時に作成されるので、明示的な構築規則は必要ありません。したがって、モジュールファイルには一般的な構築規則だけで十分です。
%.mod: @ echo $@ is already up to date.
モジュールファイル構築規則は、構築規則がなければモジュールファイルに関連したすべての依存関係を「make」プロセスで除外できないようにする場合にのみ必要です。それ以外では、上記の例に示すように、構築規則は何も行いません。
-keepmod オプションを指定して使用した場合、-xM オプションで生成された依存関係は、不必要に更新したモジュールファイルのために生じるコンパイルカスケードを防止するほか、モジュールファイルでの不必要な更新を防止するために -keepmod オプションを使用したことで生じる同一のソースファイルでの再コンパイルの問題も防止します。
このオプションは、-M、-I、-moddir オプションとともに機能して、構築で必要なモジュールファイルの適切なディレクトリを判断します。プリコンパイルされたモジュールファイル (たとえば第三者が出荷したもの) は、正しい依存関係を生成できるように、-M オプションで示されるディレクトリに存在する必要があります。