CMP0178¶
在版本 3.31 中添加。
测试命令的命令行会保留空参数。
现在,以下命令添加的测试会保留 TEST_LAUNCHER 和 CROSSCOMPILING_EMULATOR 目标属性中的空值
add_test()命令。来自
ExternalData模块的ExternalData_Add_Test()命令。来自
GoogleTest模块的gtest_add_tests()或gtest_discover_tests()命令。
对于 gtest_add_tests() 和 gtest_discover_tests() 命令,现在也会保留在 EXTRA_ARGS 关键字后传递的值中的空元素。
在此策略的 OLD 行为下,在上述提到的情况下,会静默丢弃 TEST_LAUNCHER 和 CROSSCOMPILING_EMULATOR 目标属性中的空列表项。它还会静默丢弃在 gtest_add_tests() 和 gtest_discover_tests() 命令的 EXTRA_ARGS 之后提供的值中的空项。
在此策略的 NEW 行为下,会保留 TEST_LAUNCHER 和 CROSSCOMPILING_EMULATOR 目标属性中的空列表项,以及为 gtest_add_tests() 和 gtest_discover_tests() 在 EXTRA_ARGS 之后提供的空值。
此策略是在 CMake 版本 3.31 中引入的。它可以由 cmake_policy() 或 cmake_minimum_required() 设置。如果未设置,CMake 会发出警告并使用 OLD 行为。
注意
根据定义,策略的 OLD 行为是 不推荐 的,并且可能会在未来的 CMake 版本中被移除。