包括CMake代码覆盖的外部依赖关系

时间:2019-07-09 00:00:00

标签: cmake clang gcov

我有一个用Boost测试框架编写的测试套件,其中所有测试源文件都在一个目录中(我们称它为 tests ),而所有外部依赖项都在另一个目录中,称为 ext 。我已经用CMake配置了我的构建,并且试图生成代码覆盖率结果(使用clang和llvm-gcov)。

我在CMake文件中添加了以下内容:

set(CMAKE_C_FLAGS "${CMAKE_C_FLAGS} --coverage")
set(CMAKE_CXX_FLAGS "${CMAKE_CXX_FLAGS} --coverage")

问题在于,仅为 tests 中的文件生成.gcno文件,而不为 ext 中的外部文件生成。我尝试使用 INCLUDE_DIRECTORIES(dir)将外部目录包含在CMake文件中,并尝试将外部文件添加为可执行文件所需的源文件,但都没有起作用。任何帮助表示赞赏。

0 个答案:

没有答案