1

一度だけ実行される仮想ターゲットに依存したい。

Makefile私がこれまでに試したことで:

a: b

b: c d
    touch b

c:
    # time consuming task that only needs to run once

d:
    # time consuming task that only needs to run once

bすでに存在する場合に依存関係チェーンを停止する方法はありますか?bとの再実行をトリガーするcために手動でクリーンにすることで問題ありませんda長時間実行されるタスクが存在する場合は、それをトリガーせずに何度も実行できるようにしたいb

cやのようなタスクがたくさんあるdので、個別のタスクごとにファイルに触れないようにし、ファイルシステムが不要なファイルで乱雑にならないようにします。

4

1 に答える 1

3

Makefileは次のように記述できます。

a: b

b c:
    # time consuming task that only needs to run once
    touch b

make c無条件にタスクを呼び出します。

make bファイルbが存在しない場合にのみタスクを実行します。

make abに依存するため、タスクはbが存在しない場合にのみ実行されます。

于 2012-05-10T13:14:44.263 に答える