diff --git a/Help/manual/cmake-buildsystem.7.rst b/Help/manual/cmake-buildsystem.7.rst index 9eca05dee9..acb1ed7ed8 100644 --- a/Help/manual/cmake-buildsystem.7.rst +++ b/Help/manual/cmake-buildsystem.7.rst @@ -302,17 +302,17 @@ Target Build Specification -------------------------- The build specification of `Binary Targets`_ is represented by target -properties. For each of the following `build `_ +properties. For each of the following `compile `_ and `link `_ properties, compilation and linking of the target is affected both by its own value and by the corresponding `usage requirement `_ property, named with an ``INTERFACE_`` prefix, collected from the transitive closure of link dependencies. -.. _`Target Build Properties`: +.. _`Target Compile Properties`: -Target Build Properties -^^^^^^^^^^^^^^^^^^^^^^^ +Target Compile Properties +^^^^^^^^^^^^^^^^^^^^^^^^^ :prop_tgt:`COMPILE_DEFINITIONS` List of compile definitions for compiling sources in the target. @@ -422,7 +422,7 @@ Target Usage Requirements The *usage requirements* of a target are settings that propagate to consumers, which link to the target via :command:`target_link_libraries`, in order to correctly compile and link with it. They are represented by transitive -`build `_ and +`compile `_ and `link `_ properties. Note that usage requirements are not designed as a way to make downstreams @@ -505,10 +505,10 @@ Note that care must be taken when specifying usage requirements for targets which will be exported for installation using the :command:`install(EXPORT)` command. See :ref:`Creating Packages` for more. -.. _`Transitive Build Properties`: +.. _`Transitive Compile Properties`: -Transitive Build Properties -^^^^^^^^^^^^^^^^^^^^^^^^^^^ +Transitive Compile Properties +^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ :prop_tgt:`INTERFACE_COMPILE_DEFINITIONS` List of compile definitions for compiling sources in the target's consumers. diff --git a/Help/manual/cmake-generator-expressions.7.rst b/Help/manual/cmake-generator-expressions.7.rst index 31f057322b..1db237cfbf 100644 --- a/Help/manual/cmake-generator-expressions.7.rst +++ b/Help/manual/cmake-generator-expressions.7.rst @@ -1282,7 +1282,7 @@ Compile Context .. versionadded:: 3.27 Content of ``...``, when collecting - :ref:`transitive build properties `, + :ref:`transitive compile properties `, otherwise it is the empty string. This is intended for use in an :prop_tgt:`INTERFACE_LINK_LIBRARIES` and :prop_tgt:`LINK_LIBRARIES` target properties, typically populated via the :command:`target_link_libraries` command. @@ -1671,7 +1671,7 @@ Link Context .. versionadded:: 3.1 Content of ``...``, except while collecting usage requirements from - :ref:`transitive build properties `, + :ref:`transitive compile properties `, in which case it is the empty string. This is intended for use in an :prop_tgt:`INTERFACE_LINK_LIBRARIES` target property, typically populated via the :command:`target_link_libraries` command, to specify private link @@ -1790,7 +1790,7 @@ The expressions have special evaluation rules for some properties: Evaluation is transitive over the closure of the target's :prop_tgt:`INTERFACE_LINK_LIBRARIES`: - * For :ref:`Transitive Build Properties`, the transitive closure + * For :ref:`Transitive Compile Properties`, the transitive closure *excludes* entries of :prop_tgt:`INTERFACE_LINK_LIBRARIES` guarded by the :genex:`LINK_ONLY` generator expression. diff --git a/Help/policy/CMP0166.rst b/Help/policy/CMP0166.rst index 5c678803ab..0534559430 100644 --- a/Help/policy/CMP0166.rst +++ b/Help/policy/CMP0166.rst @@ -9,7 +9,7 @@ dependencies of static libraries. In CMake 3.29 and below, the :genex:`TARGET_PROPERTY` generator expression evaluates properties :prop_tgt:`INTERFACE_LINK_OPTIONS`, :prop_tgt:`INTERFACE_LINK_DIRECTORIES`, and :prop_tgt:`INTERFACE_LINK_DEPENDS` -as if they were :ref:`Transitive Build Properties` rather than +as if they were :ref:`Transitive Compile Properties` rather than :ref:`Transitive Link Properties`, even when policy :policy:`CMP0099` is set to ``NEW``. Private dependencies of static libraries, which appear in their :prop_tgt:`INTERFACE_LINK_LIBRARIES` guarded by :genex:`LINK_ONLY` @@ -28,7 +28,7 @@ to expect the new behavior. The ``OLD`` behavior for this policy is for :genex:`TARGET_PROPERTY` to evaluate properties :prop_tgt:`INTERFACE_LINK_OPTIONS`, :prop_tgt:`INTERFACE_LINK_DIRECTORIES`, and :prop_tgt:`INTERFACE_LINK_DEPENDS` -as if they were :ref:`Transitive Build Properties` by not following private +as if they were :ref:`Transitive Compile Properties` by not following private dependencies of static libraries. The ``NEW`` behavior for this policy is to evaluate them as :ref:`Transitive Link Properties` by following private dependencies of static libraries.