\r
from Common.BuildToolError import *\r
from Common import EdkLogger\r
-from Common.Misc import PathClass, tdict\r
+from Common.Misc import PathClass, tdict, ProcessDuplicatedInf\r
from Common.StringUtils import NormPath, ReplaceMacro\r
from Common import GlobalData\r
from Common.Expression import *\r
if ErrorCode != 0:\r
EdkLogger.error("GenFds", ErrorCode, ExtraData=ErrorInfo)\r
\r
- if not ffsInf.InfFileName in self.Profile.InfList:\r
- self.Profile.InfList.append(ffsInf.InfFileName)\r
+ NewFileName = ffsInf.InfFileName\r
+ if ffsInf.OverrideGuid:\r
+ NewFileName = ProcessDuplicatedInf(PathClass(ffsInf.InfFileName,GenFdsGlobalVariable.WorkSpaceDir), ffsInf.OverrideGuid, GenFdsGlobalVariable.WorkSpaceDir).Path\r
+\r
+ if not NewFileName in self.Profile.InfList:\r
+ self.Profile.InfList.append(NewFileName)\r
FileLineTuple = GetRealFileLine(self.FileName, self.CurrentLineNumber)\r
self.Profile.InfFileLineList.append(FileLineTuple)\r
if ffsInf.UseArch:\r
if ErrorCode != 0:\r
EdkLogger.error("GenFds", ErrorCode, ExtraData=ErrorInfo)\r
\r
- if not ffsInf.InfFileName in self.Profile.InfList:\r
- self.Profile.InfList.append(ffsInf.InfFileName)\r
+ NewFileName = ffsInf.InfFileName\r
+ if ffsInf.OverrideGuid:\r
+ NewFileName = ProcessDuplicatedInf(PathClass(ffsInf.InfFileName,GenFdsGlobalVariable.WorkSpaceDir), ffsInf.OverrideGuid, GenFdsGlobalVariable.WorkSpaceDir).Path\r
+\r
+ if not NewFileName in self.Profile.InfList:\r
+ self.Profile.InfList.append(NewFileName)\r
FileLineTuple = GetRealFileLine(self.FileName, self.CurrentLineNumber)\r
self.Profile.InfFileLineList.append(FileLineTuple)\r
if ffsInf.UseArch:\r
raise Warning.ExpectedEquals(self.FileName, self.CurrentLineNumber)\r
# Get a list of PCI IDs\r
Overrides.PciDeviceId = ""\r
- while (self.__GetNextHexNumber()):\r
- Overrides.PciDeviceId = "{} {}".format(Overrides.PciDeviceId, self.__Token)\r
+ while (self._GetNextHexNumber()):\r
+ Overrides.PciDeviceId = "{} {}".format(Overrides.PciDeviceId, self._Token)\r
if not Overrides.PciDeviceId:\r
raise Warning.Expected("one or more Hex device ids", self.FileName, self.CurrentLineNumber)\r
continue\r