Hi Bob, I agree this is a critical regression issue that must be fixed for the edk2-stable201908 release.
Tested-by: Michael D Kinney <michael.d.kin...@intel.com> Acked-by: Michael D Kinney <michael.d.kin...@intel.com> Thanks, Mike > -----Original Message----- > From: Gao, Liming > Sent: Wednesday, August 28, 2019 8:22 AM > To: Leif Lindholm <leif.lindh...@linaro.org>; > devel@edk2.groups.io; Feng, Bob C > <bob.c.f...@intel.com> > Cc: Kinney, Michael D <michael.d.kin...@intel.com>; > af...@apple.com; Laszlo Ersek (ler...@redhat.com) > <ler...@redhat.com> > Subject: RE: [edk2-devel] [Patch][edk2-stable201908] > BaseTools: Fixed regression issue for building !x86 > builds > > Bob: > This fix is clear. Reviewed-by: Liming Gao > <liming....@intel.com> > > Thanks > Liming > > -----Original Message----- > > From: Leif Lindholm [mailto:leif.lindh...@linaro.org] > > Sent: Wednesday, August 28, 2019 10:01 PM > > To: devel@edk2.groups.io; Feng, Bob C > <bob.c.f...@intel.com> > > Cc: Gao, Liming <liming....@intel.com> > > Subject: Re: [edk2-devel] [Patch][edk2-stable201908] > BaseTools: Fixed > > regression issue for building !x86 builds > > > > On Wed, Aug 28, 2019 at 05:17:10PM +0800, Bob Feng > wrote: > > > BZ: > https://bugzilla.tianocore.org/show_bug.cgi?id=2134 > > > > > > This patch is to fix a build tool regression issue > which was > > > introduced by commit e8449e1d8e. > > > > > > In commit e8449e1d8e, build tool check the pcd > before filter out the > > > irrelevant library instance. > > > > > > The logic of evaluating the priority of the library > class > > > resolutions was not changed. > > > > Ah, OK, that greatly simplifies things. > > > > This resolves the issue(s) for me - thanks! > > > > > Cc: Liming Gao <liming....@intel.com> > > > Signed-off-by: Bob Feng <bob.c.f...@intel.com> > > > > Acked-by: Leif Lindholm <leif.lindh...@linaro.org> > > Tested-by: Leif Lindholm <leif.lindh...@linaro.org> > > > > > > > --- > > > .../Source/Python/Workspace/InfBuildData.py | 29 > ++++++++++--------- > > > 1 file changed, 16 insertions(+), 13 deletions(-) > > > > > > diff --git > a/BaseTools/Source/Python/Workspace/InfBuildData.py > > > b/BaseTools/Source/Python/Workspace/InfBuildData.py > > > index e63246b03b..7675b0ea00 100644 > > > --- > a/BaseTools/Source/Python/Workspace/InfBuildData.py > > > +++ > b/BaseTools/Source/Python/Workspace/InfBuildData.py > > > @@ -154,12 +154,11 @@ class > InfBuildData(ModuleBuildClassObject): > > > self._PcdComments = None > > > self._BuildOptions = None > > > self._DependencyFileList = None > > > self.LibInstances = [] > > > self.ReferenceModules = set() > > > - self.Guids > > > - self.Pcds > > > + > > > def SetReferenceModule(self,Module): > > > self.ReferenceModules.add(Module) > > > return self > > > > > > ## XXX[key] = value > > > @@ -654,10 +653,24 @@ class > InfBuildData(ModuleBuildClassObject): > > > "Value of Guid > [%s] is not found under [Guids] section in" % CName, > > > > ExtraData=PackageList, File=self.MetaFile, > Line=Record[-1]) > > > RetVal[CName] = Value > > > CommentRecords = > self._RawData[MODEL_META_DATA_COMMENT, self._Arch, > self._Platform, Record[5]] > > > self._GuidComments[CName] = [a[0] for > a in > > > CommentRecords] > > > + > > > + for Type in > > > [MODEL_PCD_FIXED_AT_BUILD,MODEL_PCD_PATCHABLE_IN_MODULE > ,MODEL_PCD_FEAT > > URE_FLAG,MODEL_PCD_DYNAMIC,MODEL_PCD > > _DYNAMIC_EX]: > > > + RecordList = self._RawData[Type, > self._Arch, self._Platform] > > > + for TokenSpaceGuid, _, _, _, _, _, > LineNo in RecordList: > > > + # get the guid value > > > + if TokenSpaceGuid not in RetVal: > > > + Value = > GuidValue(TokenSpaceGuid, self.Packages, > self.MetaFile.Path) > > > + if Value is None: > > > + PackageList = > "\n\t".join(str(P) for P in self.Packages) > > > + EdkLogger.error('build', > RESOURCE_NOT_AVAILABLE, > > > + "Value of > Guid [%s] is not found under [Guids] section in" % > TokenSpaceGuid, > > > + > ExtraData=PackageList, File=self.MetaFile, Line=LineNo) > > > + RetVal[TokenSpaceGuid] = Value > > > + > self._GuidsUsedByPcd[TokenSpaceGuid] = Value > > > return RetVal > > > > > > ## Retrieve include paths necessary for this > module (for Edk.x style of modules) > > > @cached_property > > > def Includes(self): > > > @@ -856,11 +869,11 @@ class > InfBuildData(ModuleBuildClassObject): > > > if file_name.upper().endswith("DEC"): > > > pkg = > os.path.join(TopDir,file_name) > > > return pkg > > > @cached_class_function > > > def GetGuidsUsedByPcd(self): > > > - self.Pcds > > > + self.Guid > > > return self._GuidsUsedByPcd > > > > > > ## Retrieve PCD for given type > > > def _GetPcd(self, Type): > > > Pcds = OrderedDict() > > > @@ -868,20 +881,10 @@ class > InfBuildData(ModuleBuildClassObject): > > > PcdList = [] > > > RecordList = self._RawData[Type, > self._Arch, self._Platform] > > > for TokenSpaceGuid, PcdCName, Setting, > Arch, Platform, Id, LineNo in RecordList: > > > PcdDict[Arch, Platform, PcdCName, > TokenSpaceGuid] = (Setting, LineNo) > > > PcdList.append((PcdCName, > TokenSpaceGuid)) > > > - # get the guid value > > > - if TokenSpaceGuid not in self.Guids: > > > - Value = GuidValue(TokenSpaceGuid, > self.Packages, self.MetaFile.Path) > > > - if Value is None: > > > - PackageList = > "\n\t".join(str(P) for P in self.Packages) > > > - EdkLogger.error('build', > RESOURCE_NOT_AVAILABLE, > > > - "Value of Guid > [%s] is not found under [Guids] section in" % > TokenSpaceGuid, > > > - > ExtraData=PackageList, File=self.MetaFile, Line=LineNo) > > > - self.Guids[TokenSpaceGuid] = Value > > > - > self._GuidsUsedByPcd[TokenSpaceGuid] = Value > > > CommentRecords = > self._RawData[MODEL_META_DATA_COMMENT, self._Arch, > self._Platform, Id] > > > Comments = [] > > > for CmtRec in CommentRecords: > > > Comments.append(CmtRec[0]) > > > self._PcdComments[TokenSpaceGuid, > PcdCName] = Comments > > > -- > > > 2.20.1.windows.1 > > > > > > > > > > > > -=-=-=-=-=-=-=-=-=-=-=- Groups.io Links: You receive all messages sent to this group. View/Reply Online (#46552): https://edk2.groups.io/g/devel/message/46552 Mute This Topic: https://groups.io/mt/33055286/21656 Group Owner: devel+ow...@edk2.groups.io Unsubscribe: https://edk2.groups.io/g/devel/unsub [arch...@mail-archive.com] -=-=-=-=-=-=-=-=-=-=-=-