CMP0110

在版本 3.19 中新增。

add_test() 支持在测试名称中使用任意字符。

add_test() 现在可以(正式)创建一个测试,其名称中包含空格和其他特殊字符。在 CMake 3.19 版本之前,该操作不被允许。但是,通过在 add_test 命令中显式添加转义引号将测试的名称括起来,可以解决此限制的问题。

虽然从未获得过正式支持,但一些开源项目找到了并采用了此解决方法。然而,正式允许 add_test 命令在测试名称中支持空格和其他特殊字符的新更改破坏了该解决方法。为了使这些项目能够与较新的 CMake 版本平稳协作,引入了此策略。

此策略的 OLD 行为仍然会阻止 add_test 正确处理空格和特殊字符(如果不使用提到的解决方法)。另一方面, NEW 行为则允许 add_test 创建的测试名称中包含空格和特殊字符。

此策略在 CMake 版本 3.19 中引入。可以通过 cmake_policy()cmake_minimum_required() 设置它。如果未设置,CMake 会发出警告并使用 OLD 行为。

注意

策略的 OLD 行为 按定义 已弃用,并且可能会在未来的 CMake 版本中移除。