Fix the bug to support PI not compressed compression section.
[efi/basetools/.git] / Source / Python / GenFds / CompressSection.py
index 7e2cbaf..7e12667 100755 (executable)
@@ -20,26 +20,26 @@ import Section
 import subprocess\r
 import os\r
 from GenFdsGlobalVariable import GenFdsGlobalVariable\r
-from CommonDataClass.FdfClassObject import CompressSectionClassObject\r
+from CommonDataClass.FdfClass import CompressSectionClassObject\r
 \r
 ## generate compress section\r
 #\r
 #\r
 class CompressSection (CompressSectionClassObject) :\r
-    \r
-    ## compress types: PI standard and non PI standard    \r
+\r
+    ## compress types: PI standard and non PI standard\r
     CompTypeDict = {\r
-        'PI_STD'     : 'PI_STD',\r
-        'NON_PI_STD' : 'NON_PI_STD'\r
+        'PI_STD'  : 'PI_STD',\r
+        'PI_NONE' : 'PI_NONE'\r
     }\r
-    \r
+\r
     ## The constructor\r
     #\r
     #   @param  self        The object pointer\r
     #\r
     def __init__(self):\r
         CompressSectionClassObject.__init__(self)\r
-        \r
+\r
     ## GenSection() method\r
     #\r
     #   Generate compressed section\r
@@ -54,11 +54,11 @@ class CompressSection (CompressSectionClassObject) :
     #   @retval tuple       (Generated file name, section alignment)\r
     #\r
     def GenSection(self, OutputPath, ModuleName, SecNum, KeyStringList, FfsInf = None, Dict = {}):\r
-        \r
+\r
         if FfsInf != None:\r
             self.CompType = FfsInf.__ExtendMacro__(self.CompType)\r
             self.Alignment = FfsInf.__ExtendMacro__(self.Alignment)\r
-            \r
+\r
         SectFiles = tuple()\r
         Index = 0\r
         for Sect in self.SectionList:\r
@@ -68,7 +68,7 @@ class CompressSection (CompressSectionClassObject) :
             if ReturnSectList != []:\r
                 for FileData in ReturnSectList:\r
                    SectFiles += (FileData,)\r
-                        \r
+\r
 \r
         OutputFile = OutputPath + \\r
                      os.sep     + \\r
@@ -77,19 +77,11 @@ class CompressSection (CompressSectionClassObject) :
                      SecNum     + \\r
                      Ffs.SectionSuffix['COMPRESS']\r
         OutputFile = os.path.normpath(OutputFile)\r
-        \r
-        GenSectionCmd = (\r
-            'GenSec',\r
-             '-o', OutputFile,\r
-             '-s', Section.Section.SectionType['COMPRESS'],\r
-             '-c', self.CompTypeDict[self.CompType],\r
-            ) + SectFiles\r
-        #\r
-        # Call GenSection\r
-        #\r
-        GenFdsGlobalVariable.CallExternalTool(GenSectionCmd, "GenSection Failed!")\r
+\r
+        GenFdsGlobalVariable.GenerateSection(OutputFile, SectFiles, Section.Section.SectionType['COMPRESS'],\r
+                                             CompressionType=self.CompTypeDict[self.CompType])\r
         OutputFileList = []\r
         OutputFileList.append(OutputFile)\r
         return OutputFileList, self.Alignment\r
 \r
-        \r
+\r