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 параметр сразу же следует за именем свойства для получения. Если свойство не задано, возвращается пустое значение, хотя некоторые свойства поддерживают наследование из родительской области видимости, если это определено (см. 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/v3.29/command/get_property.html