diff options
author | Yonghong Zhu <yonghong.zhu@intel.com> | 2018-03-09 15:18:35 +0800 |
---|---|---|
committer | Yonghong Zhu <yonghong.zhu@intel.com> | 2018-03-09 16:37:35 +0800 |
commit | 705ed563de86475a32fb555d4238cc10717294f8 (patch) | |
tree | c5b936c55ed25b473d8ed5d334f0e585eebf6b06 /BaseTools/Source/Python/GenFds | |
parent | 8565b5829c1f30408020a4adb37074dba5492378 (diff) | |
download | edk2-705ed563de86475a32fb555d4238cc10717294f8.tar.gz edk2-705ed563de86475a32fb555d4238cc10717294f8.tar.bz2 edk2-705ed563de86475a32fb555d4238cc10717294f8.zip |
BaseTools: Fix a bug for --pcd used in ConditionalStatement calculate
Move the GlobalData.BuildOptionPcd before FdfParser() function and add
type check for Pcd item.
Contributed-under: TianoCore Contribution Agreement 1.1
Signed-off-by: Yonghong Zhu <yonghong.zhu@intel.com>
Reviewed-by: Liming Gao <liming.gao@intel.com>
Diffstat (limited to 'BaseTools/Source/Python/GenFds')
-rw-r--r-- | BaseTools/Source/Python/GenFds/FdfParser.py | 2 | ||||
-rw-r--r-- | BaseTools/Source/Python/GenFds/GenFds.py | 2 |
2 files changed, 3 insertions, 1 deletions
diff --git a/BaseTools/Source/Python/GenFds/FdfParser.py b/BaseTools/Source/Python/GenFds/FdfParser.py index 76d7e6ac19..dda7ed4ce7 100644 --- a/BaseTools/Source/Python/GenFds/FdfParser.py +++ b/BaseTools/Source/Python/GenFds/FdfParser.py @@ -927,6 +927,8 @@ class FdfParser: MacroDict.update(GlobalData.gCommandLineDefines)
if GlobalData.BuildOptionPcd:
for Item in GlobalData.BuildOptionPcd:
+ if type(Item) is tuple:
+ continue
PcdName, TmpValue = Item.split("=")
TmpValue = BuildOptionValue(TmpValue, {})
MacroDict[PcdName.strip()] = TmpValue
diff --git a/BaseTools/Source/Python/GenFds/GenFds.py b/BaseTools/Source/Python/GenFds/GenFds.py index 4c56cbb02a..03126e35f4 100644 --- a/BaseTools/Source/Python/GenFds/GenFds.py +++ b/BaseTools/Source/Python/GenFds/GenFds.py @@ -142,6 +142,7 @@ def main(): else:
EdkLogger.error("GenFds", OPTION_MISSING, "Missing active platform")
+ GlobalData.BuildOptionPcd = Options.OptionPcd if Options.OptionPcd else {}
GenFdsGlobalVariable.ActivePlatform = PathClass(NormPath(ActivePlatform))
if (Options.ConfDirectory):
@@ -326,7 +327,6 @@ def main(): FvObj.FvRegionInFD = RegionObj.Size
RegionObj.BlockInfoOfRegion(FdObj.BlockSizeList, FvObj)
- GlobalData.BuildOptionPcd = Options.OptionPcd if Options.OptionPcd else {}
"""Call GenFds"""
GenFds.GenFd('', FdfParserObj, BuildWorkSpace, ArchList)
|