ExternalProject: reword LIST_SEPARATOR to indicate what it *does*

Also remove the (IMO) confusing suggestion to have ` ` as a separator as
it interferes with things like spaces in argument values (e.g., paths)
or generated arguments such as `-GUnix Makefiles`. The new example is
likely more common usage of the facility.
This commit is contained in:
Ben Boeckel
2024-03-27 06:59:44 -04:00
parent 611ffce98c
commit 5d33f41e23

View File

@@ -906,13 +906,13 @@ Miscellaneous Options
``LIST_SEPARATOR <sep>``
For any of the various ``..._COMMAND`` options, and ``CMAKE_ARGS``,
replace ``;`` with ``<sep>`` in the specified command lines.
This can be useful where list variables may be given in commands where
they should end up as space-separated arguments (``<sep>`` would be a
single space character string in this case). Note that the separator should
be chosen to avoid being confused for non-list-separator usages of the
sequence. For example, using ``LIST_SEPARATOR`` allows for passing list
values to CMake cache variables on the command line:
``ExternalProject`` will replace ``<sep>`` with ``;`` in the specified
command lines. This can be used to ensure a command has a literal ``;`` in it
where direct usage would otherwise be interpreted as argument separators to
CMake APIs instead. Note that the separator should be chosen to avoid being
confused for non-list-separator usages of the sequence. For example, using
``LIST_SEPARATOR`` allows for passing list values to CMake cache variables on
the command line:
.. code-block:: cmake