dmake は実行を開始すると、ジョブの分散先を知るために、実行時構成ファイルを検索します。
このファイルは通常、dmake ホストのホームディレクトリにあり、.dmakerc という名前が付いています。
dmake は次の場所の実行時構成ファイルを次の順序で検索します。
コマンド行で -c オプションを使用して指定したパス名
DMAKE_RCFILE メイクファイルマクロを使用して指定したパス名
DMAKE_RCFILE 環境変数を使用して指定したパス名
$(HOME)/.dmakerc 内
実行時構成ファイルが見つからない場合、dmake は並列モードに切り替わり、dmake ホストに 2 つのジョブ (デフォルト) を分散します。これは、-j オプションか、DMAKE_MAX_JOBS を使用して変更できます。
実行時構成ファイルには、構築サーバーのリストと、各構築サーバーに分散するジョブの数を含めることができます。
次は、単純な実行時構成ファイルのサンプルです。
# My machine. This entry causes dmake to distribute to it falcon { jobs = 1 } hawk eagle { jobs = 3 } # Manager's machine. She's usually at meetings heron { jobs = 4 } avocet
エントリ falcon、hawk、eagle、heron、および avocet は、構築サーバーとしてリストされています。
各構築サーバーに分散するジョブの数を指定できます。ジョブのデフォルト数は 2 です。
"#" 文字で始まる任意の行は、コメントとして解釈されます。
また、実行時構成ファイル内に構築サーバーのグループを構築することもできます。これは、状況に応じて、構築サーバーの異なるグループを容易に切り替える柔軟性を提供します。たとえば、異なるオペレーティングシステムでのビルド用に異なる構築サーバーのグループを定義したり、特殊なソフトウェアがインストールされている構築サーバーのグループを定義したりできます。構築サーバーはすべて同じアーキテクチャーで、同じ OS がインストールされている必要があります。
次の実行時構成ファイルにはグループが含まれています。
earth { jobs = 2 } mars { jobs = 3 } group lab1 { host falcon { jobs = 3 } host hawk host eagle { jobs = 3 } } group lab2 { host heron host avocet { jobs = 3 } host stilt { jobs = 2 } group labs { group lab1 group lab2 } group sunos5.x { group labs host jupiter host venus { jobs = 2 } host pluto { jobs = 3 } }