Sun Studio 12: Fortran プログラミングガイド

3.1.1 メイクファイル

メイクファイル」と呼ばれるファイルは、ソースファイルとオブジェクトファイルがお互いにどのように依存するかを構造化された方法で make に伝えるものです。さらに、これらのファイルをコンパイルし、リンクするのに必要なコマンドを定義します。

たとえば、4 つのソースファイルから成るプログラムとメイクファイル (ファイル名 makefile) があるとします。


demo% ls
makefile
commonblock
computepts.f
pattern.f
startupcore.f
demo%

この例では、pattern.fcomputepts.fcommonblockインクルードするものと仮定します。そして、各 .f ファイルをコンパイルして、3 つの再配置可能なファイルおよび一連のライブラリを pattern というプログラムにリンクします。

この場合の makefile は次のようになります。


demo% cat makefile
pattern: pattern.o computepts.o startupcore.o
      f95 pattern.o computepts.o startupcore.o -lcore95 \
      -lcore -lsunwindow -lpixrect -o pattern
pattern.o: pattern.f commonblock
      f95 -c -u pattern.f
computepts.o: computepts.f commonblock
      f95 -c -u computepts.f
startupcore.o: startupcore.f
      f95 -c -u startupcore.f
demo%

makefile の最初の行では、pattern の作成が pattern.ocomputepts.o、および startupcore.o に依存することを表しています。次の行以降は、再配置可能な .o ファイルとライブラリから pattern を作成するコマンドです。

makefile の各行は、ターゲットオブジェクトの依存性を表す規則と、そのオブジェクトを作成するのに必要なコマンドです。規則の構造は次のようになります。

ターゲット: 依存性リストTAB 構築コマンド