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>. Смотрите также командуget_directory_property(). -
TARGET -
Область видимости должна содержать имя существующей цели. Смотрите также команду
get_target_property(). -
SOURCE -
Область видимости должна содержать имя одного исходного файла. По умолчанию, свойство исходного файла будет читаться из области видимости текущей директории исходных файлов, но это можно изменить с помощью одного из следующих подвариантов:
-
DIRECTORY <dir> -
Свойство исходного файла будет читаться из области видимости директории
<dir>. 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.18/command/get_property.html