From 7b9d8ce168a707c0a9aa81e945eef82e231db9ba Mon Sep 17 00:00:00 2001 From: Brian Heim Date: Sun, 2 Sep 2018 00:20:57 -0500 Subject: Help: Clarify wording of set_directory_properties docs --- Help/command/set_directory_properties.rst | 7 +++---- 1 file changed, 3 insertions(+), 4 deletions(-) diff --git a/Help/command/set_directory_properties.rst b/Help/command/set_directory_properties.rst index e485fce..42e7fd7 100644 --- a/Help/command/set_directory_properties.rst +++ b/Help/command/set_directory_properties.rst @@ -1,12 +1,11 @@ set_directory_properties ------------------------ -Set a property of the directory. +Set properties of the current directory and subdirectories in key-value pairs. :: set_directory_properties(PROPERTIES prop1 value1 prop2 value2) -Set a property for the current directory and subdirectories. See -:ref:`Directory Properties` for the list of properties known -to CMake. +See :ref:`Directory Properties` for the list of properties known to CMake +and their individual documentation for the behavior of each property. -- cgit v0.12 From 6d8cabe8d40d09827d0353b7553a27d61ca60846 Mon Sep 17 00:00:00 2001 From: Brian Heim Date: Sun, 2 Sep 2018 00:20:57 -0500 Subject: Help: Clarify INCLUDE_DIRECTORIES directory property behavior Ordering w.r.t. target creation is important for this property. Fixes: #17754 --- Help/prop_dir/INCLUDE_DIRECTORIES.rst | 12 +++++++++--- 1 file changed, 9 insertions(+), 3 deletions(-) diff --git a/Help/prop_dir/INCLUDE_DIRECTORIES.rst b/Help/prop_dir/INCLUDE_DIRECTORIES.rst index 6789a56..5d856b8 100644 --- a/Help/prop_dir/INCLUDE_DIRECTORIES.rst +++ b/Help/prop_dir/INCLUDE_DIRECTORIES.rst @@ -11,11 +11,17 @@ target property, which is used by the generators to set the include directories for the compiler. In addition to accepting values from that command, values may be set -directly on any directory using the :command:`set_property` command. A -directory gets its initial value from its parent directory if it has one. -The initial value of the :prop_tgt:`INCLUDE_DIRECTORIES` target property +directly on any directory using the :command:`set_property` command, and can be +set on the current directory using the :command:`set_directory_properties` +command. A directory gets its initial value from its parent directory if it has +one. The initial value of the :prop_tgt:`INCLUDE_DIRECTORIES` target property comes from the value of this property. Both directory and target property values are adjusted by calls to the :command:`include_directories` command. +Calls to :command:`set_property` or :command:`set_directory_properties`, +however, will update the directory property value without updating target +property values. Therefore direct property updates must be made before +calls to :command:`add_executable` or :command:`add_library` for targets +they are meant to affect. The target property values are used by the generators to set the include paths for the compiler. -- cgit v0.12