]> git.proxmox.com Git - mirror_edk2.git/blobdiff - Tools/Source/GenBuild/org/tianocore/build/FfsProcess.java
Change GenBuildLogger format.
[mirror_edk2.git] / Tools / Source / GenBuild / org / tianocore / build / FfsProcess.java
index bb8ecf33cca435644933c583a6be0ba8a72e178f..702c28fee765b2dbcf4bd7a94214ef2802a8d4a5 100644 (file)
@@ -25,14 +25,15 @@ import org.tianocore.BuildOptionsDocument;
 import org.tianocore.build.global.GlobalData;\r
 import org.tianocore.build.global.SurfaceAreaQuery;\r
 import org.tianocore.build.id.FpdModuleIdentification;\r
+import org.tianocore.common.definitions.EdkDefinitions;\r
+import org.tianocore.common.logger.EdkLog;\r
 import org.w3c.dom.Document;\r
 import org.w3c.dom.Element;\r
 \r
 /** \r
   <p><code>FfsProcess</code> is a class to find the corresponding FFS layout. </p>\r
   \r
-  <p>Property <code>COMMON_FILE</code> specified which file to search. The element\r
-  in <code>COMMON_FILE</code> is like following: </p>\r
+  <p>The FFS Layout is like following: </p>\r
   \r
   <pre>\r
     &lt;Ffs type="APPLICATION"&gt;\r
@@ -82,19 +83,7 @@ public class FfsProcess {
     ///\r
     /// mapping from section type to section output file extension\r
     ///\r
-    public static final String[][] sectionExt = { { "EFI_SECTION_FREEFORM_SUBTYPE_GUID", ".sec" },\r
-                                                 { "EFI_SECTION_VERSION", ".ver" },\r
-                                                 { "EFI_SECTION_USER_INTERFACE", ".ui" },\r
-                                                 { "EFI_SECTION_DXE_DEPEX", ".dpx" },\r
-                                                 { "EFI_SECTION_PEI_DEPEX", ".dpx" }, \r
-                                                 { "EFI_SECTION_PE32", ".pe32" },\r
-                                                 { "EFI_SECTION_PIC", ".pic" }, \r
-                                                 { "EFI_SECTION_TE", ".tes" },\r
-                                                 { "EFI_SECTION_RAW", ".sec" }, \r
-                                                 { "EFI_SECTION_COMPRESSION", ".sec" },\r
-                                                 { "EFI_SECTION_GUID_DEFINED", ".sec" },\r
-                                                 { "EFI_SECTION_COMPATIBILITY16", ".sec" },\r
-                                                 { "EFI_SECTION_FIRMWARE_VOLUME_IMAGE", ".sec" } };\r
+    public static final String[][] sectionExt = EdkDefinitions.SectionTypeExtensions;\r
 \r
     /**\r
       search in the type, if componentType is listed in type, return true; \r
@@ -115,22 +104,20 @@ public class FfsProcess {
     }\r
 \r
     /**\r
-      Find the corresponding FFS layout in <code>COMMON_FILE</code> if it\r
-      does not specify in module's surface area. \r
+      Find the corresponding FFS layout in <code>FPD</code>. \r
       \r
       @param buildType Current module's component type\r
       @param project Ant project\r
       @return whether find the corresponding FFS layout\r
       @throws BuildException\r
-              If specified COMMON_FILE XML file is not valide.\r
+              If can't find FFS Layout in FPD.\r
     **/\r
     public boolean initSections(String buildType, Project project, FpdModuleIdentification fpdModuleId) throws BuildException {\r
         //\r
         // Try to find Ffs layout from FPD file\r
         //\r
-        SurfaceAreaQuery.push(GlobalData.getFpdBuildOptions());\r
-        BuildOptionsDocument.BuildOptions.Ffs[] ffsArray = SurfaceAreaQuery.getFpdFfs();\r
-        SurfaceAreaQuery.pop();\r
+        SurfaceAreaQuery saq = new SurfaceAreaQuery(GlobalData.getFpdBuildOptionsMap());\r
+        BuildOptionsDocument.BuildOptions.Ffs[] ffsArray = saq.getFpdFfs();\r
         for (int i = 0; i < ffsArray.length; i++) {\r
             if (isMatch(ffsArray[i].getFfsKey(), buildType)) {\r
                 ffsXmlObject = ffsArray[i];\r
@@ -143,7 +130,7 @@ public class FfsProcess {
         // Otherwise report warning message\r
         //\r
         if (buildType == null) {\r
-            System.out.println("Warning: this module doesn't specify a FfsFormatKey. ");\r
+            EdkLog.log(EdkLog.EDK_WARNING, "Warning: this module doesn't specify a FfsFormatKey. ");\r
         } else {\r
             throw new BuildException("Can't find the FfsFormatKey [" + buildType + "] attribute in the FPD file!");            \r
         }\r