私はGNU makefileに(とりわけ)フォームのいくつかのルールを持っています
a b c d: x
program $^
つまりprogram
、1 回の呼び出しでファイル a、b、c、および d を作成します。これを で実行するとgmake -j 4
、ファイルが存在せず、他のファイルに依存するファイルがないため、spawns を 4 回並行して実行します。program
「偽の依存関係チェーン」を提供することでこれを修正できます (より適切な用語がないため)。
a: x
program $^
b: a
c: b
d: c
program
並列ビルドであっても、gmake に一度だけ実行するように教えるより洗練された方法はありますか?
編集:に関する最新の場合、ソリューションは依存関係に従い、x
何もしない必要があります。a - d
x