Spec-Zone.ru › CMake

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/latest/module/CMakeDependentOption.html

Spec-Zone.ru

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