Spec-Zone.ru › CMake 3.30

CMakeDependentOption

Макрос для предоставления параметра, зависящего от других параметров.

Этот макрос представляет параметр пользователю только в том случае, если набор других условий выполняется.

cmake_dependent_option
cmake_dependent_option(<option> "<help_text>" <value> <depends> <force>)

Делает <option> доступным для пользователя, если все условия в списке, разделённом точкой с запятой <depends> выполняются. В противном случае локальная переменная с именем <option> устанавливается в значение <force>.

Когда <option> доступен, используются заданные <help_text> и начальное значение <value>. В противном случае любое значение, заданное пользователем, сохраняется до момента, когда <depends> будет выполнено в будущем.

Обратите внимание, что переменная <option> имеет значение, удовлетворяющее условию <depends> только в пределах области видимости вызывающего кода, так как это локальная переменная.

Пример вызова:

cmake_dependent_option(USE_FOO "Use Foo" ON "USE_BAR;NOT USE_ZOT" OFF)

Если USE_BAR истинно, а USE_ZOT ложно, это предоставляет параметр под названием USE_FOO, который по умолчанию равен ON. В противном случае, оно устанавливает USE_FOO в OFF и скрывает параметр от пользователя. Если статус USE_BAR или USE_ZOT когда-либо изменится, любое значение для параметра USE_FOO сохраняется, чтобы при повторном включении параметра оно сохранило своё старое значение.

Новое в версии 3.22: Теперь поддерживается полный Синтаксис условия. См. политику CMP0127.

© 2000–2024 Kitware, Inc. and Contributors
Licensed under the BSD 3-clause License.
https://cmake.org/cmake/help/v3.30/module/CMakeDependentOption.html

Spec-Zone.ru

Настройки Оффлайн Что нового Помощь О нас
Spec-Zone .ru
спецификации, руководства, описания, API