private function buildWarningsArguments(Configuration $configuration) { $result = []; if ($configuration->getWarningsAsErrors()) { $result[] = '/WX-'; } $configuration->setWarningLevel($configuration->getWarningLevel() || 'level3'); switch ($configuration->getWarningLevel()) { case 'all': $result[] = '/Wall'; break; case 'none': $result[] = '/W0'; break; case 'level1': $result[] = '/W1'; break; case 'level2': $result[] = '/W2'; break; case 'level3': $result[] = '/W3'; break; case 'level4': $result[] = '/W4'; break; } return implode(' ', $result); }
protected function writeCompileGroup(DOMElement $parent, Configuration $configuration) { $compileElement = XmlDom::createElement($parent, 'ClCompile'); XmlDom::createElement($compileElement, 'WarningLevel', $this->convertWarningLevel($configuration->getWarningLevel())); XmlDom::createElement($compileElement, 'Optimization', $configuration->getDebug() ? 'Disabled' : 'MaxSpeed'); if (!$configuration->getDebug()) { XmlDom::createElement($compileElement, 'FunctionLevelLinking', 'true'); XmlDom::createElement($compileElement, 'IntrinsicFunctions', 'true'); } $this->writePreprocessorDefinitions($compileElement, $configuration); if ($configuration->getPrecompiledHeader()) { $pch = $configuration->getPrecompiledHeader(); } elseif ($this->project->getPrecompiledHeader()) { $pch = $this->project->getPrecompiledHeader(); } else { $pch = null; } if ($pch) { XmlDom::createElement($compileElement, 'PrecompiledHeader', 'Use'); XmlDom::createElement($compileElement, 'PrecompiledHeaderFile', $pch->getHeader()); } else { XmlDom::createElement($compileElement, 'PrecompiledHeader', 'NotUsing'); } }