diff options
author | Hess Chen <hesheng.chen@intel.com> | 2017-04-01 13:33:05 +0800 |
---|---|---|
committer | Yonghong Zhu <yonghong.zhu@intel.com> | 2017-04-05 10:46:19 +0800 |
commit | 490433ab847cf318f31f73bbbc1a503ae47370a4 (patch) | |
tree | 2ebbd2454ef2206874e98a965da10ee22d35de7d /BaseTools | |
parent | 09e27ac559c5538a0b86afb0b056ef2a3f705483 (diff) | |
download | edk2-platforms-490433ab847cf318f31f73bbbc1a503ae47370a4.tar.xz |
BaseTools/UPT: Fix a parser issue
Update the method to get PCD information and support empty section.
Contributed-under: TianoCore Contribution Agreement 1.0
Signed-off-by: Hess Chen <hesheng.chen@intel.com>
Reviewed-by: Yonghong Zhu <yonghong.zhu@intel.com>
Diffstat (limited to 'BaseTools')
-rw-r--r-- | BaseTools/Source/Python/UPT/GenMetaFile/GenInfFile.py | 5 | ||||
-rw-r--r-- | BaseTools/Source/Python/UPT/GenMetaFile/GenMetaFileMisc.py | 13 |
2 files changed, 7 insertions, 11 deletions
diff --git a/BaseTools/Source/Python/UPT/GenMetaFile/GenInfFile.py b/BaseTools/Source/Python/UPT/GenMetaFile/GenInfFile.py index bb8a1206b1..a376f56fcf 100644 --- a/BaseTools/Source/Python/UPT/GenMetaFile/GenInfFile.py +++ b/BaseTools/Source/Python/UPT/GenMetaFile/GenInfFile.py @@ -568,8 +568,9 @@ def GenUserExtensions(ModuleObject): if UserExtension.GetIdentifier() == 'Depex':
continue
Statement = UserExtension.GetStatement()
- if not Statement:
- continue
+# Comment the code to support user extension without any statement just the section header in []
+# if not Statement:
+# continue
ArchList = UserExtension.GetSupArchList()
for Index in xrange(0, len(ArchList)):
ArchList[Index] = ConvertArchForInstall(ArchList[Index])
diff --git a/BaseTools/Source/Python/UPT/GenMetaFile/GenMetaFileMisc.py b/BaseTools/Source/Python/UPT/GenMetaFile/GenMetaFileMisc.py index 0a8624c67f..3c6c9ee290 100644 --- a/BaseTools/Source/Python/UPT/GenMetaFile/GenMetaFileMisc.py +++ b/BaseTools/Source/Python/UPT/GenMetaFile/GenMetaFileMisc.py @@ -2,7 +2,7 @@ #
# This file contained the miscellaneous routines for GenMetaFile usage.
#
-# Copyright (c) 2011 - 2014, Intel Corporation. All rights reserved.<BR>
+# Copyright (c) 2011 - 2017, Intel Corporation. All rights reserved.<BR>
#
# This program and the accompanying materials are licensed and made available
# under the terms and conditions of the BSD License which accompanies this
@@ -108,33 +108,28 @@ def ObtainPcdName(Packages, TokenSpaceGuidValue, Token): TokenSpaceGuidName = ''
PcdCName = ''
TokenSpaceGuidNameFound = False
- PcdCNameFound = False
#
# Get TokenSpaceGuidCName from Guids section
#
for GuidKey in DecGuidsDict:
GuidList = DecGuidsDict[GuidKey]
- if TokenSpaceGuidNameFound:
- break
for GuidItem in GuidList:
if TokenSpaceGuidValue.upper() == GuidItem.GuidString.upper():
TokenSpaceGuidName = GuidItem.GuidCName
TokenSpaceGuidNameFound = True
break
-
+ if TokenSpaceGuidNameFound:
+ break
#
# Retrieve PcdCName from Pcds Section
#
for PcdKey in DecPcdsDict:
PcdList = DecPcdsDict[PcdKey]
- if PcdCNameFound:
- return TokenSpaceGuidName, PcdCName
for PcdItem in PcdList:
if TokenSpaceGuidName == PcdItem.TokenSpaceGuidCName and Token == PcdItem.TokenValue:
PcdCName = PcdItem.TokenCName
- PcdCNameFound = True
- break
+ return TokenSpaceGuidName, PcdCName
return TokenSpaceGuidName, PcdCName
|