summaryrefslogtreecommitdiffstats
path: root/qmake/generators/win32/msvc_objectmodel.cpp
diff options
context:
space:
mode:
Diffstat (limited to 'qmake/generators/win32/msvc_objectmodel.cpp')
-rw-r--r--qmake/generators/win32/msvc_objectmodel.cpp21
1 files changed, 14 insertions, 7 deletions
diff --git a/qmake/generators/win32/msvc_objectmodel.cpp b/qmake/generators/win32/msvc_objectmodel.cpp
index f7b0b29def..2a9e657304 100644
--- a/qmake/generators/win32/msvc_objectmodel.cpp
+++ b/qmake/generators/win32/msvc_objectmodel.cpp
@@ -311,7 +311,7 @@ VCCLCompilerTool::VCCLCompilerTool()
: AssemblerOutput(asmListingNone),
BasicRuntimeChecks(runtimeBasicCheckNone),
BrowseInformation(brInfoNone),
- BufferSecurityCheck(_False),
+ BufferSecurityCheck(unset),
CallingConvention(callConventionDefault),
CompileAs(compileAsDefault),
CompileAsManaged(managedDefault),
@@ -603,9 +603,7 @@ bool VCCLCompilerTool::parseOption(const char* option)
CallingConvention = callConventionFastCall;
break;
case 's':
- // Warning: following [num] is not used,
- // were should we put it?
- BufferSecurityCheck = _True;
+ AdditionalOptions += option;
break;
case 'y':
EnableFunctionLevelLinking = _True;
@@ -1080,11 +1078,20 @@ bool VCCLCompilerTool::parseOption(const char* option)
}
found = false; break;
case 'o':
- if (second == 'p' && third == 'e' && fourth == 'n') {
- OpenMP = _True;
- break;
+ {
+ const char *str = option + 2;
+ const size_t len = strlen(str);
+ if (len >= 5 && len <= 6 && strncmp(str, "penmp", 5) == 0) {
+ if (len == 5) {
+ OpenMP = _True;
+ break;
+ } else if (str[5] == '-') {
+ OpenMP = _False;
+ break;
+ }
}
found = false; break;
+ }
case 's':
if(second == 'h' && third == 'o' && fourth == 'w') {
ShowIncludes = _True;