set_property
Установить именованное свойство в заданном объёме.
set_property(<GLOBAL |
DIRECTORY [dir] |
TARGET [target1 [target2 ...]] |
SOURCE [src1 [src2 ...]] |
INSTALL [file1 [file2 ...]] |
TEST [test1 [test2 ...]] |
CACHE [entry1 [entry2 ...]]>
[APPEND] [APPEND_STRING]
PROPERTY <name> [value1 [value2 ...]])
Установите одно свойство для нуля или более объектов области. Первый аргумент определяет область, в которой устанавливается свойство. Он должен быть одним из следующих:
-
GLOBAL - Область уникальна и не принимает имя.
-
DIRECTORY - Область по умолчанию — текущая директория, но может быть указана другая директория (уже обработанная CMake) с полным или относительным путём.
-
TARGET - Область может называть ноль или более существующих целей.
-
SOURCE - Область может называть ноль или более исходных файлов. Обратите внимание, что свойства исходных файлов видны только целям, добавленным в той же директории (CMakeLists.txt).
-
INSTALL -
Область может называть ноль или более установленных путей к файлам. Они предоставляются CPack для влияния на развертывание.
И ключ свойства, и значение могут использовать генераторские выражения. Определённые свойства могут применяться к установленным файлам и/или директориям.
Компоненты пути должны быть разделены прямыми слэшами, должны быть нормализованы и чувствительны к регистру.
Для ссылки на сам префикс установки с помощью относительного пути используйте «.».
В настоящее время свойства установленных файлов определены только для генератора WIX, где указанные пути относительны к префиксу установки.
-
TEST - Область может называть ноль или более существующих тестов.
-
CACHE - Область должна называть ноль или более существующих записей кэша.
Требуемый PROPERTY параметр сразу последует за именем свойства, которое необходимо установить. Остальные аргументы используются для составления значения свойства в виде списка, разделённого точкой с запятой.
Если указан параметр APPEND, список добавляется к любому существующему значению свойства. Если указан параметр APPEND_STRING, строка добавляется к любому существующему значению свойства как строка, т.е. это приводит к более длинной строке, а не списку строк. При использовании APPEND или APPEND_STRING со свойством, определённым для поддержки INHERITED поведения (см. define_property()), наследование не происходит при поиске начального значения для добавления. Если свойство ещё не установлено непосредственно в заданной области, команда будет вести себя так, как будто APPEND или APPEND_STRING не были заданы.
См. руководство cmake-properties(7) для списка свойств в каждой области.
© 2000–2019 Kitware, Inc. and Contributors
Licensed under the BSD 3-clause License.
https://cmake.org/cmake/help/v3.12/command/set_property.html