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().Новая в версии 3.19:
<dir>может ссылаться на бинарную директорию. -
TARGET -
Область видимости должна содержать имя существующей цели. Смотрите также команду
get_target_property(). -
SOURCE -
Область видимости должна содержать имя одного исходного файла. По умолчанию, свойство исходного файла будет читаться из области видимости текущей директории исходного кода.
Новая в версии 3.18: Область видимости директории может быть переопределена одним из следующих подвариантов:
-
DIRECTORY <dir> -
Свойство исходного файла будет читаться из области видимости директории
<dir>. CMake должен уже знать об этой директории, либо она была добавлена вызовомadd_subdirectory(), либо<dir>является директорией верхнего уровня. Относительные пути рассматриваются как относительные к текущей директории исходного кода.Новая в версии 3.19:
<dir>может ссылаться на бинарную директорию. -
TARGET_DIRECTORY <target> -
Свойство исходного файла будет читаться из области видимости директории, в которой
<target>был создан (<target>должен существовать).
Смотрите также команду
get_source_file_property(). -
-
INSTALL -
Новая в версии 3.1.
Область видимости должна содержать путь к установленным файлам.
-
TEST -
Область видимости должна содержать имя существующего теста. Смотрите также команду
get_test_property(). -
CACHE -
Область видимости должна содержать имя записи кэша.
-
VARIABLE -
Область видимости уникальна и не принимает имя.
Необходимый PROPERTY параметр сразу за ним следует имя свойства для получения. Если свойство не задано, возвращается пустое значение, хотя некоторые свойства поддерживают наследование от родительской области видимости, если они определены таким образом (см. define_property()).
Если задан SET параметр, переменная устанавливается в булевое значение, указывающее, установлено ли свойство. Если задан DEFINED параметр, переменная устанавливается в булевое значение, указывающее, определено ли свойство, например, с помощью команды define_property().
Если заданы BRIEF_DOCS или FULL_DOCS, переменная устанавливается в строку, содержащую документацию для запрошенного свойства. Если документация запрошена для свойства, которое не было определено, возвращается NOTFOUND.
Примечание
Свойство исходного файла GENERATED может быть глобально видимым. Смотрите документацию для получения подробностей.
См. также
© 2000–2023 Kitware, Inc. and Contributors
Licensed under the BSD 3-clause License.
https://cmake.org/cmake/help/v3.26/command/get_property.html