summaryrefslogtreecommitdiffstats
path: root/Help/policy/CMP0110.rst
blob: 25a00089f19c5193b378eb4b5af89caadd065704 (plain)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
CMP0110
-------

.. versionadded:: 3.19

:command:`add_test` supports arbitrary characters in test names.

:command:`add_test` can now (officially) create tests with whitespace and
other special characters in its name.  Before CMake version 3.19 that was not
allowed, however, it was possible to work around this limitation by explicitly
putting escaped quotes arount the test's name in the ``add_test`` command.

Although never officially supported several projects in the wild found and
implemented this workaround.  However, the new change which officially allows
the ``add_test`` command to support whitespace and other special characters in
test names now breaks that workaround.  In order for these projects to work
smoothly with newer CMake versions, this policy was introduced.

The ``OLD`` behavior of this policy is to still prevent ``add_test`` from
handling whitespace and special characters properly (if not using the
mentioned workaround).  The ``NEW`` behavior on the other hand allows names
with whitespace and special characters for tests created by ``add_test``.

This policy was introduced in CMake version 3.19.  CMake version |release|
warns when the policy is not set and uses ``OLD`` behavior. Use the
:command:`cmake_policy` command to set it to ``OLD`` or ``NEW`` explicitly.