qt_allow_non_utf8_sources

Prevents forcing source files to be treated as UTF-8 for Windows.

The command is defined in the Core component of the Qt6 package, which can be loaded like so:

 find_package(Qt6 REQUIRED COMPONENTS Core)

This command was introduced in Qt 6.0.

Synopsis

 qt_allow_non_utf8_sources(target)

If versionless commands are disabled, use qt6_allow_non_utf8_sources() instead. It supports the same set of arguments as this command.

Description

When building with some compilers for Windows, targets that link to a Qt library will use flags that force the compiler to treat its source files as UTF-8. This is currently implemented for Visual Studio and Intel compilers. You can disable this behavior on a per-target basis by calling qt_allow_non_utf8_sources() and passing the target as the argument.

Note: This does not change the runtime behavior of classes like QString (its constructor from const char * requires properly encoded UTF-8 input). Use the QT_NO_CAST_FROM_ASCII and QT_RESTRICTED_CAST_FROM_ASCII macros to help identify such code.

{cmake-target-property-QT_NO_UTF8_SOURCE}

See also qt_disable_unicode_defines().