CMP0088¶
3.14 版新增。
FindBISON
在执行时会在 CMAKE_CURRENT_BINARY_DIR
中运行 bison。
该模块提供了一个 bison_target()
命令,用于生成 BISON 输出。在 CMake 3.13 及更早版本中,该命令会生成一个自定义构建规则,在源目录中运行 bison
。CMake 3.14 及更高版本倾向于在构建目录中运行它,并使用 CMAKE_CURRENT_BINARY_DIR
作为其 add_custom_command()
调用的 WORKING_DIRECTORY
。这确保了任何隐式生成的文件的写入都位于构建树而不是源目录中。
此策略为尚未更新以适应新行为的项目提供了兼容性。
此策略的 OLD
行为是 bison_target()
使用当前源目录作为 WORKING_DIRECTORY
以及生成隐式文件的位置。此策略的 NEW
行为是使用当前二进制目录作为 WORKING_DIRECTORY
以及生成隐式文件的位置。
此策略在 CMake 版本 3.14 中引入。它可以由 cmake_policy()
或 cmake_minimum_required()
设置。如果未设置,CMake **不会** 警告,并使用 OLD
行为。
注意
根据定义,策略的 OLD
行为是 已弃用
,并可能在未来的 CMake 版本中移除。