Per build spec, the .aml file should use ASL binary type in the Asbuilt
inf file. the original bug is .aml file may use BIN as binary type when
the module type is not BASE or USER_DEFINED. This patch 1) fix this bug.
2) fix some indent coding style issue.

Cc: Liming Gao <[email protected]>
Contributed-under: TianoCore Contribution Agreement 1.0
Signed-off-by: Yonghong Zhu <[email protected]>
---
 BaseTools/Source/Python/AutoGen/AutoGen.py | 37 +++++++++++++-----------------
 1 file changed, 16 insertions(+), 21 deletions(-)

diff --git a/BaseTools/Source/Python/AutoGen/AutoGen.py 
b/BaseTools/Source/Python/AutoGen/AutoGen.py
index 2cc6970..ae0f8a6 100644
--- a/BaseTools/Source/Python/AutoGen/AutoGen.py
+++ b/BaseTools/Source/Python/AutoGen/AutoGen.py
@@ -1113,11 +1113,11 @@ class PlatformAutoGen(AutoGen):
         self.IsCodeFileCreated = True
 
     ## Generate Fds Command
     def _GenFdsCommand(self):
         return self.Workspace.GenFdsCommand
-               
+
     ## Create makefile for the platform and mdoules in it
     #
     #   @param      CreateModuleMakeFile    Flag indicating if the makefile for
     #                                       modules will be created as well
     #
@@ -3664,38 +3664,33 @@ class ModuleAutoGen(AutoGen):
 
         if DriverType:
             AsBuiltInfDict['pcd_is_driver_string'] += [DriverType]
 
         if 'UEFI_SPECIFICATION_VERSION' in self.Specification:
-          AsBuiltInfDict['module_uefi_specification_version'] += 
[self.Specification['UEFI_SPECIFICATION_VERSION']]
+            AsBuiltInfDict['module_uefi_specification_version'] += 
[self.Specification['UEFI_SPECIFICATION_VERSION']]
         if 'PI_SPECIFICATION_VERSION' in self.Specification:
-          AsBuiltInfDict['module_pi_specification_version'] += 
[self.Specification['PI_SPECIFICATION_VERSION']]
+            AsBuiltInfDict['module_pi_specification_version'] += 
[self.Specification['PI_SPECIFICATION_VERSION']]
 
         OutputDir = self.OutputDir.replace('\\', '/').strip('/')
-        if self.ModuleType in ['BASE', 'USER_DEFINED']:
-          for Item in self.CodaTargetList:
+
+        for Item in self.CodaTargetList:
             File = Item.Target.Path.replace('\\', 
'/').strip('/').replace(OutputDir, '').strip('/')
             if Item.Target.Ext.lower() == '.aml':
-              AsBuiltInfDict['binary_item'] += ['ASL|' + File]
+                AsBuiltInfDict['binary_item'] += ['ASL|' + File]
             elif Item.Target.Ext.lower() == '.acpi':
-              AsBuiltInfDict['binary_item'] += ['ACPI|' + File]
-            else:
-              AsBuiltInfDict['binary_item'] += ['BIN|' + File]
-        else:
-          for Item in self.CodaTargetList:
-            File = Item.Target.Path.replace('\\', 
'/').strip('/').replace(OutputDir, '').strip('/')
-            if Item.Target.Ext.lower() == '.efi':
-              AsBuiltInfDict['binary_item'] += ['PE32|' + self.Name + '.efi']
+                AsBuiltInfDict['binary_item'] += ['ACPI|' + File]
+            elif Item.Target.Ext.lower() == '.efi':
+                AsBuiltInfDict['binary_item'] += ['PE32|' + self.Name + '.efi']
             else:
-              AsBuiltInfDict['binary_item'] += ['BIN|' + File]
-          if self.DepexGenerated:
+                AsBuiltInfDict['binary_item'] += ['BIN|' + File]
+        if self.DepexGenerated:
             if self.ModuleType in ['PEIM']:
-              AsBuiltInfDict['binary_item'] += ['PEI_DEPEX|' + self.Name + 
'.depex']
+                AsBuiltInfDict['binary_item'] += ['PEI_DEPEX|' + self.Name + 
'.depex']
             if self.ModuleType in ['DXE_DRIVER', 'DXE_RUNTIME_DRIVER', 
'DXE_SAL_DRIVER', 'UEFI_DRIVER']:
-              AsBuiltInfDict['binary_item'] += ['DXE_DEPEX|' + self.Name + 
'.depex']
+                AsBuiltInfDict['binary_item'] += ['DXE_DEPEX|' + self.Name + 
'.depex']
             if self.ModuleType in ['DXE_SMM_DRIVER']:
-              AsBuiltInfDict['binary_item'] += ['SMM_DEPEX|' + self.Name + 
'.depex']
+                AsBuiltInfDict['binary_item'] += ['SMM_DEPEX|' + self.Name + 
'.depex']
 
         Bin = self._GenOffsetBin()
         if Bin:
             AsBuiltInfDict['binary_item'] += ['BIN|%s' % Bin]
 
@@ -3843,12 +3838,12 @@ class ModuleAutoGen(AutoGen):
             PcdEntry = Pcd.TokenSpaceGuidCName + '.' + TokenCName
             if PcdComments:
                 PcdEntry = PcdComments + '\n  ' + PcdEntry
             AsBuiltInfDict['pcd_item'] += [PcdEntry]
         for Item in self.BuildOption:
-          if 'FLAGS' in self.BuildOption[Item]:
-            AsBuiltInfDict['flags_item'] += ['%s:%s_%s_%s_%s_FLAGS = %s' % 
(self.ToolChainFamily, self.BuildTarget, self.ToolChain, self.Arch, Item, 
self.BuildOption[Item]['FLAGS'].strip())]
+            if 'FLAGS' in self.BuildOption[Item]:
+                AsBuiltInfDict['flags_item'] += ['%s:%s_%s_%s_%s_FLAGS = %s' % 
(self.ToolChainFamily, self.BuildTarget, self.ToolChain, self.Arch, Item, 
self.BuildOption[Item]['FLAGS'].strip())]
 
         # Generated LibraryClasses section in comments.
         for Library in self.LibraryAutoGenList:
             AsBuiltInfDict['libraryclasses_item'] += 
[Library.MetaFile.File.replace('\\', '/')]
         
-- 
2.6.1.windows.1

_______________________________________________
edk2-devel mailing list
[email protected]
https://lists.01.org/mailman/listinfo/edk2-devel

Reply via email to