2012-01-16 16 views
2

私は現在、いくつかのプロジェクトで古いmakeシステムの置き換えを見ています。私が現在見ている選択肢の1つはcmakeです。しかし、私がこれまで知っていたことから、CMakeはAutotoolsや他の人が好むものと同様に、ディレクトリごとに一つの設定ファイルを持つことを好みます。Cmakeは再帰的なビルドを正しく処理しますか

再帰的なmakeはconsidered harmfullでなければならないことは知っています。依存グラフ全体が常にわかっているわけではありません。そのため、再帰的なmakeに依存する他のツールは、すべてのケースで正しく動作しないか、これらの問題を回避するためにいくつかのラッパーが必要です。

私は現在、CMakeがこのケースをどのように処理しているか、また論文で言及されている問題がデザイン上考慮されているかどうかを判断しようとしています。私はこの論文で言及されている例を試してみるが、もしうまくいくならば、再帰的なビルドがすべての場合に機能することは確かではない。

したがって、主な質問は次のとおりです。この問題はCMakeで考慮されているのですか?もしそうなら、どこで解決策を読むことができますか?

EDIT

私は、この問題にCMakeのFAQ entryを見つけましたが、私はその答えによって、本当に満足していません。実際の答えはどこかにあると思いますが、私はそれを見つけることができません。なぜなら私はCMakeの内部構造についての知識はまだありませんし、学習するつもりもないからです。目的。

答えて

6

CMakeは、CMakeLists.txtごとに1つのメイクファイルを生成しません。それはすべての情報をすべて収集し、それは信じられないほど複雑ですが、確かにその方法で書かれているので信頼性が高く、関連するファイルが再構築されることが保証されます。CMakeLists.txt

関連する問題