CMP0004 — CMake 3.17.2 Documentation

# CMP0004

Libraries linked may not have leading or trailing whitespace.

CMake versions 2.4 and below silently removed leading and trailing whitespace from libraries linked with code like

    target_link_libraries(myexe " A ")

This could lead to subtle errors in user projects.

The `OLD` behavior for this policy is to silently remove leading and trailing whitespace. The `NEW` behavior for this policy is to diagnose the existence of such whitespace as an error. The setting for this policy used when checking the library names is that in effect when the target is created by an `add_executable()` or `add_library()` command.

This policy was introduced in CMake version 2.6.0. CMake version 3.17.2 warns when the policy is not set and uses `OLD` behavior. Use the `cmake_policy()` command to set it to `OLD` or `NEW` explicitly.

Note

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