CMP0176ΒΆ
New in version 3.31.
execute_process()
ENCODING
is UTF-8
by default.
The ENCODING
option is meaningful only on Windows. It specifies the
character encoding expected in the process's output on stdout and stderr.
In CMake 3.14 and below the default encoding was NONE
, which corresponds
to CMake's internal UTF-8 encoding. In CMake 3.15 through CMake 3.30 the
default encoding was accidentally changed to AUTO
, but the change went
unnoticed and was not documented.
CMake 3.31 and above prefer the ENCODING
default to be UTF-8
.
This policy provides compatibility with projects that may have been
relying on the default being AUTO
.
The OLD
behavior of this policy is for execute_process()
to use AUTO
by default if no ENCODING
is specified. The NEW
behavior for this policy is to use UTF-8
as the default ENCODING
.
This policy was introduced in CMake version 3.31.
It may be set by cmake_policy()
or cmake_minimum_required()
.
If it is not set, CMake does not warn, and uses OLD
behavior.
Note
The OLD
behavior of a policy is
deprecated by definition
and may be removed in a future version of CMake.