CTestUseLaunchers

CTEST_USE_LAUNCHERS 变量被设置为类真值(例如 ON)时,该模块会设置 RULE_LAUNCH_* 全局属性。

在 CMake 项目中加载此模块,使用

include(CTestUseLaunchers)

当调用 include(CTest) 时,CTestUseLaunchers 模块会被 CTest 模块自动包含。不过,它也作为一个独立的模块提供,以便项目可以独立使用 CTEST_USE_LAUNCHERS 功能。

要使用启动器(launchers),需在 ctest -S 仪表盘脚本中将 CTEST_USE_LAUNCHERS 变量设置为类真值,并在被配置的项目中设置 CTEST_USE_LAUNCHERS 缓存变量。为了使启动器正常工作,cmakectest 都必须知晓该值。

  • cmake 需要它来生成相应的构建规则。

  • ctest 需要它来进行准确的错误和警告分析。

为了方便起见,可以在 ctest -S 脚本中设置环境变量 CTEST_USE_LAUNCHERS_DEFAULT。只要 CMakeLists.txt 包含了 CTestCTestUseLaunchers 模块,它就会使用该环境变量的值来初始化 CTEST_USE_LAUNCHERS 缓存变量。只有当 CTEST_USE_LAUNCHERS 尚未定义时,才会执行此缓存变量的初始化。

3.8 版本加入: 如果在 ctest -S 脚本中将 CTEST_USE_LAUNCHERS 设置为类真值,ctest_configure() 命令在配置项目时会向 cmake 命令添加 -DCTEST_USE_LAUNCHERS:BOOL=TRUE 参数。

示例

set(CTEST_USE_LAUNCHERS ON)
include(CTestUseLaunchers)