get_property
Получение свойства.
get_property(<variable>
<GLOBAL |
DIRECTORY [<dir>] |
TARGET <target> |
SOURCE <source>
[DIRECTORY <dir> | TARGET_DIRECTORY <target>] |
INSTALL <file> |
TEST <test>
[DIRECTORY <dir>] |
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().Добавлена в версии 3.28: Область видимости директории может быть переопределена следующим подвариантом:
-
DIRECTORY <dir> -
Свойство проверки будет читаться из области видимости директории
<dir>. CMake должен уже знать о директории, либо добавив её через вызовadd_subdirectory(), либо<dir>— это верхняя директория. Относительные пути рассматриваются относительно текущей директории исходного кода.<dir>может ссылаться на директорию библиотек.
-
-
CACHE -
Область видимости должна указывать на одну запись кэша.
-
VARIABLE -
Область видимости уникальна и не принимает имя.
Требуемый PROPERTY параметр сразу же следует за именем свойства для получения. Если свойство не задано, то указанное <variable> будет сброшено в вызывающей области видимости при возврате, хотя некоторые свойства поддерживают наследование от родительской области видимости, если они определены таким образом (см. define_property()).
Если указан параметр SET, переменная устанавливается в булево значение, указывающее, было ли свойство установлено. Если указан параметр DEFINED, переменная устанавливается в булево значение, указывающее, было ли свойство определено, например, с помощью команды define_property().
Если указан BRIEF_DOCS или FULL_DOCS, переменная устанавливается в строку, содержащую документацию для запрошенного свойства. Если документация запрошена для свойства, которое не было определено, возвращается NOTFOUND.
Примечание
Свойство исходного файла GENERATED может быть глобально видимым. Подробности см. в документации.
См. также
© 2000–2024 Kitware, Inc. and Contributors
Licensed under the BSD 3-clause License.
https://cmake.org/cmake/help/latest/command/get_property.html