別の内1つのcmakeのプロジェクトを埋め込みますか?

StackOverflow https://stackoverflow.com/questions/1457920

  •  12-09-2019
  •  | 
  •  

質問

私はCMakeの両方に使用する2つのプロジェクトを持っています。今、私はまだ、スタンドアロンのプロジェクトとして、それらをコンパイルする機能を維持しながら、他の内部ライブラリとしてプロジェクトの一つを含めるます。

私がこれまでに行っていることである:親プロジェクトのサブディレクトリに子プロジェクトのコピーのクローンを作成するためにバージョン管理システムを使用してください。私は、親プロジェクトに子プロジェクトのCMakeLists.txtを含めるように「add_subdirectory」を使用しました。そして、私は子プロジェクトでターゲットのいくつかの名前を変更することにより、ターゲット間の名前の衝突を固定しています。

しかし、私はに実行しています問題は、子プロジェクトでさまざまな構成のテストが実行されていないようだということです。例えば、子プロジェクトは、同期プリミティブが利用可能であるかを判断するためにFindThreadsモジュールを使用しています。親プロジェクトは、スレッドの問題を認識していないため、これに関連するすべてのテストを持っていません。同様に、子プロジェクトは、親プロジェクトで必要とされていないヘッダやなどのためのさまざまなテストを持っています。これらのテストのいずれも実行されているように見えないし、これらのテストで定義されたシンボルは、CMakeCache.txtファイルに追加されていません。

私は本当に親プロジェクトのCMakeLists.txtに(ほとんどの親に関係のないプラットフォーム固有の問題に対処する)子プロジェクトのすべてのテストをホイストする必要がありますする必要はありません。

scroll top