Merge topic 'add_export_no_system'

9680b3b279 Add EXPORT_NO_SYSTEM target property, deprecate IMPORTED_NO_SYSTEM

Acked-by: Kitware Robot <kwrobot@kitware.com>
Tested-by: buildbot <buildbot@kitware.com>
Merge-request: !7379
This commit is contained in:
Brad King
2022-06-21 14:45:55 +00:00
committed by Kitware Robot
7 changed files with 55 additions and 3 deletions
+1
View File
@@ -212,6 +212,7 @@ Properties on Targets
/prop_tgt/EXCLUDE_FROM_DEFAULT_BUILD_CONFIG
/prop_tgt/EXPORT_COMPILE_COMMANDS
/prop_tgt/EXPORT_NAME
/prop_tgt/EXPORT_NO_SYSTEM
/prop_tgt/EXPORT_PROPERTIES
/prop_tgt/FOLDER
/prop_tgt/Fortran_BUILDING_INSTRINSIC_MODULES
+11
View File
@@ -0,0 +1,11 @@
EXPORT_NO_SYSTEM
----------------
.. versionadded:: 3.25
Specifies that :command:`install(EXPORT)` and :command:`export` commands will
generate a imported target with :prop_tgt:`SYSTEM` property `OFF`.
See the :prop_tgt:`NO_SYSTEM_FROM_IMPORTED` target property to set this
behavior on the target consuming the include directories rather than
providing them.
+9
View File
@@ -3,6 +3,15 @@ IMPORTED_NO_SYSTEM
.. versionadded:: 3.23
.. deprecated:: 3.25
``IMPORTED_NO_SYSTEM`` is deprecated. Set :prop_tgt:`SYSTEM` to `OFF`
instead if you don't want target's include directories to be ``SYSTEM``
when compiling consumers. Set :prop_tgt:`EXPORT_NO_SYSTEM` to `ON` instead
if you don't want the include directories of the imported target generated
by :command:`install(EXPORT)` and :command:`export` commands to be
``SYSTEM`` when compiling consumers.
Specifies that an :ref:`Imported Target <Imported Targets>` is not
a ``SYSTEM`` library. This has the following effects:
+8
View File
@@ -5,3 +5,11 @@ system
that a target should be treated as a system library (i.e.
its include directories are automatically ``SYSTEM`` when
compiling consumers).
* The :prop_tgt:`EXPORT_NO_SYSTEM` target property was added to
specify that :command:`install(EXPORT)` and :command:`export`
commands will generate a imported target with
:prop_tgt:`SYSTEM` property `OFF`.
* The :prop_tgt:`IMPORTED_NO_SYSTEM` target property was deprecated
in favor of :prop_tgt:`SYSTEM` and :prop_tgt:`EXPORT_NO_SYSTEM`.