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/v3.31/command/get_property.html