From dfab263825d29f132454f2af7d79aa8ba43fb77f Mon Sep 17 00:00:00 2001 From: Craig Scott Date: Sat, 17 Dec 2022 20:42:04 +1100 Subject: Help: Clarify and update SYSTEM-related docs --- Modules/FetchContent.cmake | 17 +++++++++++------ 1 file changed, 11 insertions(+), 6 deletions(-) (limited to 'Modules/FetchContent.cmake') diff --git a/Modules/FetchContent.cmake b/Modules/FetchContent.cmake index 25b0683d36..047603cbdc 100644 --- a/Modules/FetchContent.cmake +++ b/Modules/FetchContent.cmake @@ -233,12 +233,12 @@ Commands .. versionadded:: 3.25 ``SYSTEM`` - If the ``SYSTEM`` argument is provided, targets created by - the dependency will have their :prop_tgt:`SYSTEM` property - set to true when populated by :command:`FetchContent_MakeAvailable`. - The entries in their :prop_tgt:`INTERFACE_INCLUDE_DIRECTORIES` - will be treated as ``SYSTEM`` include directories when - compiling consumers. + If the ``SYSTEM`` argument is provided, the :prop_dir:`SYSTEM` directory + property of a subdirectory added by + :command:`FetchContent_MakeAvailable` will be set to true. This will + affect non-imported targets created as part of that command. + See the :prop_tgt:`SYSTEM` target property documentation for a more + detailed discussion of the effects. .. command:: FetchContent_MakeAvailable @@ -353,6 +353,11 @@ Commands adding a project that contains a ``CMakeLists.txt`` file in its top directory. + .. versionadded:: 3.25 + If the ``SYSTEM`` keyword was included in the call to + :command:`FetchContent_Declare`, the ``SYSTEM`` keyword will be + added to the :command:`add_subdirectory` command as well. + Projects should aim to declare the details of all dependencies they might use before they call ``FetchContent_MakeAvailable()`` for any of them. This ensures that if any of the dependencies are also sub-dependencies of -- cgit v1.2.1