We meet a case that add the library inf file which has the uni file in
the [Sources] section, for this case there will no map file exist, it
cause build tools report Traceback  error.

Cc: Liming Gao <liming....@intel.com>
Contributed-under: TianoCore Contribution Agreement 1.0
Signed-off-by: Yonghong Zhu <yonghong....@intel.com>
---
 BaseTools/Source/Python/GenFds/FfsInfStatement.py | 33 ++++++++++++-----------
 1 file changed, 17 insertions(+), 16 deletions(-)

diff --git a/BaseTools/Source/Python/GenFds/FfsInfStatement.py 
b/BaseTools/Source/Python/GenFds/FfsInfStatement.py
index b0b22d1..e9517a4 100644
--- a/BaseTools/Source/Python/GenFds/FfsInfStatement.py
+++ b/BaseTools/Source/Python/GenFds/FfsInfStatement.py
@@ -939,26 +939,27 @@ class FfsInfStatement(FfsInfStatementClassObject):
                 if len(VfrUniBaseName) > 0:
                     VfrUniOffsetList = 
self.__GetBuildOutputMapFileVfrUniInfo(VfrUniBaseName)
                     #
                     # Generate the Raw data of raw section
                     #
-                    os.path.join( self.OutputPath, self.BaseName + '.offset')
-                    UniVfrOffsetFileName    =  os.path.join( self.OutputPath, 
self.BaseName + '.offset')
-                    UniVfrOffsetFileSection =  os.path.join( self.OutputPath, 
self.BaseName + 'Offset' + '.raw')
-                    
-                    self.__GenUniVfrOffsetFile (VfrUniOffsetList, 
UniVfrOffsetFileName)
-                    
-                    UniVfrOffsetFileNameList = []
-                    UniVfrOffsetFileNameList.append(UniVfrOffsetFileName)
-                    """Call GenSection"""
-                    
GenFdsGlobalVariable.GenerateSection(UniVfrOffsetFileSection,
-                                                         
UniVfrOffsetFileNameList,
-                                                         "EFI_SECTION_RAW"
-                                                         )
-                    os.remove(UniVfrOffsetFileName)         
-                    SectList.append(UniVfrOffsetFileSection)
-                    HasGneratedFlag = True
+                    if VfrUniOffsetList:
+                        os.path.join( self.OutputPath, self.BaseName + 
'.offset')
+                        UniVfrOffsetFileName    =  os.path.join( 
self.OutputPath, self.BaseName + '.offset')
+                        UniVfrOffsetFileSection =  os.path.join( 
self.OutputPath, self.BaseName + 'Offset' + '.raw')
+
+                        self.__GenUniVfrOffsetFile (VfrUniOffsetList, 
UniVfrOffsetFileName)
+
+                        UniVfrOffsetFileNameList = []
+                        UniVfrOffsetFileNameList.append(UniVfrOffsetFileName)
+                        """Call GenSection"""
+                        
GenFdsGlobalVariable.GenerateSection(UniVfrOffsetFileSection,
+                                                             
UniVfrOffsetFileNameList,
+                                                             "EFI_SECTION_RAW"
+                                                             )
+                        os.remove(UniVfrOffsetFileName)
+                        SectList.append(UniVfrOffsetFileSection)
+                        HasGneratedFlag = True
                 
             for SecName in  SectList :
                 SectFiles.append(SecName)
                 SectAlignments.append(Align)
             Index = Index + 1
-- 
2.6.1.windows.1

_______________________________________________
edk2-devel mailing list
edk2-devel@lists.01.org
https://lists.01.org/mailman/listinfo/edk2-devel

Reply via email to