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–2022 Kitware, Inc. and Contributors
Licensed under the BSD 3-clause License.
https://cmake.org/cmake/help/v3.24/command/get_property.html