CMP0072 — CMake 4.2.6 Documentation

# CMP0072

Added in version 3.11.

`FindOpenGL` prefers GLVND by default when available.

The `FindOpenGL` module provides an `OpenGL::GL` target and an `OPENGL_LIBRARIES` variable for projects to use for legacy GL interfaces. When both a legacy GL library (e.g. `libGL.so`) and GLVND libraries for OpenGL and GLX (e.g. `libOpenGL.so` and `libGLX.so`) are available, the module must choose between them. It documents an `OpenGL_GL_PREFERENCE` variable that can be used to specify an explicit preference. When no such preference is set, the module must choose a default preference.

CMake 3.11 and above prefer to choose GLVND libraries. This policy provides compatibility with projects that expect the legacy GL library to be used.

The `OLD` behavior for this policy is to set `OpenGL_GL_PREFERENCE` to `LEGACY`. The `NEW` behavior for this policy is to set `OpenGL_GL_PREFERENCE` to `GLVND`.

This policy was introduced in CMake version 3.11. 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.