def _GenerateConfigVariableReport( log: Log, topLevelPackage: Package, configVariantOptions: List[str]) -> GeneratorVariableReport: variableReport = GeneratorVariableReport( log, configVariantOptions=configVariantOptions) # Add all the package variants for variantEntry in topLevelPackage.ResolvedAllVariantDict.values(): variantEntryOptions = [ option.Name for option in variantEntry.Options ] variableReport.Add(variantEntry.Name, variantEntryOptions) # CMake names for debug and release building variableReport.Add(LocalMagicBuildVariants.CMakeBuildConfig, ['Debug', 'Release', 'Debug'], ToolAddedVariant.CONFIG) # CMake settings for the code coverage option variableReport.Add(LocalMagicBuildVariants.OptionCodeCoverage, ['OFF', 'OFF', 'ON'], ToolAddedVariant.CONFIG) # make builds default to release variableReport.SetDefaultOption( ToolAddedVariant.CONFIG, ToolAddedVariantConfigOption.GetDefaultSetting()) return variableReport
def _GenerateVariableReport( log: Log, generatorName: str, package: Package, configVariantOptions: List[str], isMasterBuild: bool) -> GeneratorVariableReport: variableReport = GeneratorVariableReport( log, configVariantOptions=configVariantOptions) # Add all the package variants for variantEntry in package.ResolvedAllVariantDict.values(): variantEntryOptions = [ option.Name for option in variantEntry.Options ] variableReport.Add(variantEntry.Name, variantEntryOptions) # The make files generate executable files in debug mode with the postfix '_d' exeFileExtensionOptionList = ['_d', ''] # This is a bit ugly as we just assume coverage will be last if ToolAddedVariantConfigOption.Coverage in configVariantOptions: exeFileExtensionOptionList.append('_c') variableReport.Add(LocalMagicBuildVariants.GeneratorExeFileExtension, exeFileExtensionOptionList, ToolAddedVariant.CONFIG) # CMake names for debug and release building variableReport.Add(LocalMagicBuildVariants.CMakeBuildConfig, ['Debug', 'Release'], ToolAddedVariant.CONFIG) # make builds default to release variableReport.SetDefaultOption(ToolAddedVariant.CONFIG, ToolAddedVariantConfigOption.Release) return variableReport
def GenerateVariableReport(log: Log, generatorName: str, package: Package) -> GeneratorVariableReport: variableReport = GeneratorVariableReport(log) # Add all the package variants for variantEntry in package.ResolvedAllVariantDict.values(): variantEntryOptions = [ option.Name for option in variantEntry.Options ] variableReport.Add(variantEntry.Name, variantEntryOptions) # The make files generate executable files in debug mode with the postfix '_d' variableReport.Add(LocalMagicBuildVariants.GeneratorExeFileExtension, ['_d', ''], ToolAddedVariant.CONFIG) # make builds default to release variableReport.SetDefaultOption(ToolAddedVariant.CONFIG, ToolAddedVariantConfigOption.Release) return variableReport