]> git.proxmox.com Git - mirror_edk2.git/blobdiff - BaseTools/Source/Python/AutoGen/GenDepex.py
BaseTools: Add error message if Structure PCD value is wrong
[mirror_edk2.git] / BaseTools / Source / Python / AutoGen / GenDepex.py
index a390d560fc1a7db8834b7de4926aebee2f15a555..7aa22bd944a0037b0bca9f0a07385cd984829398 100644 (file)
@@ -42,6 +42,8 @@ gType2Phase = {
     "UEFI_DRIVER"       :   "DXE",\r
     "UEFI_APPLICATION"  :   "DXE",\r
     "SMM_CORE"          :   "DXE",\r
+    "MM_STANDALONE"     :   "MM",\r
+    "MM_CORE_STANDALONE" :  "MM",\r
 }\r
 \r
 ## Convert dependency expression string into EFI internal representation\r
@@ -98,6 +100,19 @@ class DependencyExpression:
             "FALSE" :   0x07,\r
             "END"   :   0x08,\r
             "SOR"   :   0x09\r
+        },\r
+\r
+        "MM"   : {\r
+            "BEFORE":   0x00,\r
+            "AFTER" :   0x01,\r
+            "PUSH"  :   0x02,\r
+            "AND"   :   0x03,\r
+            "OR"    :   0x04,\r
+            "NOT"   :   0x05,\r
+            "TRUE"  :   0x06,\r
+            "FALSE" :   0x07,\r
+            "END"   :   0x08,\r
+            "SOR"   :   0x09\r
         }\r
     }\r
 \r
@@ -286,10 +301,10 @@ class DependencyExpression:
         # don't generate depex if only TRUE operand left\r
         if self.ModuleType == 'PEIM' and len(NewOperand) == 1 and NewOperand[0] == 'TRUE':\r
             self.PostfixNotation = []\r
-            return            \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'] and \\r
+        if self.ModuleType in ['UEFI_DRIVER', 'DXE_DRIVER', 'DXE_RUNTIME_DRIVER', 'DXE_SAL_DRIVER', 'DXE_SMM_DRIVER', 'MM_STANDALONE'] and \\r
            Op == 'AND' and \\r
            self.ArchProtocols == set([GuidStructureStringToGuidString(Guid) for Guid in AllOperand]):\r
             self.PostfixNotation = []\r
@@ -424,7 +439,7 @@ def Main():
         Dpx = DependencyExpression(DxsString, Option.ModuleType, Option.Optimize)\r
         if Option.OutputFile != None:\r
             FileChangeFlag = Dpx.Generate(Option.OutputFile)\r
-            if not FileChangeFlag and DxsFile: \r
+            if not FileChangeFlag and DxsFile:\r
                 #\r
                 # Touch the output file if its time stamp is older than the original\r
                 # DXS file to avoid re-invoke this tool for the dependency check in build rule.\r