summaryrefslogtreecommitdiffstats
path: root/Help/command/cmake_path.rst
diff options
context:
space:
mode:
Diffstat (limited to 'Help/command/cmake_path.rst')
-rw-r--r--Help/command/cmake_path.rst18
1 files changed, 15 insertions, 3 deletions
diff --git a/Help/command/cmake_path.rst b/Help/command/cmake_path.rst
index 454c860..eb7da07 100644
--- a/Help/command/cmake_path.rst
+++ b/Help/command/cmake_path.rst
@@ -96,6 +96,8 @@ The following conventions are used in this command's documentation:
The name of a variable into which the result of a command will be written.
+.. _Path Structure And Terminology:
+
Path Structure And Terminology
^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
@@ -216,6 +218,8 @@ normalize a path is as follows:
is ``.``).
+.. _Path Decomposition:
+
Decomposition
^^^^^^^^^^^^^
@@ -385,6 +389,8 @@ Path traversal examples
Parent path is "c:/"
+.. _Path Query:
+
Query
^^^^^
@@ -467,6 +473,7 @@ are :ref:`normalized <Normalization>` before the check.
set(path "/a/b")
cmake_path(IS_PREFIX path "/a/c/../b" NORMALIZE result) # result = true
+.. _Path COMPARE:
.. _COMPARE:
::
@@ -475,8 +482,9 @@ are :ref:`normalized <Normalization>` before the check.
cmake_path(COMPARE <input1> NOT_EQUAL <input2> <out-var>)
Compares the lexical representations of two paths provided as string literals.
-No normalization is performed on either path. Equality is determined
-according to the following pseudo-code logic:
+No normalization is performed on either path, except multiple consecutive
+directory separators are effectively collapsed into a single separator.
+Equality is determined according to the following pseudo-code logic:
::
@@ -495,6 +503,8 @@ according to the following pseudo-code logic:
takes literal strings as input, not the names of variables.
+.. _Path Modification:
+
Modification
^^^^^^^^^^^^
@@ -509,7 +519,7 @@ path, it is converted into a cmake-style path with forward-slashes
(``/``). On Windows, the long filename marker is taken into account.
When the ``NORMALIZE`` option is specified, the path is :ref:`normalized
-<Normalization>` before the conversion.
+<Normalization>` after the conversion.
For example:
@@ -644,6 +654,8 @@ is equivalent to the following:
cmake_path(APPEND_STRING path "input")
+.. _Path Generation:
+
Generation
^^^^^^^^^^