CMP0026¶
禁止对构建目标使用 LOCATION 属性。
CMake 2.8.12 及更低版本允许读取 LOCATION 目标属性(和特定于配置的变体)以确定构建目标的最终位置。这依赖于所有必要信息在配置时可用以确定目标的最终位置和文件名的假设。但是,此属性直到稍后在生成时才完全确定。在生成时, $<TARGET_FILE> 生成器表达式可用于确定目标输出的最终位置 LOCATION。
读取 LOCATION 目标属性的代码可以移植为使用 $<TARGET_FILE> 生成器表达式和 file(GENERATE) 子命令来生成包含目标位置的文件.
此策略的“旧”行为是允许从构建目标读取 LOCATION 属性。此策略的“新”行为是不允许从构建目标读取 LOCATION 属性。
此策略是在 CMake 3.0 版中引入的。 CMake 版本 |发布|当未设置策略并使用“旧”行为时发出警告。使用 cmake_policy() 命令将其显式设置为 OLD 或 NEW。
备注
策略的“旧”行为是 :manual:根据定义 <cmake-policies(7)> 已弃用,并且可能会在未来版本的 CMake 中删除。