diff options
author | Jian Liang <jianliang79@gmail.com> | 2017-01-30 16:13:59 +0800 |
---|---|---|
committer | jian liang <jianliang79@gmail.com> | 2017-02-01 15:04:02 +0000 |
commit | 015b53e9b4091c28b8a2d7931788c2286a245201 (patch) | |
tree | 2928e7f4e1cc9d1d119c41272a0b8fbfca23eeb8 /mkspecs | |
parent | 47cded3e6f271c86de65afee00a028cbe9826403 (diff) |
Turn on -utf-8 compiler option for msvc2015 update 2 and up
Building qt with msvc would fail with the -developer-build configure
option turned on under simplified chinese locale.
This is because msvc will emit warnings for source files with utf-8
characters which are not representable in CP936, and -developer-build
implies treating warnings as errors.
This patch turn on -utf-8 compiler option for msvc2015 update 2
and up only for building qt.
Task-number: QTBUG-58161
Change-Id: If38ea11eb1f39f8e08efa1cccb92e0eea50daf92
Reviewed-by: Oswald Buddenhagen <oswald.buddenhagen@qt.io>
Diffstat (limited to 'mkspecs')
-rw-r--r-- | mkspecs/common/msvc-version.conf | 6 | ||||
-rw-r--r-- | mkspecs/features/default_post.prf | 5 | ||||
-rw-r--r-- | mkspecs/features/qt_build_config.prf | 1 |
3 files changed, 12 insertions, 0 deletions
diff --git a/mkspecs/common/msvc-version.conf b/mkspecs/common/msvc-version.conf index 147009cd9f..2347ca4866 100644 --- a/mkspecs/common/msvc-version.conf +++ b/mkspecs/common/msvc-version.conf @@ -66,6 +66,12 @@ greaterThan(QMAKE_MSC_VER, 1899) { QMAKE_CFLAGS_AVX2 = -arch:AVX2 QMAKE_CXXFLAGS += -Zc:strictStrings -Zc:throwingNew QMAKE_CXXFLAGS_WARN_ON += -w44456 -w44457 -w44458 -wd4577 -wd4467 + + greaterThan(QMAKE_MSC_FULL_VER, 190023918):!intel_icl { + isEmpty(QT_CLANG_MAJOR_VERSION)|!lessThan(QT_CLANG_MAJOR_VERSION, 4) { + QMAKE_CFLAGS_UTF8_SOURCE = -utf-8 + } + } } greaterThan(QMAKE_MSC_VER, 1909) { diff --git a/mkspecs/features/default_post.prf b/mkspecs/features/default_post.prf index 7f5ab3a10c..60759b445e 100644 --- a/mkspecs/features/default_post.prf +++ b/mkspecs/features/default_post.prf @@ -116,6 +116,11 @@ c++11|c++14|c++1z { unset(cxxstd) } +utf8_source { + QMAKE_CFLAGS += $$QMAKE_CFLAGS_UTF8_SOURCE + QMAKE_CXXFLAGS += $$QMAKE_CFLAGS_UTF8_SOURCE +} + !precompile_header: SOURCES += $$NO_PCH_SOURCES QMAKE_INCDIR += $$QMAKE_INCDIR_POST diff --git a/mkspecs/features/qt_build_config.prf b/mkspecs/features/qt_build_config.prf index 3762c14f98..11d5695c63 100644 --- a/mkspecs/features/qt_build_config.prf +++ b/mkspecs/features/qt_build_config.prf @@ -84,6 +84,7 @@ android|uikit|winrt: \ CONFIG += builtin_testdata CONFIG += \ + utf8_source \ create_prl link_prl \ prepare_docs qt_docs_targets \ no_private_qt_headers_warning QTDIR_build \ |