プログラミングユーティリティ

接尾辞規則の橋渡し

接尾辞の規則では、複数の規則の関係から自動的にそれらの中間の規則を生成するということはありません。たとえば、接尾辞が .X というファイルから接尾辞が .Y というファイルを構築する接尾辞の規則と、接尾辞が .Y というファイルから接尾辞が .Z というファイルを構築する規則がある場合に、make.X ファイルから .Z ファイルを作成するという規則を、上記 2 つの規則から生成するということは行いません。中間の処理をターゲットとして指定する必要があります。中間の処理のエントリには空の規則を使用できます。

trans.Z: 
trans.Y:

この例では、trans.Y が存在していれば trans.Z はそのファイルから構築されます。trans.Y がターゲットエントリとして記述されていない場合は、使用する依存ファイルがないために make が "don't know how to build" というエラーを表示して失敗する場合があります。trans.Y がターゲットエントリとして記述されている場合は、trans.Y が最新でないまたは存在しないときに、maketrans.Y を構築します。メークファイルで規則が指定されていないため、make は適切な暗黙の規則を使用します。この場合は .X.Y の規則が使用されます。trans.X が存在する (または SCCS から取り出すことができる) 場合に、maketrans.Y および trans.Z の両方を必要に応じて再構築します。