I noticed if a GUID (PPI & Protocol) was only used via a library it does not end up in the Guid.xref file.
It looks to me like this code is only extracting the GUIDs from the Drivers INF file and the GUIDs defined in dependent libraries are skipped? https://github.com/tianocore/edk2/blob/master/BaseTools/Source/Python/GenFds/GenFds.py#L701 <https://github.com/tianocore/edk2/blob/master/BaseTools/Source/Python/GenFds/GenFds.py#L701> for Arch in ArchList: PlatformDataBase = BuildDb.BuildObject[GenFdsGlobalVariable.ActivePlatform, Arch, GenFdsGlobalVariable.TargetName, GenFdsGlobalVariable.ToolChainTag] for ModuleFile in PlatformDataBase.Modules: Module = BuildDb.BuildObject[ModuleFile, Arch, GenFdsGlobalVariable.TargetName, GenFdsGlobalVariable.ToolChainTag] GuidXRefFile.write("%s %s\n" % (Module.Guid, Module.BaseName)) for key, item in Module.Protocols.items(): GuidDict[key] = item for key, item in Module.Guids.items(): GuidDict[key] = item for key, item in Module.Ppis.items(): GuidDict[key] = item Does anyone know how to extract the info from the dependent libs? I have an lldb type formatter for EFI_GUID that will print out the GUID C name so I noticed when some of them went missing. Thanks, Andrew Fish _______________________________________________ edk2-devel mailing list edk2-devel@lists.01.org https://lists.01.org/mailman/listinfo/edk2-devel