cmake/Help/command/set_property.rst

70 lines
2.3 KiB
ReStructuredText
Raw Normal View History

2014-08-03 19:52:23 +02:00
set_property
------------
Set a named property in a given scope.
::
set_property(<GLOBAL |
DIRECTORY [dir] |
TARGET [target1 [target2 ...]] |
SOURCE [src1 [src2 ...]] |
2015-04-27 22:25:09 +02:00
INSTALL [file1 [file2 ...]] |
2014-08-03 19:52:23 +02:00
TEST [test1 [test2 ...]] |
CACHE [entry1 [entry2 ...]]>
[APPEND] [APPEND_STRING]
PROPERTY <name> [value1 [value2 ...]])
Set one property on zero or more objects of a scope. The first
argument determines the scope in which the property is set. It must
be one of the following:
2015-04-27 22:25:09 +02:00
``GLOBAL``
Scope is unique and does not accept a name.
2014-08-03 19:52:23 +02:00
2015-04-27 22:25:09 +02:00
``DIRECTORY``
Scope defaults to the current directory but another
directory (already processed by CMake) may be named by full or
relative path.
2014-08-03 19:52:23 +02:00
2015-04-27 22:25:09 +02:00
``TARGET``
Scope may name zero or more existing targets.
2014-08-03 19:52:23 +02:00
2015-04-27 22:25:09 +02:00
``SOURCE``
Scope may name zero or more source files. Note that source
file properties are visible only to targets added in the same
directory (CMakeLists.txt).
2014-08-03 19:52:23 +02:00
2015-04-27 22:25:09 +02:00
``INSTALL``
Scope may name zero or more installed file paths.
These are made available to CPack to influence deployment.
2014-08-03 19:52:23 +02:00
2015-04-27 22:25:09 +02:00
Both the property key and value may use generator expressions.
Specific properties may apply to installed files and/or directories.
2014-08-03 19:52:23 +02:00
2015-04-27 22:25:09 +02:00
Path components have to be separated by forward slashes,
must be normalized and are case sensitive.
To reference the installation prefix itself with a relative path use ".".
Currently installed file properties are only defined for
the WIX generator where the given paths are relative
to the installation prefix.
``TEST``
Scope may name zero or more existing tests.
``CACHE``
Scope must name zero or more cache existing entries.
The required ``PROPERTY`` option is immediately followed by the name of
2014-08-03 19:52:23 +02:00
the property to set. Remaining arguments are used to compose the
property value in the form of a semicolon-separated list. If the
2015-04-27 22:25:09 +02:00
``APPEND`` option is given the list is appended to any existing property
value. If the ``APPEND_STRING`` option is given the string is append to any
2014-08-03 19:52:23 +02:00
existing property value as string, i.e. it results in a longer string
and not a list of strings.
2015-11-17 17:22:37 +01:00
See the :manual:`cmake-properties(7)` manual for a list of properties
in each scope.