Spec-Zone.ru › CMake 3.19

get_property

Получить свойство.

get_property(<variable>
             <GLOBAL             |
              DIRECTORY [<dir>]  |
              TARGET    <target> |
              SOURCE    <source> |
                        [DIRECTORY <dir> | TARGET_DIRECTORY <target>] |
              INSTALL   <file>   |
              TEST      <test>   |
              CACHE     <entry>  |
              VARIABLE           >
             PROPERTY <name>
             [SET | DEFINED | BRIEF_DOCS | FULL_DOCS])

Получает одно свойство одного объекта в области видимости.

Первый аргумент указывает переменную, в которую нужно сохранить результат. Второй аргумент определяет область видимости, из которой нужно получить свойство. Он должен быть одним из следующих:

GLOBAL

Область видимости уникальна и не принимает имя.

DIRECTORY

Область видимости по умолчанию соответствует текущей директории, но может быть указана другая директория (уже обработанная CMake) полным или относительным путем <dir>. Путь <dir> может ссылаться на директорию исходного кода или, начиная с CMake 3.19, на директорию библиотек. Относительные пути рассматриваются относительно текущей директории исходного кода. См. также команду get_directory_property().

TARGET

Область видимости должна указывать на одну существующую цель. См. также команду get_target_property().

SOURCE

Область видимости должна указывать на один исходный файл. По умолчанию свойство исходного файла будет читаться из области видимости текущей директории исходного кода, но это можно переопределить одним из следующих подвариантов:

DIRECTORY <dir>

Свойство исходного файла будет читаться из области видимости директории <dir>. Путь <dir> может ссылаться на директорию исходного кода или, начиная с CMake 3.19, на директорию библиотек. CMake должен уже знать о директории, либо добавив ее с помощью вызова add_subdirectory(), либо <dir> являясь корневой директорией. Относительные пути рассматриваются относительно текущей директории исходного кода.

TARGET_DIRECTORY <target>

Свойство исходного файла будет читаться из области видимости директории, в которой <target> был создан (<target> должен поэтому уже существовать).

См. также команду get_source_file_property().

INSTALL

Область видимости должна указывать на путь установленного файла.

TEST

Область видимости должна указывать на один существующий тест. См. также команду get_test_property().

CACHE

Область видимости должна указывать на одну запись кэша.

VARIABLE

Область видимости уникальна и не принимает имя.

Требуемый PROPERTY параметр сразу же следует за именем свойства для получения. Если свойство не установлено, возвращается пустое значение, хотя некоторые свойства поддерживают наследование из родительской области видимости, если это определено таким образом (см. define_property()).

Если указан параметр SET, переменная устанавливается в булево значение, указывающее, установлено ли свойство. Если указан параметр DEFINED, переменная устанавливается в булево значение, указывающее, определено ли свойство, например, с помощью команды define_property().

Если указаны BRIEF_DOCS или FULL_DOCS, переменная устанавливается в строку, содержащую документацию для запрошенного свойства. Если документация запрошена для свойства, которое не определено, возвращается NOTFOUND.

© 2000–2020 Kitware, Inc. and Contributors
Licensed under the BSD 3-clause License.
https://cmake.org/cmake/help/v3.19/command/get_property.html

Spec-Zone.ru

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