from Common.Misc import GuidStructureStringToGuidString\r
from Common import EdkLogger as EdkLogger\r
from Common.BuildVersion import gBUILD_VERSION\r
+from Common.DataType import *\r
\r
## Regular expression for matching "DEPENDENCY_START ... DEPENDENCY_END"\r
gStartClosePattern = re.compile(".*DEPENDENCY_START(.+)DEPENDENCY_END.*", re.S)\r
\r
## Mapping between module type and EFI phase\r
gType2Phase = {\r
- "BASE" : None,\r
- "SEC" : "PEI",\r
- "PEI_CORE" : "PEI",\r
- "PEIM" : "PEI",\r
- "DXE_CORE" : "DXE",\r
- "DXE_DRIVER" : "DXE",\r
- "DXE_SMM_DRIVER" : "DXE",\r
- "DXE_RUNTIME_DRIVER": "DXE",\r
- "DXE_SAL_DRIVER" : "DXE",\r
- "UEFI_DRIVER" : "DXE",\r
- "UEFI_APPLICATION" : "DXE",\r
- "SMM_CORE" : "DXE",\r
- "MM_STANDALONE" : "MM",\r
- "MM_CORE_STANDALONE" : "MM",\r
+ SUP_MODULE_BASE : None,\r
+ SUP_MODULE_SEC : "PEI",\r
+ SUP_MODULE_PEI_CORE : "PEI",\r
+ SUP_MODULE_PEIM : "PEI",\r
+ SUP_MODULE_DXE_CORE : "DXE",\r
+ SUP_MODULE_DXE_DRIVER : "DXE",\r
+ SUP_MODULE_DXE_SMM_DRIVER : "DXE",\r
+ SUP_MODULE_DXE_RUNTIME_DRIVER: "DXE",\r
+ SUP_MODULE_DXE_SAL_DRIVER : "DXE",\r
+ SUP_MODULE_UEFI_DRIVER : "DXE",\r
+ SUP_MODULE_UEFI_APPLICATION : "DXE",\r
+ SUP_MODULE_SMM_CORE : "DXE",\r
+ SUP_MODULE_MM_STANDALONE : "MM",\r
+ SUP_MODULE_MM_CORE_STANDALONE : "MM",\r
}\r
\r
## Convert dependency expression string into EFI internal representation\r
NewOperand.append(Token)\r
\r
# don't generate depex if only TRUE operand left\r
- if self.ModuleType == 'PEIM' and len(NewOperand) == 1 and NewOperand[0] == 'TRUE':\r
+ if self.ModuleType == SUP_MODULE_PEIM and len(NewOperand) == 1 and NewOperand[0] == 'TRUE':\r
self.PostfixNotation = []\r
return\r
\r
# don't generate depex if all operands are architecture protocols\r
- if self.ModuleType in ['UEFI_DRIVER', 'DXE_DRIVER', 'DXE_RUNTIME_DRIVER', 'DXE_SAL_DRIVER', 'DXE_SMM_DRIVER', 'MM_STANDALONE'] and \\r
+ if self.ModuleType in [SUP_MODULE_UEFI_DRIVER, SUP_MODULE_DXE_DRIVER, SUP_MODULE_DXE_RUNTIME_DRIVER, SUP_MODULE_DXE_SAL_DRIVER, SUP_MODULE_DXE_SMM_DRIVER, SUP_MODULE_MM_STANDALONE] and \\r
Op == 'AND' and \\r
self.ArchProtocols == set([GuidStructureStringToGuidString(Guid) for Guid in AllOperand]):\r
self.PostfixNotation = []\r