From 70e772079f4943822cc469ef83fb9c43afc36514 Mon Sep 17 00:00:00 2001 From: Joerg Bornemann Date: Mon, 13 Mar 2017 13:24:48 +0100 Subject: [PATCH] Fix parsing of the /utf8 MSVC compiler flag in VS project generator Adding the /utf8 compiler flag resulted in undefining all preprocessor symbols for VS project files, because the ingenious compiler option parsing logic checked for a 'u' prefix, and "utf8" obviously matched. The /utf8 flag is added to the additional options, because there doesn't seem to be an XML tag for that. Task-number: QTBUG-59431 Change-Id: I762fcdcf6caf0606b40633861e265df5edb4a9c4 Reviewed-by: Oswald Buddenhagen --- qmake/generators/win32/msvc_objectmodel.cpp | 7 ++++++- 1 file changed, 6 insertions(+), 1 deletion(-) diff --git a/qmake/generators/win32/msvc_objectmodel.cpp b/qmake/generators/win32/msvc_objectmodel.cpp index 60734b4d1bc..34975f2b7b0 100644 --- a/qmake/generators/win32/msvc_objectmodel.cpp +++ b/qmake/generators/win32/msvc_objectmodel.cpp @@ -1153,7 +1153,12 @@ bool VCCLCompilerTool::parseOption(const char* option) } found = false; break; case 'u': - UndefineAllPreprocessorDefinitions = _True; + if (!second) + UndefineAllPreprocessorDefinitions = _True; + else if (second == 't' && third == 'f' && fourth == '8') + AdditionalOptions += option; + else + found = false; break; case 'v': if(second == 'd' || second == 'm') {