# CMAKE_OSX_DEPLOYMENT_TARGET

Specify the minimum version of the target platform (e.g. macOS or iOS) on which the target binaries are to be deployed. CMake uses this variable value for the `-mmacosx-version-min` flag or their respective target platform equivalents. For older Xcode versions that shipped multiple macOS SDKs this variable also helps to choose the SDK in case `CMAKE_OSX_SYSROOT` is unset.

If not set explicitly the value is initialized by the `MACOSX_DEPLOYMENT_TARGET` environment variable, if set, and otherwise computed based on the host platform.

The value of this variable should be set prior to the first `project()` or `enable_language()` command invocation because it may influence configuration of the toolchain and flags. It is intended to be set locally by the user creating a build tree. This variable should be set as a `CACHE` entry (or else CMake may remove it while initializing a cache entry of the same name) unless policy `CMP0126` is set to `NEW`.

Despite the `OSX` part in the variable name(s) they apply also to other SDKs than macOS like iOS, tvOS, visionOS, or watchOS.

This variable is ignored on platforms other than Apple.