我有两个项目,都使用CMake.现在我想将其中一个项目作为一个库包含在另一个项目中,同时仍然保持将它们编译为独立项目的能力.
到目前为止我所做的是:使用版本控制系统在父项目的子目录中克隆子项目的副本.我已经使用"add_subdirectory"将子项目的CMakeLists.txt包含到父项目中.我通过重命名子项目中的一些目标来修复目标之间的名称冲突.
但是,我遇到的一个问题是子项目中的各种配置测试似乎没有运行.例如,子项目使用FindThreads模块来确定可用的同步基元.父项目不知道线程问题,因此没有任何与此相关的测试.类似地,子项目对标题进行了各种测试,父项目不需要这些测试.这些测试似乎都没有运行,并且这些测试定义的符号没有添加到CMakeCache.txt文件中.
我真的不想将所有子项目的测试(主要处理与父项无关的平台特定问题)提升到父项目的CMakeLists.txt中.
归档时间: |
|
查看次数: |
10619 次 |
最近记录: |