Sun WorkShop TeamWare ユーザーズガイド

ターゲットの並列構築

大規模なソフトウェアプロジェクトは通常、複数の独立モジュールから構成されており、並列モードでの構築が可能です。dmake ユーティリティは、ネットワーク上の複数のマシンで複数のターゲットを同時に処理することを可能にします。これによって、大規模なプロジェクトの構築に必要な時間を大幅に削減することができます。

構築するターゲットが指定されると、dmake はそのターゲットに関連する依存関係を検査して、未更新のファイルを構築します。未更新の依存ファイルを構築することによって、さらにそのファイルと依存関係のあるファイルを構築する必要が生じることもあります。ジョブを分散する場合、dmake は可能な限り多くのターゲットの構築処理を同時に開始します。最初に開始したターゲットの処理が完了した時点で、残りのターゲットの処理を開始します。デフォルトでは、dmake を入れ子にして呼び出した場合には、並列化は行われませんが、この設定は変更できます (詳細は、「並列化を制限するとき」を参照)。

dmake は複数のターゲットを同時に構築するため、各構築プロセスの出力が同時に生成されることになります。さまざまなコマンドによる出力が混在しないように、dmake は各構築プロセスからの出力を別々に収集します。dmake ユーティリティはコマンドが実行される前にそのコマンドを表示します。実行したコマンドによって出力、警告、エラーが生成された場合、dmake はそのコマンドからの出力をすべて表示します。出力の内容はコマンドが終了した時点で表示されるため、後から実行されたコマンドが先に終了した場合、出力の表示が実行順と異なることもあります。