def _write_link_options(self, element, options): element.append(E.OutputFile('$(TargetPath)')) if options.get('import_lib'): element.append(E.ImportLibrary(textify(options['import_lib']))) if options.get('extra'): element.append( E.AdditionalOptions(' '.join( chain(textify_each(options['extra'], quoted=True), ['%(AdditionalOptions)'])))) if options.get('libs'): element.append( E.AdditionalDependencies(';'.join( chain(textify_each(options['libs']), ['%(AdditionalDependencies)']))))
def _write_compile_options(self, element, options): warnings = options.get('warnings', {}) if warnings.get('level') is not None: element.append(E.WarningLevel( self._warning_levels[warnings['level']] )) if warnings.get('as_error') is not None: element.append(E.TreatWarningAsError( 'true' if warnings['as_error'] else 'false' )) if options.get('includes'): element.append(E.AdditionalIncludeDirectories( ';'.join(chain( textify_each(options['includes']), ['%(AdditionalIncludeDirectories)'] )) )) if options.get('defines'): element.append(E.PreprocessorDefinitions( ';'.join(chain( textify_each(options['defines']), ['%(PreprocessorDefinitions)'] )) )) pch = options.get('pch', {}) if pch.get('create') is not None: element.append(E.PrecompiledHeader('Create')) element.append(E.PrecompiledHeaderFile(pch['create'])) elif pch.get('use') is not None: element.append(E.PrecompiledHeader('Use')) element.append(E.PrecompiledHeaderFile(pch['use'])) if options.get('extra'): element.append(E.AdditionalOptions( ' '.join(chain( textify_each(options['extra'], quoted=True), ['%(AdditionalOptions)'] )) ))