Help: Clarify cmake-buildsystem(7) compile properties section names

In commit 835f34949e (Help: Update cmake-buildsystem(7) build and usage
requirements, 2024-04-23) we labeled the sections documenting `COMPILE_*`
properties as "build properties".  All the properties it documents are
about compilation steps before linking, including the Autogen features
for compiling Qt metadata, so rename the sections as "compile properties".
This is also consistent with the name of the `$<COMPILE_ONLY:...>`
generator expression.
merge-requests/9491/head
Brad King 2024-05-03 11:57:58 -04:00
parent 1027c0e213
commit e300620a09
3 changed files with 13 additions and 13 deletions

View File

@ -302,17 +302,17 @@ Target Build Specification
--------------------------
The build specification of `Binary Targets`_ is represented by target
properties. For each of the following `build <Target Build Properties_>`_
properties. For each of the following `compile <Target Compile Properties_>`_
and `link <Target Link Properties_>`_ properties, compilation and linking
of the target is affected both by its own value and by the corresponding
`usage requirement <Target Usage Requirements_>`_ 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 <Transitive Build Properties_>`_ and
`compile <Transitive Compile Properties_>`_ and
`link <Transitive Link Properties_>`_ 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.

View File

@ -1282,7 +1282,7 @@ Compile Context
.. versionadded:: 3.27
Content of ``...``, when collecting
:ref:`transitive build properties <Transitive Build Properties>`,
:ref:`transitive compile properties <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 <Transitive Build Properties>`,
:ref:`transitive compile properties <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.

View File

@ -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.