X-Git-Url: https://git.proxmox.com/?a=blobdiff_plain;f=BaseTools%2FSource%2FPython%2Fbuild%2FBuildReport.py;h=4c57754b3b1eea42fe9ae0c5e24a26702fe91a0d;hb=71f5913eb9127305dc6ec63936c3c283975d86c0;hp=27a5d9736efa32d5f1b7645adb38f5facb356ade;hpb=eca5be7a7d813c78fbeed14736776a774a72cd45;p=mirror_edk2.git diff --git a/BaseTools/Source/Python/build/BuildReport.py b/BaseTools/Source/Python/build/BuildReport.py index 27a5d9736e..4c57754b3b 100644 --- a/BaseTools/Source/Python/build/BuildReport.py +++ b/BaseTools/Source/Python/build/BuildReport.py @@ -47,6 +47,9 @@ from Common.DataType import TAB_BACK_SLASH from Common.LongFilePathSupport import OpenLongFilePath as open from Common.MultipleWorkspace import MultipleWorkspace as mws import Common.GlobalData as GlobalData +from AutoGen.AutoGen import ModuleAutoGen +from Common.Misc import PathClass +from Common.String import NormPath ## Pattern to extract contents in EDK DXS files gDxsDependencyPattern = re.compile(r"DEPENDENCY_START(.+)DEPENDENCY_END", re.DOTALL) @@ -1647,8 +1650,21 @@ class PlatformReport(object): else: self._IsModuleBuild = False for Pa in Wa.AutoGenObjectList: + ModuleAutoGenList = [] for ModuleKey in Pa.Platform.Modules: - self.ModuleReportList.append(ModuleReport(Pa.Platform.Modules[ModuleKey].M, ReportType)) + ModuleAutoGenList.append(Pa.Platform.Modules[ModuleKey].M) + if GlobalData.gFdfParser != None: + if Pa.Arch in GlobalData.gFdfParser.Profile.InfDict: + INFList = GlobalData.gFdfParser.Profile.InfDict[Pa.Arch] + for InfName in INFList: + InfClass = PathClass(NormPath(InfName), Wa.WorkspaceDir, Pa.Arch) + Ma = ModuleAutoGen(Wa, InfClass, Pa.BuildTarget, Pa.ToolChain, Pa.Arch, Wa.MetaFile) + if Ma == None: + continue + if Ma not in ModuleAutoGenList: + ModuleAutoGenList.append(Ma) + for MGen in ModuleAutoGenList: + self.ModuleReportList.append(ModuleReport(MGen, ReportType)) @@ -1676,6 +1692,14 @@ class PlatformReport(object): FileWrite(File, "Build Duration: %s" % BuildDuration) FileWrite(File, "Report Content: %s" % ", ".join(ReportType)) + if GlobalData.MixedPcd: + FileWrite(File, gSectionStart) + FileWrite(File, "The following PCDs use different access methods:") + FileWrite(File, gSectionSep) + for PcdItem in GlobalData.MixedPcd: + FileWrite(File, "%s.%s" % (str(PcdItem[1]), str(PcdItem[0]))) + FileWrite(File, gSectionEnd) + if not self._IsModuleBuild: if "PCD" in ReportType: self.PcdReport.GenerateReport(File, None)