CMP0109

3.19 版本新增。

find_program() 要求执行权限,但不要求读取权限。

在 CMake 3.18 及更早版本中,UNIX 上的 find_program() 命令会查找可读取但不需要执行权限的文件,而不会查找可执行但不需要读取权限的文件。在 CMake 3.19 及更高版本中,find_program 现在更倾向于要求执行权限,但不要求读取权限。此策略提供了与未更新以适应新行为的项目兼容性。

此策略的 OLD 行为是 find_program 要求读取权限,但不要求执行权限。此策略的 NEW 行为是 find_program 要求执行权限,但不要求读取权限。

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

注意

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