]> git.proxmox.com Git - mirror_edk2.git/blobdiff - Tools/Source/GenBuild/org/tianocore/build/autogen/AutoGen.java
Fix EDKT186.
[mirror_edk2.git] / Tools / Source / GenBuild / org / tianocore / build / autogen / AutoGen.java
index 31a09dd3d247bf88978a17024a4630ba5495bae4..2d7bb0901cc036c5e37df32644878c4439f83d37 100644 (file)
@@ -1772,6 +1772,27 @@ public class AutoGen {
         */\r
        void ExternCallBackToAutoGenC(StringBuffer fileBuffer)\r
                        throws BuildException {\r
+               //\r
+               // Collect module's <SetVirtualAddressMapCallBack> and \r
+               // <ExitBootServiceCallBack> and add to setVirtualAddList \r
+               //  exitBootServiceList.\r
+               // \r
+        String[] setVirtuals = SurfaceAreaQuery.getSetVirtualAddressMapCallBackArray();\r
+        String[] exitBoots = SurfaceAreaQuery.getExitBootServicesCallBackArray();\r
+        if (setVirtuals != null) {\r
+            for (int j = 0; j < setVirtuals.length; j++) {\r
+                           this.setVirtalAddList.add(setVirtuals[j]);\r
+                       }\r
+               }\r
+               if (exitBoots != null) {\r
+                   for (int k = 0; k < exitBoots.length; k++) {\r
+                           this.exitBootServiceList.add(exitBoots[k]);\r
+                       }\r
+               }\r
+               //\r
+               //  Add c code in autogen.c which relate to <SetVirtualAddressMapCallBack>\r
+               //  and <ExitBootServicesCallBack> \r
+               // \r
                String moduleType = this.moduleId.getModuleType();\r
                boolean UefiOrDxeModule = false;\r
                int Count = 0;\r