現在、.o ごとに依存ファイルを生成しています。しかし、インクリメンタル ビルドを行う場合、Make は依存関係ファイルから各 .o の依存関係を読み取ります。Make はこれらの依存ファイルのタイム スタンプをチェックし、それを .o と比較していますか? もしそうなら、依存関係のステータスをキャッシュして、各オブジェクトファイルのステータスチェックが重複するために I/O ヒットが多すぎるのを避けることは可能ですか?
for example,
a.o: h1.h h2.h
gcc...
b.o: h1.h h2.h
gcc...
ao をビルドするときに h1.h と h2.h のステータスをキャッシュすると、bo をビルドするときに 2 つのチェックを節約できますか?
私は make システムに精通していませんが、現在、大規模なレガシー C プロジェクトでそのパフォーマンスを改善する方法を探しています。