CMAKE_OSX_DEPLOYMENT_TARGET
Указывает минимальную версию целевой платформы, например macOS или iOS, для которой должны быть развернуты целевые бинарные файлы.
Для сборок, предназначенных для macOS (CMAKE_SYSTEM_NAME — Darwin), если CMAKE_OSX_DEPLOYMENT_TARGET не задана явно, устанавливается значение по умолчанию:
- Если переменная среды
MACOSX_DEPLOYMENT_TARGETне пуста, ее значение используется по умолчанию. -
В противном случае, если используется генератор
Xcodeи версия macOS на хосте старше, чем версия macOS в SDK (CMAKE_OSX_SYSROOT, если задана, или SDK по умолчанию в Xcode), по умолчанию используется версия macOS на хосте.Изменено в версии 4.0: Ранее это применялось ко всем генераторам, а не только к Xcode.
- В противном случае значение по умолчанию — пустая строка.
Действие CMAKE_OSX_DEPLOYMENT_TARGET зависит от генератора:
Если для CMAKE_OSX_DEPLOYMENT_TARGET задано непустое значение, оно добавляется в сгенерированный проект Xcode как настройка MACOSX_DEPLOYMENT_TARGET. В противном случае такая настройка не добавляется, и используется целевая платформа развертывания по умолчанию в Xcode, обычно определяемая версией SDK.
Другие генераторы
Если для CMAKE_OSX_DEPLOYMENT_TARGET задано непустое значение, оно передается компилятору с помощью флага -mmacosx-version-min или его эквивалента. В противном случае такой флаг не добавляется, и используется целевая платформа развертывания компилятора по умолчанию.
Значение этой переменной следует задать до первого вызова команды project() или enable_language(), поскольку оно может влиять на настройку цепочки инструментов и флагов. Предполагается, что эта переменная задается пользователем, создающим дерево сборки. Эту переменную следует задать как запись CACHE (иначе CMake может удалить ее при инициализации записи кэша с тем же именем), если только политика CMP0126 не установлена в NEW.
Несмотря на часть OSX в имени переменной, она также применима к SDK других платформ, помимо macOS, например iOS, tvOS, visionOS и watchOS.
Эта переменная игнорируется на платформах, отличных от Apple.
© 2000–2026 Kitware, Inc. and Contributors
Licensed under the BSD 3-clause License.
https://cmake.org/cmake/help/latest/variable/CMAKE_OSX_DEPLOYMENT_TARGET.html