CMP0059 — CMake 4.2.6 Documentation

# CMP0059

Warning

The `OLD` behavior of this policy was removed in CMake version 4.0. This policy must be set to `NEW` by a call to `cmake_minimum_required()` or `cmake_policy()`.

Added in version 3.3.

Do not treat `DEFINITIONS` as a built-in directory property.

CMake 3.3 and above no longer make a list of definitions available through the `DEFINITIONS` directory property. The `COMPILE_DEFINITIONS` directory property may be used instead.

The `OLD` behavior for this policy is to provide the list of flags given so far to the `add_definitions()` command. The `NEW` behavior is to behave as a normal user-defined directory property.

This policy was introduced in CMake version 3.3. Prior to removal in CMake version 4.0, it could be set by `cmake_policy()` or `cmake_minimum_required()`. If it was not set, CMake warned, and used `OLD` behavior.