📄 msvc_objectmodel.cpp
字号:
break; case 'H': AdditionalOptions += option; break; case 'I': AdditionalIncludeDirectories += option+2; break; case 'J': DefaultCharIsUnsigned = _True; break; case 'L': if(second == 'D') { AdditionalOptions += option; break; } found = false; break; case 'M': if(second == 'D') { RuntimeLibrary = rtMultiThreadedDLL; if(third == 'd') RuntimeLibrary = rtMultiThreadedDebugDLL; break; } else if(second == 'L') { RuntimeLibrary = rtSingleThreaded; if(third == 'd') RuntimeLibrary = rtSingleThreadedDebug; break; } else if(second == 'T') { RuntimeLibrary = rtMultiThreaded; if(third == 'd') RuntimeLibrary = rtMultiThreadedDebug; break; } found = false; break; case 'O': switch (second) { case '1': Optimization = optimizeMinSpace; break; case '2': Optimization = optimizeMaxSpeed; break; case 'a': AdditionalOptions += option; break; case 'b': if(third == '0') InlineFunctionExpansion = expandDisable; else if(third == '1') InlineFunctionExpansion = expandOnlyInline; else if(third == '2') InlineFunctionExpansion = expandAnySuitable; else found = false; break; case 'd': Optimization = optimizeDisabled; break; case 'g': GlobalOptimizations = _True; break; case 'i': EnableIntrinsicFunctions = _True; break; case 'p': ImproveFloatingPointConsistency = _True; if(third == '-') ImproveFloatingPointConsistency = _False; break; case 's': FavorSizeOrSpeed = favorSize; break; case 't': FavorSizeOrSpeed = favorSpeed; break; case 'w': AdditionalOptions += option; break; case 'x': Optimization = optimizeFull; break; case 'y': OmitFramePointers = _True; if(third == '-') OmitFramePointers = _False; break; default: found = false; break; } break; case 'P': GeneratePreprocessedFile = preprocessYes; break; case 'Q': if(second == 'I') { AdditionalOptions += option; break; } found = false; break; case 'R': if(second == 'T' && third == 'C') { if(fourth == '1') BasicRuntimeChecks = runtimeBasicCheckAll; else if(fourth == 'c') SmallerTypeCheck = _True; else if(fourth == 's') BasicRuntimeChecks = runtimeCheckStackFrame; else if(fourth == 'u') BasicRuntimeChecks = runtimeCheckUninitVariables; else found = false; break; } break; case 'T': if(second == 'C') { CompileAs = compileAsC; } else if(second == 'P') { CompileAs = compileAsCPlusPlus; } else { qWarning("Generator: Options '/Tp<filename>' and '/Tc<filename>' are not supported by qmake"); found = false; break; } break; case 'U': UndefinePreprocessorDefinitions += option+2; break; case 'V': AdditionalOptions += option; break; case 'W': switch (second) { case 'a': case '4': WarningLevel = warningLevel_4; break; case '3': WarningLevel = warningLevel_3; break; case '2': WarningLevel = warningLevel_2; break; case '1': WarningLevel = warningLevel_1; break; case '0': WarningLevel = warningLevel_0; break; case 'L': AdditionalOptions += option; break; case 'X': WarnAsError = _True; break; case 'p': if(third == '6' && fourth == '4') { Detect64BitPortabilityProblems = _True; break; } // Fallthrough default: found = false; break; } break; case 'X': IgnoreStandardIncludePath = _True; break; case 'Y': switch (second) { case '\0': case '-': AdditionalOptions += option; break; case 'X': UsePrecompiledHeader = pchGenerateAuto; PrecompiledHeaderFile = option+3; break; case 'c': UsePrecompiledHeader = pchCreateUsingSpecific; PrecompiledHeaderFile = option+3; break; case 'd': case 'l': AdditionalOptions += option; break; case 'u': UsePrecompiledHeader = pchUseUsingSpecific; PrecompiledHeaderFile = option+3; break; default: found = false; break; } break; case 'Z': switch (second) { case '7': DebugInformationFormat = debugOldStyleInfo; break; case 'I': DebugInformationFormat = debugEditAndContinue; break; case 'd': DebugInformationFormat = debugLineInfoOnly; break; case 'i': DebugInformationFormat = debugEnabled; break; case 'l': DebugInformationFormat = debugEditAndContinue; break; case 'a': DisableLanguageExtensions = _True; break; case 'e': DisableLanguageExtensions = _False; break; case 'c': if(third == ':') { const char *c = option + 4; // Go to the end of the option while ( *c != '\0' && *c != ' ' && *c != '-') ++c; if(fourth == 'f') ForceConformanceInForLoopScope = ((*c) == '-' ? _False : _True); else if(fourth == 'w') TreatWChar_tAsBuiltInType = ((*c) == '-' ? _False : _True); else found = false; } else { found = false; break; } break; case 'g': case 'm': case 's': AdditionalOptions += option; break; case 'p': switch (third) { case '\0': case '1': StructMemberAlignment = alignSingleByte; if(fourth == '6') StructMemberAlignment = alignSixteenBytes; break; case '2': StructMemberAlignment = alignTwoBytes; break; case '4': StructMemberAlignment = alignFourBytes; break; case '8': StructMemberAlignment = alignEightBytes; break; default: found = false; break; } break; default: found = false; break; } break; case 'a': if (second == 'r' && third == 'c' && fourth == 'h') { if (option[5] == ':') { const char *o = option; if (o[6] == 'S' && o[7] == 'S' && o[8] == 'E') { EnableEnhancedInstructionSet = o[9] == '2' ? archSSE2 : archSSE; break; } } } found = false; break; case 'b': // see http://msdn2.microsoft.com/en-us/library/ms173499.aspx if (second == 'i' && third == 'g' && fourth == 'o') { const char *o = option; if (o[5] == 'b' && o[6] == 'j') { AdditionalOptions += option; break; } } found = false; break; case 'c': if(second == '\0') { CompileOnly = _True; } else if(second == 'l') { if (config->CompilerVersion != NET2005) { if(*(option+5) == 'n') { CompileAsManaged = managedAssemblyPure; TurnOffAssemblyGeneration = _True; } else if(*(option+5) == 'p') { CompileAsManaged = managedAssemblyPure; warn_msg(WarnLogic, "/clr:pure option only for .NET >= 2005, using /clr"); } else if(*(option+5) == 's') { CompileAsManaged = managedAssemblyPure; warn_msg(WarnLogic, "/clr:safe option only for .NET >= 2005, using /clr"); } else if(*(option+5) == 'o') { CompileAsManaged = managedAssemblyPure; warn_msg(WarnLogic, "/clr:oldSyntax option only for .NET >= 2005, using /clr"); } else if(*(option+5) == 'i') { CompileAsManaged = managedAssemblyPure; warn_msg(WarnLogic, "initialAppDomain enum value unknown, using /crl"); } else { CompileAsManaged = managedAssemblyPure; } } else { if(*(option+5) == 'n') { CompileAsManaged = managedAssembly;
⌨️ 快捷键说明
复制代码
Ctrl + C
搜索代码
Ctrl + F
全屏模式
F11
切换主题
Ctrl + Shift + D
显示快捷键
?
增大字号
Ctrl + =
减小字号
Ctrl + -