mirror of https://github.com/acidanthera/audk.git
BaseTools: Replace StringIO.StringIO with io.BytesIO
Replace StringIO.StringIO with io.BytesIO to be compatible with python3. This commit also removes "import StringIO" from those python scripts that don't really use it. Contributed-under: TianoCore Contribution Agreement 1.1 Cc: Yonghong Zhu <yonghong.zhu@intel.com> Cc: Liming Gao <liming.gao@intel.com> Signed-off-by: Gary Lin <glin@suse.com> Reviewed-by: Yonghong Zhu <yonghong.zhu@intel.com>
This commit is contained in:
parent
0d1f5b2b5d
commit
86379ac48b
|
@ -23,11 +23,6 @@ import codecs
|
|||
import os
|
||||
import sys
|
||||
|
||||
try:
|
||||
from io import StringIO
|
||||
except ImportError:
|
||||
from StringIO import StringIO
|
||||
|
||||
class ConvertOneArg:
|
||||
"""Converts utf-16 to utf-8 for one command line argument.
|
||||
|
||||
|
|
|
@ -25,7 +25,7 @@ import uuid
|
|||
import GenC
|
||||
import GenMake
|
||||
import GenDepex
|
||||
from StringIO import StringIO
|
||||
from io import BytesIO
|
||||
|
||||
from StrGather import *
|
||||
from BuildEngine import BuildRule
|
||||
|
@ -3437,8 +3437,8 @@ class ModuleAutoGen(AutoGen):
|
|||
def _GetAutoGenFileList(self):
|
||||
UniStringAutoGenC = True
|
||||
IdfStringAutoGenC = True
|
||||
UniStringBinBuffer = StringIO()
|
||||
IdfGenBinBuffer = StringIO()
|
||||
UniStringBinBuffer = BytesIO()
|
||||
IdfGenBinBuffer = BytesIO()
|
||||
if self.BuildType == 'UEFI_HII':
|
||||
UniStringAutoGenC = False
|
||||
IdfStringAutoGenC = False
|
||||
|
@ -3713,8 +3713,8 @@ class ModuleAutoGen(AutoGen):
|
|||
except:
|
||||
EdkLogger.error("build", FILE_OPEN_FAILURE, "File open failed for %s" % UniVfrOffsetFileName, None)
|
||||
|
||||
# Use a instance of StringIO to cache data
|
||||
fStringIO = StringIO('')
|
||||
# Use a instance of BytesIO to cache data
|
||||
fStringIO = BytesIO('')
|
||||
|
||||
for Item in VfrUniOffsetList:
|
||||
if (Item[0].find("Strings") != -1):
|
||||
|
|
|
@ -17,7 +17,7 @@ import Common.LongFilePathOs as os
|
|||
import re
|
||||
import traceback
|
||||
from Common.LongFilePathSupport import OpenLongFilePath as open
|
||||
from StringIO import StringIO
|
||||
from io import BytesIO
|
||||
from struct import pack
|
||||
from Common.BuildToolError import *
|
||||
from Common.Misc import SaveFileOnChange
|
||||
|
@ -345,7 +345,7 @@ class DependencyExpression:
|
|||
# @retval False If file exists and is not changed.
|
||||
#
|
||||
def Generate(self, File=None):
|
||||
Buffer = StringIO()
|
||||
Buffer = BytesIO()
|
||||
if len(self.PostfixNotation) == 0:
|
||||
return False
|
||||
|
||||
|
|
|
@ -10,7 +10,7 @@
|
|||
# THE PROGRAM IS DISTRIBUTED UNDER THE BSD LICENSE ON AN "AS IS" BASIS,
|
||||
# WITHOUT WARRANTIES OR REPRESENTATIONS OF ANY KIND, EITHER EXPRESS OR IMPLIED.
|
||||
#
|
||||
from StringIO import StringIO
|
||||
from io import BytesIO
|
||||
from Common.Misc import *
|
||||
from Common.StringUtils import StringToArray
|
||||
from struct import pack
|
||||
|
@ -888,7 +888,7 @@ def CreatePcdDatabaseCode (Info, AutoGenC, AutoGenH):
|
|||
DbFileName = os.path.join(Info.PlatformInfo.BuildDir, TAB_FV_DIRECTORY, Phase + "PcdDataBase.raw")
|
||||
else:
|
||||
DbFileName = os.path.join(Info.OutputDir, Phase + "PcdDataBase.raw")
|
||||
DbFile = StringIO()
|
||||
DbFile = BytesIO()
|
||||
DbFile.write(PcdDbBuffer)
|
||||
Changed = SaveFileOnChange(DbFileName, DbFile.getvalue(), True)
|
||||
def CreatePcdDataBase(PcdDBData):
|
||||
|
|
|
@ -14,7 +14,6 @@
|
|||
# Import Modules
|
||||
#
|
||||
import Common.EdkLogger as EdkLogger
|
||||
import StringIO
|
||||
from Common.BuildToolError import *
|
||||
from Common.StringUtils import GetLineNo
|
||||
from Common.Misc import PathClass
|
||||
|
|
|
@ -18,7 +18,7 @@ import re
|
|||
import Common.EdkLogger as EdkLogger
|
||||
from Common.BuildToolError import *
|
||||
from UniClassObject import *
|
||||
from StringIO import StringIO
|
||||
from io import BytesIO
|
||||
from struct import pack, unpack
|
||||
from Common.LongFilePathSupport import OpenLongFilePath as open
|
||||
|
||||
|
@ -341,7 +341,7 @@ def CreateCFileContent(BaseName, UniObjectClass, IsCompatibleMode, UniBinBuffer,
|
|||
if Language not in UniLanguageListFiltered:
|
||||
continue
|
||||
|
||||
StringBuffer = StringIO()
|
||||
StringBuffer = BytesIO()
|
||||
StrStringValue = ''
|
||||
ArrayLength = 0
|
||||
NumberOfUseOtherLangDef = 0
|
||||
|
|
|
@ -20,7 +20,7 @@ from __future__ import print_function
|
|||
import Common.LongFilePathOs as os, codecs, re
|
||||
import distutils.util
|
||||
import Common.EdkLogger as EdkLogger
|
||||
import StringIO
|
||||
from io import BytesIO
|
||||
from Common.BuildToolError import *
|
||||
from Common.StringUtils import GetLineNo
|
||||
from Common.Misc import PathClass
|
||||
|
@ -320,7 +320,7 @@ class UniFileClassObject(object):
|
|||
|
||||
UniFileClassObject.VerifyUcs2Data(FileIn, FileName, Encoding)
|
||||
|
||||
UniFile = StringIO.StringIO(FileIn)
|
||||
UniFile = BytesIO(FileIn)
|
||||
Info = codecs.lookup(Encoding)
|
||||
(Reader, Writer) = (Info.streamreader, Info.streamwriter)
|
||||
return codecs.StreamReaderWriter(UniFile, Reader, Writer)
|
||||
|
@ -335,7 +335,7 @@ class UniFileClassObject(object):
|
|||
FileDecoded = codecs.decode(FileIn, Encoding)
|
||||
Ucs2Info.encode(FileDecoded)
|
||||
except:
|
||||
UniFile = StringIO.StringIO(FileIn)
|
||||
UniFile = BytesIO(FileIn)
|
||||
Info = codecs.lookup(Encoding)
|
||||
(Reader, Writer) = (Info.streamreader, Info.streamwriter)
|
||||
File = codecs.StreamReaderWriter(UniFile, Reader, Writer)
|
||||
|
|
|
@ -17,7 +17,7 @@
|
|||
import os
|
||||
from Common.RangeExpression import RangeExpression
|
||||
from Common.Misc import *
|
||||
from StringIO import StringIO
|
||||
from io import BytesIO
|
||||
from struct import pack
|
||||
from Common.DataType import *
|
||||
|
||||
|
@ -162,7 +162,7 @@ class VAR_CHECK_PCD_VARIABLE_TAB_CONTAINER(object):
|
|||
Buffer += b
|
||||
realLength += 1
|
||||
|
||||
DbFile = StringIO()
|
||||
DbFile = BytesIO()
|
||||
if Phase == 'DXE' and os.path.exists(BinFilePath):
|
||||
BinFile = open(BinFilePath, "rb")
|
||||
BinBuffer = BinFile.read()
|
||||
|
|
|
@ -14,7 +14,7 @@
|
|||
#
|
||||
|
||||
import Common.LongFilePathOs as os
|
||||
import StringIO
|
||||
from io import BytesIO
|
||||
import StringTable as st
|
||||
import array
|
||||
import re
|
||||
|
@ -673,8 +673,8 @@ class GenVPD :
|
|||
# Open failed
|
||||
EdkLogger.error("BPDG", BuildToolError.FILE_OPEN_FAILURE, "File open failed for %s" % self.MapFileName, None)
|
||||
|
||||
# Use a instance of StringIO to cache data
|
||||
fStringIO = StringIO.StringIO('')
|
||||
# Use a instance of BytesIO to cache data
|
||||
fStringIO = BytesIO('')
|
||||
|
||||
# Write the header of map file.
|
||||
try :
|
||||
|
|
|
@ -17,7 +17,7 @@
|
|||
#
|
||||
from struct import *
|
||||
import Common.LongFilePathOs as os
|
||||
import StringIO
|
||||
from io import BytesIO
|
||||
import FfsFileStatement
|
||||
from GenFdsGlobalVariable import GenFdsGlobalVariable
|
||||
from CommonDataClass.FdfClass import AprioriSectionClassObject
|
||||
|
@ -51,7 +51,7 @@ class AprioriSection (AprioriSectionClassObject):
|
|||
def GenFfs (self, FvName, Dict = {}, IsMakefile = False):
|
||||
DXE_GUID = "FC510EE7-FFDC-11D4-BD41-0080C73C8881"
|
||||
PEI_GUID = "1B45CC0A-156A-428A-AF62-49864DA0E6E6"
|
||||
Buffer = StringIO.StringIO('')
|
||||
Buffer = BytesIO('')
|
||||
AprioriFileGuid = DXE_GUID
|
||||
if self.AprioriType == "PEI":
|
||||
AprioriFileGuid = PEI_GUID
|
||||
|
|
|
@ -19,7 +19,7 @@ from GenFdsGlobalVariable import GenFdsGlobalVariable
|
|||
from CommonDataClass.FdfClass import CapsuleClassObject
|
||||
import Common.LongFilePathOs as os
|
||||
import subprocess
|
||||
import StringIO
|
||||
from io import BytesIO
|
||||
from Common.Misc import SaveFileOnChange
|
||||
from GenFds import GenFds
|
||||
from Common.Misc import PackRegistryFormatGuid
|
||||
|
@ -66,7 +66,7 @@ class Capsule (CapsuleClassObject) :
|
|||
# UINT32 CapsuleImageSize;
|
||||
# } EFI_CAPSULE_HEADER;
|
||||
#
|
||||
Header = StringIO.StringIO()
|
||||
Header = BytesIO()
|
||||
#
|
||||
# Use FMP capsule GUID: 6DCBD5ED-E82D-4C44-BDA1-7194199AD92A
|
||||
#
|
||||
|
@ -97,7 +97,7 @@ class Capsule (CapsuleClassObject) :
|
|||
# // UINT64 ItemOffsetList[];
|
||||
# } EFI_FIRMWARE_MANAGEMENT_CAPSULE_HEADER;
|
||||
#
|
||||
FwMgrHdr = StringIO.StringIO()
|
||||
FwMgrHdr = BytesIO()
|
||||
if 'CAPSULE_HEADER_INIT_VERSION' in self.TokensDict:
|
||||
FwMgrHdr.write(pack('=I', int(self.TokensDict['CAPSULE_HEADER_INIT_VERSION'], 16)))
|
||||
else:
|
||||
|
@ -132,7 +132,7 @@ class Capsule (CapsuleClassObject) :
|
|||
#
|
||||
|
||||
PreSize = FwMgrHdrSize
|
||||
Content = StringIO.StringIO()
|
||||
Content = BytesIO()
|
||||
for driver in self.CapsuleDataList:
|
||||
FileName = driver.GenCapsuleSubItem()
|
||||
FwMgrHdr.write(pack('=Q', PreSize))
|
||||
|
@ -247,7 +247,7 @@ class Capsule (CapsuleClassObject) :
|
|||
def GenCapInf(self):
|
||||
self.CapInfFileName = os.path.join(GenFdsGlobalVariable.FvDir,
|
||||
self.UiCapsuleName + "_Cap" + '.inf')
|
||||
CapInfFile = StringIO.StringIO() #open (self.CapInfFileName , 'w+')
|
||||
CapInfFile = BytesIO() #open (self.CapInfFileName , 'w+')
|
||||
|
||||
CapInfFile.writelines("[options]" + T_CHAR_LF)
|
||||
|
||||
|
|
|
@ -17,7 +17,7 @@
|
|||
#
|
||||
import Ffs
|
||||
from GenFdsGlobalVariable import GenFdsGlobalVariable
|
||||
import StringIO
|
||||
from io import BytesIO
|
||||
from struct import pack
|
||||
import os
|
||||
from Common.Misc import SaveFileOnChange
|
||||
|
@ -82,7 +82,7 @@ class CapsuleFv (CapsuleData):
|
|||
if self.FvName.find('.fv') == -1:
|
||||
if self.FvName.upper() in GenFdsGlobalVariable.FdfParser.Profile.FvDict:
|
||||
FvObj = GenFdsGlobalVariable.FdfParser.Profile.FvDict[self.FvName.upper()]
|
||||
FdBuffer = StringIO.StringIO('')
|
||||
FdBuffer = BytesIO('')
|
||||
FvObj.CapsuleName = self.CapsuleName
|
||||
FvFile = FvObj.AddToBuffer(FdBuffer)
|
||||
FvObj.CapsuleName = None
|
||||
|
|
|
@ -18,7 +18,7 @@
|
|||
import Region
|
||||
import Fv
|
||||
import Common.LongFilePathOs as os
|
||||
import StringIO
|
||||
from io import BytesIO
|
||||
import sys
|
||||
from struct import *
|
||||
from GenFdsGlobalVariable import GenFdsGlobalVariable
|
||||
|
@ -75,7 +75,7 @@ class FD(FDClassObject):
|
|||
HasCapsuleRegion = True
|
||||
break
|
||||
if HasCapsuleRegion:
|
||||
TempFdBuffer = StringIO.StringIO('')
|
||||
TempFdBuffer = BytesIO('')
|
||||
PreviousRegionStart = -1
|
||||
PreviousRegionSize = 1
|
||||
|
||||
|
@ -104,7 +104,7 @@ class FD(FDClassObject):
|
|||
GenFdsGlobalVariable.VerboseLogger('Call each region\'s AddToBuffer function')
|
||||
RegionObj.AddToBuffer (TempFdBuffer, self.BaseAddress, self.BlockSizeList, self.ErasePolarity, GenFds.ImageBinDict, self.vtfRawDict, self.DefineVarDict)
|
||||
|
||||
FdBuffer = StringIO.StringIO('')
|
||||
FdBuffer = BytesIO('')
|
||||
PreviousRegionStart = -1
|
||||
PreviousRegionSize = 1
|
||||
for RegionObj in self.RegionList :
|
||||
|
|
|
@ -18,7 +18,7 @@
|
|||
import Ffs
|
||||
import Rule
|
||||
import Common.LongFilePathOs as os
|
||||
import StringIO
|
||||
from io import BytesIO
|
||||
import subprocess
|
||||
|
||||
from GenFdsGlobalVariable import GenFdsGlobalVariable
|
||||
|
@ -82,7 +82,7 @@ class FileStatement (FileStatementClassObject) :
|
|||
Dict.update(self.DefineVarDict)
|
||||
SectionAlignments = None
|
||||
if self.FvName is not None :
|
||||
Buffer = StringIO.StringIO('')
|
||||
Buffer = BytesIO('')
|
||||
if self.FvName.upper() not in GenFdsGlobalVariable.FdfParser.Profile.FvDict:
|
||||
EdkLogger.error("GenFds", GENFDS_ERROR, "FV (%s) is NOT described in FDF file!" % (self.FvName))
|
||||
Fv = GenFdsGlobalVariable.FdfParser.Profile.FvDict.get(self.FvName.upper())
|
||||
|
|
|
@ -18,7 +18,7 @@
|
|||
#
|
||||
import Rule
|
||||
import Common.LongFilePathOs as os
|
||||
import StringIO
|
||||
from io import BytesIO
|
||||
from struct import *
|
||||
from GenFdsGlobalVariable import GenFdsGlobalVariable
|
||||
import Ffs
|
||||
|
@ -1088,7 +1088,7 @@ class FfsInfStatement(FfsInfStatementClassObject):
|
|||
def __GenUniVfrOffsetFile(VfrUniOffsetList, UniVfrOffsetFileName):
|
||||
|
||||
# Use a instance of StringIO to cache data
|
||||
fStringIO = StringIO.StringIO('')
|
||||
fStringIO = BytesIO('')
|
||||
|
||||
for Item in VfrUniOffsetList:
|
||||
if (Item[0].find("Strings") != -1):
|
||||
|
|
|
@ -17,7 +17,7 @@
|
|||
#
|
||||
import Common.LongFilePathOs as os
|
||||
import subprocess
|
||||
import StringIO
|
||||
from io import BytesIO
|
||||
from struct import *
|
||||
|
||||
import Ffs
|
||||
|
@ -265,7 +265,7 @@ class FV (FvClassObject):
|
|||
#
|
||||
self.InfFileName = os.path.join(GenFdsGlobalVariable.FvDir,
|
||||
self.UiFvName + '.inf')
|
||||
self.FvInfFile = StringIO.StringIO()
|
||||
self.FvInfFile = BytesIO()
|
||||
|
||||
#
|
||||
# Add [Options]
|
||||
|
@ -407,7 +407,7 @@ class FV (FvClassObject):
|
|||
#
|
||||
if TotalSize > 0:
|
||||
FvExtHeaderFileName = os.path.join(GenFdsGlobalVariable.FvDir, self.UiFvName + '.ext')
|
||||
FvExtHeaderFile = StringIO.StringIO()
|
||||
FvExtHeaderFile = BytesIO()
|
||||
FvExtHeaderFile.write(Buffer)
|
||||
Changed = SaveFileOnChange(FvExtHeaderFileName, FvExtHeaderFile.getvalue(), True)
|
||||
FvExtHeaderFile.close()
|
||||
|
|
|
@ -16,7 +16,7 @@
|
|||
# Import Modules
|
||||
#
|
||||
import Section
|
||||
import StringIO
|
||||
from io import BytesIO
|
||||
from Ffs import Ffs
|
||||
import subprocess
|
||||
from GenFdsGlobalVariable import GenFdsGlobalVariable
|
||||
|
@ -98,7 +98,7 @@ class FvImageSection(FvImageSectionClassObject):
|
|||
# Generate Fv
|
||||
#
|
||||
if self.FvName is not None:
|
||||
Buffer = StringIO.StringIO('')
|
||||
Buffer = BytesIO('')
|
||||
Fv = GenFdsGlobalVariable.FdfParser.Profile.FvDict.get(self.FvName)
|
||||
if Fv is not None:
|
||||
self.Fv = Fv
|
||||
|
|
|
@ -27,7 +27,7 @@ from Workspace.WorkspaceDatabase import WorkspaceDatabase
|
|||
from Workspace.BuildClassObject import PcdClassObject
|
||||
import RuleComplexFile
|
||||
from EfiSection import EfiSection
|
||||
import StringIO
|
||||
from io import BytesIO
|
||||
import Common.TargetTxtClassObject as TargetTxtClassObject
|
||||
import Common.ToolDefClassObject as ToolDefClassObject
|
||||
from Common.DataType import *
|
||||
|
@ -542,13 +542,13 @@ class GenFds :
|
|||
if GenFds.OnlyGenerateThisFv is not None and GenFds.OnlyGenerateThisFv.upper() in GenFdsGlobalVariable.FdfParser.Profile.FvDict:
|
||||
FvObj = GenFdsGlobalVariable.FdfParser.Profile.FvDict[GenFds.OnlyGenerateThisFv.upper()]
|
||||
if FvObj is not None:
|
||||
Buffer = StringIO.StringIO()
|
||||
Buffer = BytesIO()
|
||||
FvObj.AddToBuffer(Buffer)
|
||||
Buffer.close()
|
||||
return
|
||||
elif GenFds.OnlyGenerateThisFv is None:
|
||||
for FvObj in GenFdsGlobalVariable.FdfParser.Profile.FvDict.values():
|
||||
Buffer = StringIO.StringIO('')
|
||||
Buffer = BytesIO('')
|
||||
FvObj.AddToBuffer(Buffer)
|
||||
Buffer.close()
|
||||
|
||||
|
@ -694,7 +694,7 @@ class GenFds :
|
|||
|
||||
def GenerateGuidXRefFile(BuildDb, ArchList, FdfParserObj):
|
||||
GuidXRefFileName = os.path.join(GenFdsGlobalVariable.FvDir, "Guid.xref")
|
||||
GuidXRefFile = StringIO.StringIO('')
|
||||
GuidXRefFile = BytesIO('')
|
||||
GuidDict = {}
|
||||
ModuleList = []
|
||||
FileGuidList = []
|
||||
|
|
|
@ -17,7 +17,6 @@
|
|||
#
|
||||
import Common.LongFilePathOs as os
|
||||
import subprocess
|
||||
import StringIO
|
||||
|
||||
import OptRomInfStatement
|
||||
from GenFdsGlobalVariable import GenFdsGlobalVariable
|
||||
|
@ -138,5 +137,3 @@ class OverrideAttribs:
|
|||
self.PciDeviceId = None
|
||||
self.PciRevision = None
|
||||
self.NeedCompress = None
|
||||
|
||||
|
|
@ -17,7 +17,7 @@
|
|||
#
|
||||
from struct import *
|
||||
from GenFdsGlobalVariable import GenFdsGlobalVariable
|
||||
import StringIO
|
||||
from io import BytesIO
|
||||
import string
|
||||
from CommonDataClass.FdfClass import RegionClassObject
|
||||
import Common.LongFilePathOs as os
|
||||
|
@ -127,7 +127,7 @@ class Region(RegionClassObject):
|
|||
if self.FvAddress % FvAlignValue != 0:
|
||||
EdkLogger.error("GenFds", GENFDS_ERROR,
|
||||
"FV (%s) is NOT %s Aligned!" % (FvObj.UiFvName, FvObj.FvAlignment))
|
||||
FvBuffer = StringIO.StringIO('')
|
||||
FvBuffer = BytesIO('')
|
||||
FvBaseAddress = '0x%X' % self.FvAddress
|
||||
BlockSize = None
|
||||
BlockNum = None
|
||||
|
@ -135,7 +135,8 @@ class Region(RegionClassObject):
|
|||
if Flag:
|
||||
continue
|
||||
|
||||
if FvBuffer.len > Size:
|
||||
FvBufferLen = len(FvBuffer.getvalue())
|
||||
if FvBufferLen > Size:
|
||||
FvBuffer.close()
|
||||
EdkLogger.error("GenFds", GENFDS_ERROR,
|
||||
"Size of FV (%s) is larger than Region Size 0x%X specified." % (RegionData, Size))
|
||||
|
@ -144,8 +145,8 @@ class Region(RegionClassObject):
|
|||
#
|
||||
Buffer.write(FvBuffer.getvalue())
|
||||
FvBuffer.close()
|
||||
FvOffset = FvOffset + FvBuffer.len
|
||||
Size = Size - FvBuffer.len
|
||||
FvOffset = FvOffset + FvBufferLen
|
||||
Size = Size - FvBufferLen
|
||||
continue
|
||||
else:
|
||||
EdkLogger.error("GenFds", GENFDS_ERROR, "FV (%s) is NOT described in FDF file!" % (RegionData))
|
||||
|
|
|
@ -17,7 +17,7 @@
|
|||
import Common.LongFilePathOs as os
|
||||
import sys
|
||||
import re
|
||||
import StringIO
|
||||
from io import BytesIO
|
||||
|
||||
from optparse import OptionParser
|
||||
from optparse import make_option
|
||||
|
@ -455,8 +455,8 @@ def GenerateVfrBinSec(ModuleName, DebugDir, OutputFile):
|
|||
except:
|
||||
EdkLogger.error("Trim", FILE_OPEN_FAILURE, "File open failed for %s" %OutputFile, None)
|
||||
|
||||
# Use a instance of StringIO to cache data
|
||||
fStringIO = StringIO.StringIO('')
|
||||
# Use a instance of BytesIO to cache data
|
||||
fStringIO = BytesIO('')
|
||||
|
||||
for Item in VfrUniOffsetList:
|
||||
if (Item[0].find("Strings") != -1):
|
||||
|
|
|
@ -28,7 +28,7 @@ import hashlib
|
|||
import subprocess
|
||||
import threading
|
||||
from datetime import datetime
|
||||
from StringIO import StringIO
|
||||
from io import BytesIO
|
||||
from Common import EdkLogger
|
||||
from Common.Misc import SaveFileOnChange
|
||||
from Common.Misc import GuidStructureByteArrayToGuidString
|
||||
|
@ -2169,7 +2169,7 @@ class BuildReport(object):
|
|||
def GenerateReport(self, BuildDuration, AutoGenTime, MakeTime, GenFdsTime):
|
||||
if self.ReportFile:
|
||||
try:
|
||||
File = StringIO('')
|
||||
File = BytesIO('')
|
||||
for (Wa, MaList) in self.ReportList:
|
||||
PlatformReport(Wa, MaList, self.ReportType).GenerateReport(File, BuildDuration, AutoGenTime, MakeTime, GenFdsTime, self.ReportType)
|
||||
Content = FileLinesSplit(File.getvalue(), gLineMaxLength)
|
||||
|
|
|
@ -19,7 +19,7 @@
|
|||
from __future__ import print_function
|
||||
import Common.LongFilePathOs as os
|
||||
import re
|
||||
import StringIO
|
||||
from io import BytesIO
|
||||
import sys
|
||||
import glob
|
||||
import time
|
||||
|
@ -1782,7 +1782,7 @@ class Build():
|
|||
if not Ma.IsLibrary:
|
||||
ModuleList[Ma.Guid.upper()] = Ma
|
||||
|
||||
MapBuffer = StringIO('')
|
||||
MapBuffer = BytesIO('')
|
||||
if self.LoadFixAddress != 0:
|
||||
#
|
||||
# Rebase module to the preferred memory address before GenFds
|
||||
|
@ -1940,7 +1940,7 @@ class Build():
|
|||
if not Ma.IsLibrary:
|
||||
ModuleList[Ma.Guid.upper()] = Ma
|
||||
|
||||
MapBuffer = StringIO('')
|
||||
MapBuffer = BytesIO('')
|
||||
if self.LoadFixAddress != 0:
|
||||
#
|
||||
# Rebase module to the preferred memory address before GenFds
|
||||
|
@ -2127,7 +2127,7 @@ class Build():
|
|||
#
|
||||
# Rebase module to the preferred memory address before GenFds
|
||||
#
|
||||
MapBuffer = StringIO('')
|
||||
MapBuffer = BytesIO('')
|
||||
if self.LoadFixAddress != 0:
|
||||
self._CollectModuleMapBuffer(MapBuffer, ModuleList)
|
||||
|
||||
|
|
Loading…
Reference in New Issue