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 parseProjectConfigurations(Project $project, $configs) { $configList = []; foreach ($configs as $data) { $config = new Configuration($project); if (array_key_exists('debug', $data)) { $config->setDebug($data['debug']); } if (array_key_exists('definitions', $data)) { $config->setDefinitions($data['definitions']); } if (array_key_exists('dependencies', $data)) { $dependencies = $this->parseConfigurationDependencies($data['dependencies']); $config->setDependencies($dependencies); } if (array_key_exists('intermediate-dir', $data)) { $config->setIntermediateDirectory($data['intermediate-dir']); } if (array_key_exists('name', $data)) { $config->setName($data['name']); } if (array_key_exists('output', $data)) { $config->setOutputPath($data['output']); } if (array_key_exists('paths', $data)) { $paths = $this->parsePaths($data['paths']); $config->setPaths($paths); } if (array_key_exists('pch', $data)) { $pch = $this->parsePrecompiledHeader($data['pch']); $config->setPrecompiledHeader($pch); } if (array_key_exists('platform', $data)) { $config->setPlatform($data['platform']); } if (array_key_exists('warning-level', $data)) { $config->setWarningLevel($data['warning-level']); } $configList[] = $config; } return $configList; }