CMP0026 — CMake 3.31.6 Documentation

# CMP0026

Disallow use of the LOCATION property for build targets.

CMake 2.8.12 and lower allowed reading the `LOCATION` target property (and configuration-specific variants) to determine the eventual location of build targets. This relies on the assumption that all necessary information is available at configure-time to determine the final location and filename of the target. However, this property is not fully determined until later at generate-time. At generate time, the `$<TARGET_FILE>` generator expression can be used to determine the eventual `LOCATION` of a target output.

Code which reads the `LOCATION` target property can be ported to use the `$<TARGET_FILE>` generator expression together with the `file(GENERATE)` subcommand to generate a file containing the target location.

The `OLD` behavior for this policy is to allow reading the `LOCATION` properties from build-targets. The `NEW` behavior for this policy is to not to allow reading the `LOCATION` properties from build-targets.

This policy was introduced in CMake version 3.0. It may be set by `cmake_policy()` or `cmake_minimum_required()`. If it is not set, CMake warns, and uses `OLD` behavior.

Note

The `OLD` behavior of a policy is `deprecated by definition` and may be removed in a future version of CMake.