summaryrefslogtreecommitdiffstats
path: root/Help
diff options
context:
space:
mode:
authorBrad King <brad.king@kitware.com>2024-06-24 13:21:59 (GMT)
committerKitware Robot <kwrobot@kitware.com>2024-06-24 13:22:47 (GMT)
commitc3046ea2893dac12bef0b9fa23a1da26719cc2eb (patch)
tree1432fbe444a698604c3a4cb9e6ec318b9256e524 /Help
parentc43dc60c64c9bf2af00cc02946558fe0e29e0fed (diff)
parent576567f028f2366dda84fe3deb1d6cca62cb9890 (diff)
downloadCMake-c3046ea2893dac12bef0b9fa23a1da26719cc2eb.zip
CMake-c3046ea2893dac12bef0b9fa23a1da26719cc2eb.tar.gz
CMake-c3046ea2893dac12bef0b9fa23a1da26719cc2eb.tar.bz2
Merge topic 'link-feature-attributes-stabilization' into release-3.30
576567f028 Link feature attributes: stabilization 5617c34c31 Libraries processing: update configuration wording Acked-by: Kitware Robot <kwrobot@kitware.com> Merge-request: !9607
Diffstat (limited to 'Help')
-rw-r--r--Help/manual/cmake-variables.7.rst4
-rw-r--r--Help/release/3.30.rst6
-rw-r--r--Help/variable/CMAKE_LANG_LINK_LIBRARY_FEATURE_ATTRIBUTES.rst (renamed from Help/variable/CMAKE_LANG_LINK_LIBRARY_FEATURE_PROPERTIES.rst)6
-rw-r--r--Help/variable/CMAKE_LINK_LIBRARY_FEATURE_ATTRIBUTES.rst (renamed from Help/variable/CMAKE_LINK_LIBRARY_FEATURE_PROPERTIES.rst)37
-rw-r--r--Help/variable/CMAKE_LINK_LIBRARY_USING_FEATURE.txt4
5 files changed, 29 insertions, 28 deletions
diff --git a/Help/manual/cmake-variables.7.rst b/Help/manual/cmake-variables.7.rst
index 6400a93..1abdd62 100644
--- a/Help/manual/cmake-variables.7.rst
+++ b/Help/manual/cmake-variables.7.rst
@@ -467,7 +467,7 @@ Variables that Control the Build
/variable/CMAKE_LANG_INCLUDE_WHAT_YOU_USE
/variable/CMAKE_LANG_LINK_GROUP_USING_FEATURE
/variable/CMAKE_LANG_LINK_GROUP_USING_FEATURE_SUPPORTED
- /variable/CMAKE_LANG_LINK_LIBRARY_FEATURE_PROPERTIES
+ /variable/CMAKE_LANG_LINK_LIBRARY_FEATURE_ATTRIBUTES
/variable/CMAKE_LANG_LINK_LIBRARY_FILE_FLAG
/variable/CMAKE_LANG_LINK_LIBRARY_FLAG
/variable/CMAKE_LANG_LINK_LIBRARY_USING_FEATURE
@@ -486,7 +486,7 @@ Variables that Control the Build
/variable/CMAKE_LINK_GROUP_USING_FEATURE
/variable/CMAKE_LINK_GROUP_USING_FEATURE_SUPPORTED
/variable/CMAKE_LINK_INTERFACE_LIBRARIES
- /variable/CMAKE_LINK_LIBRARY_FEATURE_PROPERTIES
+ /variable/CMAKE_LINK_LIBRARY_FEATURE_ATTRIBUTES
/variable/CMAKE_LINK_LIBRARY_FILE_FLAG
/variable/CMAKE_LINK_LIBRARY_FLAG
/variable/CMAKE_LINK_LIBRARY_USING_FEATURE
diff --git a/Help/release/3.30.rst b/Help/release/3.30.rst
index db66b0d..6d515fd 100644
--- a/Help/release/3.30.rst
+++ b/Help/release/3.30.rst
@@ -148,9 +148,9 @@ Generator Expressions
associated :variable:`CMAKE_<LANG>_COMPILER_FRONTEND_VARIANT` variables.
* Link features, as used with the :genex:`LINK_LIBRARY` generator expression,
- gained the ability to have properties that describe their behavior by
- specifying the :variable:`CMAKE_LINK_LIBRARY_<FEATURE>_PROPERTIES` or
- :variable:`CMAKE_<LANG>_LINK_LIBRARY_<FEATURE>_PROPERTIES` variables.
+ gained the ability to have attributes that describe their behavior by
+ specifying the :variable:`CMAKE_LINK_LIBRARY_<FEATURE>_ATTRIBUTES` or
+ :variable:`CMAKE_<LANG>_LINK_LIBRARY_<FEATURE>_ATTRIBUTES` variables.
* The :genex:`QUOTE` generator expression was added to evaluate to ``"``.
diff --git a/Help/variable/CMAKE_LANG_LINK_LIBRARY_FEATURE_PROPERTIES.rst b/Help/variable/CMAKE_LANG_LINK_LIBRARY_FEATURE_ATTRIBUTES.rst
index 10f4fda..8769d60 100644
--- a/Help/variable/CMAKE_LANG_LINK_LIBRARY_FEATURE_PROPERTIES.rst
+++ b/Help/variable/CMAKE_LANG_LINK_LIBRARY_FEATURE_ATTRIBUTES.rst
@@ -1,10 +1,10 @@
-CMAKE_<LANG>_LINK_LIBRARY_<FEATURE>_PROPERTIES
+CMAKE_<LANG>_LINK_LIBRARY_<FEATURE>_ATTRIBUTES
----------------------------------------------
.. versionadded:: 3.30
This variable defines the semantics of the specified link library ``<FEATURE>``
when linking with the link language ``<LANG>``. It takes precedence over
-:variable:`CMAKE_LINK_LIBRARY_<FEATURE>_PROPERTIES` if that variable is also
+:variable:`CMAKE_LINK_LIBRARY_<FEATURE>_ATTRIBUTES` if that variable is also
defined for the same ``<FEATURE>``, but otherwise has similar effects.
-See :variable:`CMAKE_LINK_LIBRARY_<FEATURE>_PROPERTIES` for further details.
+See :variable:`CMAKE_LINK_LIBRARY_<FEATURE>_ATTRIBUTES` for further details.
diff --git a/Help/variable/CMAKE_LINK_LIBRARY_FEATURE_PROPERTIES.rst b/Help/variable/CMAKE_LINK_LIBRARY_FEATURE_ATTRIBUTES.rst
index e30c30a..c9966ff 100644
--- a/Help/variable/CMAKE_LINK_LIBRARY_FEATURE_PROPERTIES.rst
+++ b/Help/variable/CMAKE_LINK_LIBRARY_FEATURE_ATTRIBUTES.rst
@@ -1,4 +1,4 @@
-CMAKE_LINK_LIBRARY_<FEATURE>_PROPERTIES
+CMAKE_LINK_LIBRARY_<FEATURE>_ATTRIBUTES
---------------------------------------
.. versionadded:: 3.30
@@ -17,28 +17,29 @@ The :variable:`CMAKE_<LANG>_LINK_LIBRARY_USING_<FEATURE>_SUPPORTED` and
control whether the ``<FEATURE>`` is available at all.
When linking for a particular language ``<LANG>``,
-``CMAKE_LINK_LIBRARY_<FEATURE>_PROPERTIES`` is ignored if the
-:variable:`CMAKE_<LANG>_LINK_LIBRARY_<FEATURE>_PROPERTIES` variable is also
+``CMAKE_LINK_LIBRARY_<FEATURE>_ATTRIBUTES`` is ignored if the
+:variable:`CMAKE_<LANG>_LINK_LIBRARY_<FEATURE>_ATTRIBUTES` variable is also
defined for the same ``<FEATURE>``.
-The value of ``CMAKE_LINK_LIBRARY_<FEATURE>_PROPERTIES`` and
-:variable:`CMAKE_<LANG>_LINK_LIBRARY_<FEATURE>_PROPERTIES` at the end of the
+The value of ``CMAKE_LINK_LIBRARY_<FEATURE>_ATTRIBUTES`` and
+:variable:`CMAKE_<LANG>_LINK_LIBRARY_<FEATURE>_ATTRIBUTES` at the end of the
directory scope in which a target is defined is what matters.
-Feature Properties Definition
+Feature Attributes Definition
^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
-A feature properties definition is a
-:ref:`semicolon-separated list <CMake Language Lists>` of ``property=value(s)``
-items. If a property has multiple values, those values must be comma-separated.
+A feature attributes definition is a
+:ref:`semicolon-separated list <CMake Language Lists>` of
+``attribute=value(s)`` items. If an attribute has multiple values, those values
+must be comma-separated.
-The following properties are supported:
+The following attributes are supported:
``LIBRARY_TYPE=<library-type-list>``
Specify the library types supported by the feature. Supported values are:
``STATIC``, ``SHARED``, ``MODULE``, and ``EXECUTABLE``.
- If this property is not specified, the default is
+ If this attribute is not specified, the default is
``LIBRARY_TYPE=STATIC,SHARED,MODULE,EXECUTABLE``.
If the feature is used with an unsupported library type, CMake will emit a
@@ -51,9 +52,9 @@ The following properties are supported:
:prop_tgt:`LINK_LIBRARY_OVERRIDE_<LIBRARY>` target property definitions,
if defined.
- If this property is not specified, the default is an empty list.
+ If this attribute is not specified, the default is an empty list.
-``UNICITY=YES|NO|DEFAULT``
+``DEDUPLICATION=YES|NO|DEFAULT``
Specify the de-duplication strategy for a library using this feature.
``YES``
@@ -67,7 +68,7 @@ The following properties are supported:
``DEFAULT``
Let CMake determine a de-duplication strategy automatically.
- If this property is not specified, ``DEFAULT`` will be used.
+ If this attribute is not specified, ``DEFAULT`` will be used.
Example
^^^^^^^
@@ -75,14 +76,14 @@ Example
A common need is the loading of a full archive as part of the creation of a
shared library. The built-in ``WHOLE_ARCHIVE`` feature can be used for that
purpose. The implementation of that built-in feature sets the following
-link library feature properties:
+link library feature attributes:
.. code-block:: cmake
- set(CMAKE_LINK_LIBRARY_WHOLE_ARCHIVE_PROPERTIES
+ set(CMAKE_LINK_LIBRARY_WHOLE_ARCHIVE_ATTRIBUTES
LIBRARY_TYPE=STATIC
OVERRIDE=DEFAULT
- UNICITY=YES
+ DEDUPLICATION=YES
)
``LIBRARY_TYPE=STATIC``
@@ -92,7 +93,7 @@ link library feature properties:
because they are compatible and enhance the user's experience: standard
library specification and ``$<LINK_LIBRARY:WHOLE_ARCHIVE>`` can be used
freely.
-``UNICITY=YES``
+``DEDUPLICATION=YES``
When this feature is used, the linker loads all symbols from the static
library, so there is no need to repeat the library on the linker
command line.
diff --git a/Help/variable/CMAKE_LINK_LIBRARY_USING_FEATURE.txt b/Help/variable/CMAKE_LINK_LIBRARY_USING_FEATURE.txt
index 59a0d02..f5c19e0 100644
--- a/Help/variable/CMAKE_LINK_LIBRARY_USING_FEATURE.txt
+++ b/Help/variable/CMAKE_LINK_LIBRARY_USING_FEATURE.txt
@@ -3,8 +3,8 @@ and underscores. Feature names defined in all uppercase are reserved for
CMake's own built-in features (see `Predefined Features`_ further below).
Some aspects of feature behavior can be defined by the
-:variable:`CMAKE_<LANG>_LINK_LIBRARY_<FEATURE>_PROPERTIES` and
-:variable:`CMAKE_LINK_LIBRARY_<FEATURE>_PROPERTIES` variables.
+:variable:`CMAKE_<LANG>_LINK_LIBRARY_<FEATURE>_ATTRIBUTES` and
+:variable:`CMAKE_LINK_LIBRARY_<FEATURE>_ATTRIBUTES` variables.
Feature Definitions
^^^^^^^^^^^^^^^^^^^