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.13/command/set_property.html