1

私はGNUAutotoolsを使用していて、異なるメソッドで別のmakefileをインクルードできることを確認しましたが、結果やAutomakeがインクルードを管理する方法に考えられる違いはどこにも見つかりませんでした。 、もしあれば。

私が見たさまざまな方法はとを使用include $(path_to_file)-include $(path_to file)ていますが、ファイルを含めるときにハイフンは何か違いがありますか?

4

1 に答える 1

2

ハイフンを前に付けると、包含がオプションになります。

インクルードされたファイル(例Make.include)が存在せず、を使用しているinclude Make.include場合、ビルドは失敗します。ただし、ビルドを使用している場合-include Make.includeは成功します(ただし、もちろんファイルは含まれません)。

これを使用して、ユーザーが実際のMakefileに触れることなくビルドを変更できるようにします(システムに合わせてビルドを調整する必要があり、VCSを使用して親Makefileへの変更を追跡している場合:この方法で追跡Makefileは「ダーティ」になりません)。

ただし、これはautotoolsに固有のものではなくmake、一般的に適用されます。

autotoolを使用するときは、automakeインクルードされたファイルを介して気の利いたものを追跡しないことに注意してください。

于 2013-01-16T14:58:22.980 に答える