Re: [edk2] [Patch] BaseTools: Fix a bug --pcd option enable and use the pcd in expression
Reviewed-by: Jaben Carsey > -Original Message- > From: edk2-devel [mailto:edk2-devel-boun...@lists.01.org] On Behalf Of > Gao, Liming > Sent: Wednesday, October 17, 2018 6:04 PM > To: Zhu, Yonghong ; edk2-devel@lists.01.org > Subject: Re: [edk2] [Patch] BaseTools: Fix a bug --pcd option enable and use > the pcd in expression > > Reviewed-by: Liming Gao > > >-Original Message- > >From: edk2-devel [mailto:edk2-devel-boun...@lists.01.org] On Behalf Of > >Yonghong Zhu > >Sent: Wednesday, October 17, 2018 8:36 AM > >To: edk2-devel@lists.01.org > >Subject: [edk2] [Patch] BaseTools: Fix a bug --pcd option enable and use the > >pcd in expression > > > >the case is: > >in the DSC: > >[PcdsFixedAtBuild.common] > > TokenSpaceGuid.TestFixedPcd|0xFFEAA000 > > > >[PcdsDynamicExDefault.common.DEFAULT] > >!if TokenSpaceGuid.PcdFlag == TRUE > >TokenSpaceGuid.PcdTest|TokenSpaceGuid.TestFixedPcd > >!endif > > > >Then build with --pcd TokenSpaceGuid.PcdFlag=TRUE, it report failure, > >but if we build without this --pcd option, it could build success. > >we found when the --pcd is enabled, the fixedatbuild pcds are not be > >collected into expression to calculate. > > > >Fixes: https://bugzilla.tianocore.org/show_bug.cgi?id=1256 > >Contributed-under: TianoCore Contribution Agreement 1.1 > >Signed-off-by: Yonghong Zhu > >--- > > BaseTools/Source/Python/Workspace/DscBuildData.py | 1 + > > 1 file changed, 1 insertion(+) > > > >diff --git a/BaseTools/Source/Python/Workspace/DscBuildData.py > >b/BaseTools/Source/Python/Workspace/DscBuildData.py > >index f41038e..ace348b 100644 > >--- a/BaseTools/Source/Python/Workspace/DscBuildData.py > >+++ b/BaseTools/Source/Python/Workspace/DscBuildData.py > >@@ -2942,6 +2942,7 @@ class DscBuildData(PlatformBuildClassObject): > > if ModuleFile in self._Modules: > > continue > > ModuleData = self._Bdb[ModuleFile, self._Arch, self._Target, > >self._Toolchain] > > PkgSet.update(ModuleData.Packages) > > self._DecPcds, self._GuidDict = GetDeclaredPcd(self, self._Bdb, > >self._Arch, self._Target, self._Toolchain, PkgSet) > >+self._GuidDict.update(GlobalData.gPlatformPcds) > > return self._DecPcds > >-- > >2.6.1.windows.1 > > > >___ > >edk2-devel mailing list > >edk2-devel@lists.01.org > >https://lists.01.org/mailman/listinfo/edk2-devel > ___ > edk2-devel mailing list > edk2-devel@lists.01.org > https://lists.01.org/mailman/listinfo/edk2-devel ___ edk2-devel mailing list edk2-devel@lists.01.org https://lists.01.org/mailman/listinfo/edk2-devel
Re: [edk2] [Patch] BaseTools: Fix a bug --pcd option enable and use the pcd in expression
Reviewed-by: Liming Gao >-Original Message- >From: edk2-devel [mailto:edk2-devel-boun...@lists.01.org] On Behalf Of >Yonghong Zhu >Sent: Wednesday, October 17, 2018 8:36 AM >To: edk2-devel@lists.01.org >Subject: [edk2] [Patch] BaseTools: Fix a bug --pcd option enable and use the >pcd in expression > >the case is: >in the DSC: >[PcdsFixedAtBuild.common] > TokenSpaceGuid.TestFixedPcd|0xFFEAA000 > >[PcdsDynamicExDefault.common.DEFAULT] >!if TokenSpaceGuid.PcdFlag == TRUE >TokenSpaceGuid.PcdTest|TokenSpaceGuid.TestFixedPcd >!endif > >Then build with --pcd TokenSpaceGuid.PcdFlag=TRUE, it report failure, >but if we build without this --pcd option, it could build success. >we found when the --pcd is enabled, the fixedatbuild pcds are not be >collected into expression to calculate. > >Fixes: https://bugzilla.tianocore.org/show_bug.cgi?id=1256 >Contributed-under: TianoCore Contribution Agreement 1.1 >Signed-off-by: Yonghong Zhu >--- > BaseTools/Source/Python/Workspace/DscBuildData.py | 1 + > 1 file changed, 1 insertion(+) > >diff --git a/BaseTools/Source/Python/Workspace/DscBuildData.py >b/BaseTools/Source/Python/Workspace/DscBuildData.py >index f41038e..ace348b 100644 >--- a/BaseTools/Source/Python/Workspace/DscBuildData.py >+++ b/BaseTools/Source/Python/Workspace/DscBuildData.py >@@ -2942,6 +2942,7 @@ class DscBuildData(PlatformBuildClassObject): > if ModuleFile in self._Modules: > continue > ModuleData = self._Bdb[ModuleFile, self._Arch, self._Target, >self._Toolchain] > PkgSet.update(ModuleData.Packages) > self._DecPcds, self._GuidDict = GetDeclaredPcd(self, self._Bdb, >self._Arch, self._Target, self._Toolchain, PkgSet) >+self._GuidDict.update(GlobalData.gPlatformPcds) > return self._DecPcds >-- >2.6.1.windows.1 > >___ >edk2-devel mailing list >edk2-devel@lists.01.org >https://lists.01.org/mailman/listinfo/edk2-devel ___ edk2-devel mailing list edk2-devel@lists.01.org https://lists.01.org/mailman/listinfo/edk2-devel
[edk2] [Patch] BaseTools: Fix a bug --pcd option enable and use the pcd in expression
the case is: in the DSC: [PcdsFixedAtBuild.common] TokenSpaceGuid.TestFixedPcd|0xFFEAA000 [PcdsDynamicExDefault.common.DEFAULT] !if TokenSpaceGuid.PcdFlag == TRUE TokenSpaceGuid.PcdTest|TokenSpaceGuid.TestFixedPcd !endif Then build with --pcd TokenSpaceGuid.PcdFlag=TRUE, it report failure, but if we build without this --pcd option, it could build success. we found when the --pcd is enabled, the fixedatbuild pcds are not be collected into expression to calculate. Fixes: https://bugzilla.tianocore.org/show_bug.cgi?id=1256 Contributed-under: TianoCore Contribution Agreement 1.1 Signed-off-by: Yonghong Zhu --- BaseTools/Source/Python/Workspace/DscBuildData.py | 1 + 1 file changed, 1 insertion(+) diff --git a/BaseTools/Source/Python/Workspace/DscBuildData.py b/BaseTools/Source/Python/Workspace/DscBuildData.py index f41038e..ace348b 100644 --- a/BaseTools/Source/Python/Workspace/DscBuildData.py +++ b/BaseTools/Source/Python/Workspace/DscBuildData.py @@ -2942,6 +2942,7 @@ class DscBuildData(PlatformBuildClassObject): if ModuleFile in self._Modules: continue ModuleData = self._Bdb[ModuleFile, self._Arch, self._Target, self._Toolchain] PkgSet.update(ModuleData.Packages) self._DecPcds, self._GuidDict = GetDeclaredPcd(self, self._Bdb, self._Arch, self._Target, self._Toolchain, PkgSet) +self._GuidDict.update(GlobalData.gPlatformPcds) return self._DecPcds -- 2.6.1.windows.1 ___ edk2-devel mailing list edk2-devel@lists.01.org https://lists.01.org/mailman/listinfo/edk2-devel