2012-04-28 9 views
2

リポジトリやプロジェクトが多い分散開発環境が非常にある場合、CMakeには、トップレベルのCMakeなしでターゲット間の依存関係を自動的に見つける既存の機能がありますファイル?CMake:他のCMakeプロジェクトでターゲットの依存関係を自動的に見つけよう

ワークフローはこのようなもので、ディレクトリを指定すると、すべてのターゲットが指定されたツリーでデフォルト設定されます。その後、プロジェクトのいずれかを構築してビルドすることができます。 Android OSをビルドするときと同様の動作を探しています。

+1

これはすべてのプロジェクトのadd_subdirectoryを実行している最上位のCMakeLists.txtでこれを達成できませんし、 'make target'を実行してあなたが望むターゲットだけをビルドできますか? –

答えて

1

異なるプロジェクト間でのCMakeのビルド時依存性追跡はありません。この場合、すべてのサブディレクトリを追加するトップレベルのプロジェクトが必要です。これにより、ターゲット名が単一のCMakeプロジェクト内で使用できるようになります。

私は、必要なプロジェクト間の依存関係を提供するCMakeの周りのヘルパースクリプトを知っています:https://github.com/aldebaran/qibuild 成熟したコードベースに近づいていると思います。ただし、プロジェクトごとに追加のディスクリプタファイルが必要です。それを見て価値があるかもしれません。

関連する問題