mirror of https://github.com/acidanthera/audk.git
BaseTools/UPT: Porting UPT Tool from Python2 to Python3
Cc: Liming Gao <liming.gao@intel.com> Contributed-under: TianoCore Contribution Agreement 1.1 Signed-off-by: Yonghong Zhu <yonghong.zhu@intel.com> Reviewed-by: Liming Gao <liming.gao@intel.com>
This commit is contained in:
parent
9d7e1e56a7
commit
1b2e077260
|
@ -66,7 +66,7 @@ class RecoverMgr:
|
||||||
arc = self._tryhook(path)
|
arc = self._tryhook(path)
|
||||||
if arc and os.path.isfile(path):
|
if arc and os.path.isfile(path):
|
||||||
self._createzip()
|
self._createzip()
|
||||||
self.zip.write(path, arc.encode('utf_8'))
|
self.zip.write(path, arc)
|
||||||
sta = os.stat(path)
|
sta = os.stat(path)
|
||||||
oldmode = stat.S_IMODE(sta.st_mode)
|
oldmode = stat.S_IMODE(sta.st_mode)
|
||||||
self.rlist.append(_PathInfo(_CHMOD, path, oldmode))
|
self.rlist.append(_PathInfo(_CHMOD, path, oldmode))
|
||||||
|
|
|
@ -44,7 +44,7 @@ class IpiDatabase(object):
|
||||||
Dir = os.path.dirname(DbPath)
|
Dir = os.path.dirname(DbPath)
|
||||||
if not os.path.isdir(Dir):
|
if not os.path.isdir(Dir):
|
||||||
os.mkdir(Dir)
|
os.mkdir(Dir)
|
||||||
self.Conn = sqlite3.connect(unicode(DbPath), isolation_level='DEFERRED')
|
self.Conn = sqlite3.connect(DbPath, isolation_level='DEFERRED')
|
||||||
self.Conn.execute("PRAGMA page_size=4096")
|
self.Conn.execute("PRAGMA page_size=4096")
|
||||||
self.Conn.execute("PRAGMA synchronous=OFF")
|
self.Conn.execute("PRAGMA synchronous=OFF")
|
||||||
self.Cur = self.Conn.cursor()
|
self.Cur = self.Conn.cursor()
|
||||||
|
|
|
@ -585,17 +585,17 @@ def GenPackageUNIEncodeFile(PackageObject, UniFileHeader = '', Encoding=TAB_ENCO
|
||||||
|
|
||||||
ContainerFile = GetUniFileName(os.path.dirname(PackageObject.GetFullPath()), PackageObject.GetBaseName())
|
ContainerFile = GetUniFileName(os.path.dirname(PackageObject.GetFullPath()), PackageObject.GetBaseName())
|
||||||
|
|
||||||
Content = UniFileHeader + '\r\n'
|
Content = UniFileHeader + '\n'
|
||||||
Content += '\r\n'
|
Content += '\n'
|
||||||
|
|
||||||
Content += FormatUniEntry('#string ' + TAB_DEC_PACKAGE_ABSTRACT, PackageObject.GetAbstract(), ContainerFile) + '\r\n'
|
Content += FormatUniEntry('#string ' + TAB_DEC_PACKAGE_ABSTRACT, PackageObject.GetAbstract(), ContainerFile) + '\n'
|
||||||
|
|
||||||
Content += FormatUniEntry('#string ' + TAB_DEC_PACKAGE_DESCRIPTION, PackageObject.GetDescription(), ContainerFile) \
|
Content += FormatUniEntry('#string ' + TAB_DEC_PACKAGE_DESCRIPTION, PackageObject.GetDescription(), ContainerFile) \
|
||||||
+ '\r\n'
|
+ '\n'
|
||||||
|
|
||||||
Content += FormatUniEntry('#string ' + TAB_DEC_BINARY_ABSTRACT, BinaryAbstract, ContainerFile) + '\r\n'
|
Content += FormatUniEntry('#string ' + TAB_DEC_BINARY_ABSTRACT, BinaryAbstract, ContainerFile) + '\n'
|
||||||
|
|
||||||
Content += FormatUniEntry('#string ' + TAB_DEC_BINARY_DESCRIPTION, BinaryDescription, ContainerFile) + '\r\n'
|
Content += FormatUniEntry('#string ' + TAB_DEC_BINARY_DESCRIPTION, BinaryDescription, ContainerFile) + '\n'
|
||||||
|
|
||||||
PromptGenList = []
|
PromptGenList = []
|
||||||
HelpTextGenList = []
|
HelpTextGenList = []
|
||||||
|
@ -612,7 +612,7 @@ def GenPackageUNIEncodeFile(PackageObject, UniFileHeader = '', Encoding=TAB_ENCO
|
||||||
if (PcdPromptStrName, Lang) not in PromptGenList:
|
if (PcdPromptStrName, Lang) not in PromptGenList:
|
||||||
TokenValueList.append((Lang, PromptStr))
|
TokenValueList.append((Lang, PromptStr))
|
||||||
PromptGenList.append((PcdPromptStrName, Lang))
|
PromptGenList.append((PcdPromptStrName, Lang))
|
||||||
PromptString = FormatUniEntry(PcdPromptStrName, TokenValueList, ContainerFile) + '\r\n'
|
PromptString = FormatUniEntry(PcdPromptStrName, TokenValueList, ContainerFile) + '\n'
|
||||||
if PromptString not in Content:
|
if PromptString not in Content:
|
||||||
Content += PromptString
|
Content += PromptString
|
||||||
|
|
||||||
|
@ -628,7 +628,7 @@ def GenPackageUNIEncodeFile(PackageObject, UniFileHeader = '', Encoding=TAB_ENCO
|
||||||
if (PcdHelpStrName, Lang) not in HelpTextGenList:
|
if (PcdHelpStrName, Lang) not in HelpTextGenList:
|
||||||
TokenValueList.append((Lang, HelpStr))
|
TokenValueList.append((Lang, HelpStr))
|
||||||
HelpTextGenList.append((PcdHelpStrName, Lang))
|
HelpTextGenList.append((PcdHelpStrName, Lang))
|
||||||
HelpTextString = FormatUniEntry(PcdHelpStrName, TokenValueList, ContainerFile) + '\r\n'
|
HelpTextString = FormatUniEntry(PcdHelpStrName, TokenValueList, ContainerFile) + '\n'
|
||||||
if HelpTextString not in Content:
|
if HelpTextString not in Content:
|
||||||
Content += HelpTextString
|
Content += HelpTextString
|
||||||
|
|
||||||
|
@ -639,7 +639,7 @@ def GenPackageUNIEncodeFile(PackageObject, UniFileHeader = '', Encoding=TAB_ENCO
|
||||||
PcdErrStrName = '#string ' + TAB_STR_TOKENCNAME + TAB_UNDERLINE_SPLIT + Pcd.GetTokenSpaceGuidCName() \
|
PcdErrStrName = '#string ' + TAB_STR_TOKENCNAME + TAB_UNDERLINE_SPLIT + Pcd.GetTokenSpaceGuidCName() \
|
||||||
+ TAB_UNDERLINE_SPLIT + TAB_STR_TOKENERR \
|
+ TAB_UNDERLINE_SPLIT + TAB_STR_TOKENERR \
|
||||||
+ TAB_UNDERLINE_SPLIT + ErrorNo[2:]
|
+ TAB_UNDERLINE_SPLIT + ErrorNo[2:]
|
||||||
PcdErrString = FormatUniEntry(PcdErrStrName, PcdError.GetErrorMessageList(), ContainerFile) + '\r\n'
|
PcdErrString = FormatUniEntry(PcdErrStrName, PcdError.GetErrorMessageList(), ContainerFile) + '\n'
|
||||||
if PcdErrString not in Content:
|
if PcdErrString not in Content:
|
||||||
Content += PcdErrString
|
Content += PcdErrString
|
||||||
|
|
||||||
|
|
|
@ -234,22 +234,22 @@ def GenModuleUNIEncodeFile(ModuleObject, UniFileHeader='', Encoding=DT.TAB_ENCOD
|
||||||
if not os.path.exists(os.path.dirname(ModuleObject.GetFullPath())):
|
if not os.path.exists(os.path.dirname(ModuleObject.GetFullPath())):
|
||||||
os.makedirs(os.path.dirname(ModuleObject.GetFullPath()))
|
os.makedirs(os.path.dirname(ModuleObject.GetFullPath()))
|
||||||
|
|
||||||
Content = UniFileHeader + '\r\n'
|
Content = UniFileHeader + '\n'
|
||||||
Content += '\r\n'
|
Content += '\n'
|
||||||
|
|
||||||
Content += FormatUniEntry('#string ' + DT.TAB_INF_ABSTRACT, ModuleObject.GetAbstract(), ContainerFile) + '\r\n'
|
Content += FormatUniEntry('#string ' + DT.TAB_INF_ABSTRACT, ModuleObject.GetAbstract(), ContainerFile) + '\n'
|
||||||
|
|
||||||
Content += FormatUniEntry('#string ' + DT.TAB_INF_DESCRIPTION, ModuleObject.GetDescription(), ContainerFile) \
|
Content += FormatUniEntry('#string ' + DT.TAB_INF_DESCRIPTION, ModuleObject.GetDescription(), ContainerFile) \
|
||||||
+ '\r\n'
|
+ '\n'
|
||||||
|
|
||||||
BinaryAbstractString = FormatUniEntry('#string ' + DT.TAB_INF_BINARY_ABSTRACT, BinaryAbstract, ContainerFile)
|
BinaryAbstractString = FormatUniEntry('#string ' + DT.TAB_INF_BINARY_ABSTRACT, BinaryAbstract, ContainerFile)
|
||||||
if BinaryAbstractString:
|
if BinaryAbstractString:
|
||||||
Content += BinaryAbstractString + '\r\n'
|
Content += BinaryAbstractString + '\n'
|
||||||
|
|
||||||
BinaryDescriptionString = FormatUniEntry('#string ' + DT.TAB_INF_BINARY_DESCRIPTION, BinaryDescription, \
|
BinaryDescriptionString = FormatUniEntry('#string ' + DT.TAB_INF_BINARY_DESCRIPTION, BinaryDescription, \
|
||||||
ContainerFile)
|
ContainerFile)
|
||||||
if BinaryDescriptionString:
|
if BinaryDescriptionString:
|
||||||
Content += BinaryDescriptionString + '\r\n'
|
Content += BinaryDescriptionString + '\n'
|
||||||
|
|
||||||
if not os.path.exists(ContainerFile):
|
if not os.path.exists(ContainerFile):
|
||||||
File = codecs.open(ContainerFile, 'wb', Encoding)
|
File = codecs.open(ContainerFile, 'wb', Encoding)
|
||||||
|
@ -274,7 +274,7 @@ def GenDefines(ModuleObject):
|
||||||
if not DefinesDict:
|
if not DefinesDict:
|
||||||
continue
|
continue
|
||||||
for Statement in DefinesDict:
|
for Statement in DefinesDict:
|
||||||
if Statement.split(DT.TAB_EQUAL_SPLIT) > 1:
|
if len(Statement.split(DT.TAB_EQUAL_SPLIT)) > 1:
|
||||||
Statement = (u'%s ' % Statement.split(DT.TAB_EQUAL_SPLIT, 1)[0]).ljust(LeftOffset) \
|
Statement = (u'%s ' % Statement.split(DT.TAB_EQUAL_SPLIT, 1)[0]).ljust(LeftOffset) \
|
||||||
+ u'= %s' % Statement.split(DT.TAB_EQUAL_SPLIT, 1)[1].lstrip()
|
+ u'= %s' % Statement.split(DT.TAB_EQUAL_SPLIT, 1)[1].lstrip()
|
||||||
SortedArch = DT.TAB_ARCH_COMMON
|
SortedArch = DT.TAB_ARCH_COMMON
|
||||||
|
@ -409,7 +409,7 @@ def GenLibraryClasses(ModuleObject):
|
||||||
Statement += '|' + FFE
|
Statement += '|' + FFE
|
||||||
ModuleList = LibraryClass.GetSupModuleList()
|
ModuleList = LibraryClass.GetSupModuleList()
|
||||||
ArchList = LibraryClass.GetSupArchList()
|
ArchList = LibraryClass.GetSupArchList()
|
||||||
for Index in xrange(0, len(ArchList)):
|
for Index in range(0, len(ArchList)):
|
||||||
ArchList[Index] = ConvertArchForInstall(ArchList[Index])
|
ArchList[Index] = ConvertArchForInstall(ArchList[Index])
|
||||||
ArchList.sort()
|
ArchList.sort()
|
||||||
SortedArch = ' '.join(ArchList)
|
SortedArch = ' '.join(ArchList)
|
||||||
|
@ -572,7 +572,7 @@ def GenUserExtensions(ModuleObject):
|
||||||
# if not Statement:
|
# if not Statement:
|
||||||
# continue
|
# continue
|
||||||
ArchList = UserExtension.GetSupArchList()
|
ArchList = UserExtension.GetSupArchList()
|
||||||
for Index in xrange(0, len(ArchList)):
|
for Index in range(0, len(ArchList)):
|
||||||
ArchList[Index] = ConvertArchForInstall(ArchList[Index])
|
ArchList[Index] = ConvertArchForInstall(ArchList[Index])
|
||||||
ArchList.sort()
|
ArchList.sort()
|
||||||
KeyList = []
|
KeyList = []
|
||||||
|
|
|
@ -124,50 +124,46 @@ def GenHeaderCommentSection(Abstract, Description, Copyright, License, IsBinaryH
|
||||||
#
|
#
|
||||||
# Convert special character to (c), (r) and (tm).
|
# Convert special character to (c), (r) and (tm).
|
||||||
#
|
#
|
||||||
if isinstance(Abstract, unicode):
|
|
||||||
Abstract = ConvertSpecialUnicodes(Abstract)
|
|
||||||
if isinstance(Description, unicode):
|
|
||||||
Description = ConvertSpecialUnicodes(Description)
|
|
||||||
if IsBinaryHeader:
|
if IsBinaryHeader:
|
||||||
Content += CommChar * 2 + TAB_SPACE_SPLIT + TAB_BINARY_HEADER_COMMENT + '\r\n'
|
Content += CommChar * 2 + TAB_SPACE_SPLIT + TAB_BINARY_HEADER_COMMENT + '\n'
|
||||||
elif CommChar == TAB_COMMENT_EDK1_SPLIT:
|
elif CommChar == TAB_COMMENT_EDK1_SPLIT:
|
||||||
Content += CommChar + TAB_SPACE_SPLIT + TAB_COMMENT_EDK1_START + TAB_STAR + TAB_SPACE_SPLIT +\
|
Content += CommChar + TAB_SPACE_SPLIT + TAB_COMMENT_EDK1_START + TAB_STAR + TAB_SPACE_SPLIT +\
|
||||||
TAB_HEADER_COMMENT + '\r\n'
|
TAB_HEADER_COMMENT + '\n'
|
||||||
else:
|
else:
|
||||||
Content += CommChar * 2 + TAB_SPACE_SPLIT + TAB_HEADER_COMMENT + '\r\n'
|
Content += CommChar * 2 + TAB_SPACE_SPLIT + TAB_HEADER_COMMENT + '\n'
|
||||||
if Abstract:
|
if Abstract:
|
||||||
Abstract = Abstract.rstrip('\r\n')
|
Abstract = Abstract.rstrip('\n')
|
||||||
Content += CommChar + TAB_SPACE_SPLIT + ('\r\n' + CommChar + TAB_SPACE_SPLIT).join(GetSplitValueList\
|
Content += CommChar + TAB_SPACE_SPLIT + ('\n' + CommChar + TAB_SPACE_SPLIT).join(GetSplitValueList\
|
||||||
(Abstract, '\n'))
|
(Abstract, '\n'))
|
||||||
Content += '\r\n' + CommChar + '\r\n'
|
Content += '\n' + CommChar + '\n'
|
||||||
else:
|
else:
|
||||||
Content += CommChar + '\r\n'
|
Content += CommChar + '\n'
|
||||||
|
|
||||||
if Description:
|
if Description:
|
||||||
Description = Description.rstrip('\r\n')
|
Description = Description.rstrip('\n')
|
||||||
Content += CommChar + TAB_SPACE_SPLIT + ('\r\n' + CommChar + TAB_SPACE_SPLIT).join(GetSplitValueList\
|
Content += CommChar + TAB_SPACE_SPLIT + ('\n' + CommChar + TAB_SPACE_SPLIT).join(GetSplitValueList\
|
||||||
(Description, '\n'))
|
(Description, '\n'))
|
||||||
Content += '\r\n' + CommChar + '\r\n'
|
Content += '\n' + CommChar + '\n'
|
||||||
|
|
||||||
#
|
#
|
||||||
# There is no '#\n' line to separate multiple copyright lines in code base
|
# There is no '#\n' line to separate multiple copyright lines in code base
|
||||||
#
|
#
|
||||||
if Copyright:
|
if Copyright:
|
||||||
Copyright = Copyright.rstrip('\r\n')
|
Copyright = Copyright.rstrip('\n')
|
||||||
Content += CommChar + TAB_SPACE_SPLIT + ('\r\n' + CommChar + TAB_SPACE_SPLIT).join\
|
Content += CommChar + TAB_SPACE_SPLIT + ('\n' + CommChar + TAB_SPACE_SPLIT).join\
|
||||||
(GetSplitValueList(Copyright, '\n'))
|
(GetSplitValueList(Copyright, '\n'))
|
||||||
Content += '\r\n' + CommChar + '\r\n'
|
Content += '\n' + CommChar + '\n'
|
||||||
|
|
||||||
if License:
|
if License:
|
||||||
License = License.rstrip('\r\n')
|
License = License.rstrip('\n')
|
||||||
Content += CommChar + TAB_SPACE_SPLIT + ('\r\n' + CommChar + TAB_SPACE_SPLIT).join(GetSplitValueList\
|
Content += CommChar + TAB_SPACE_SPLIT + ('\n' + CommChar + TAB_SPACE_SPLIT).join(GetSplitValueList\
|
||||||
(License, '\n'))
|
(License, '\n'))
|
||||||
Content += '\r\n' + CommChar + '\r\n'
|
Content += '\n' + CommChar + '\n'
|
||||||
|
|
||||||
if CommChar == TAB_COMMENT_EDK1_SPLIT:
|
if CommChar == TAB_COMMENT_EDK1_SPLIT:
|
||||||
Content += CommChar + TAB_SPACE_SPLIT + TAB_STAR + TAB_COMMENT_EDK1_END + '\r\n'
|
Content += CommChar + TAB_SPACE_SPLIT + TAB_STAR + TAB_COMMENT_EDK1_END + '\n'
|
||||||
else:
|
else:
|
||||||
Content += CommChar * 2 + '\r\n'
|
Content += CommChar * 2 + '\n'
|
||||||
|
|
||||||
return Content
|
return Content
|
||||||
|
|
||||||
|
|
|
@ -74,7 +74,7 @@ def ParseHeaderCommentSection(CommentList, FileName = None, IsBinaryHeader = Fal
|
||||||
# first find the last copyright line
|
# first find the last copyright line
|
||||||
#
|
#
|
||||||
Last = 0
|
Last = 0
|
||||||
for Index in xrange(len(CommentList)-1, 0, -1):
|
for Index in range(len(CommentList)-1, 0, -1):
|
||||||
Line = CommentList[Index][0]
|
Line = CommentList[Index][0]
|
||||||
if _IsCopyrightLine(Line):
|
if _IsCopyrightLine(Line):
|
||||||
Last = Index
|
Last = Index
|
||||||
|
@ -206,17 +206,14 @@ def ParsePcdErrorCode (Value = None, ContainerFile = None, LineNum = None):
|
||||||
Base = 16
|
Base = 16
|
||||||
else:
|
else:
|
||||||
Base = 10
|
Base = 10
|
||||||
ErrorCode = long(Value, Base)
|
ErrorCode = int(Value, Base)
|
||||||
if ErrorCode > PCD_ERR_CODE_MAX_SIZE or ErrorCode < 0:
|
if ErrorCode > PCD_ERR_CODE_MAX_SIZE or ErrorCode < 0:
|
||||||
Logger.Error('Parser',
|
Logger.Error('Parser',
|
||||||
FORMAT_NOT_SUPPORTED,
|
FORMAT_NOT_SUPPORTED,
|
||||||
"The format %s of ErrorCode is not valid, should be UNIT32 type or long type" % Value,
|
"The format %s of ErrorCode is not valid, should be UNIT32 type or long type" % Value,
|
||||||
File = ContainerFile,
|
File = ContainerFile,
|
||||||
Line = LineNum)
|
Line = LineNum)
|
||||||
#
|
return hex(ErrorCode)
|
||||||
# To delete the tailing 'L'
|
|
||||||
#
|
|
||||||
return hex(ErrorCode)[:-1]
|
|
||||||
except ValueError as XStr:
|
except ValueError as XStr:
|
||||||
if XStr:
|
if XStr:
|
||||||
pass
|
pass
|
||||||
|
|
|
@ -14,7 +14,6 @@
|
||||||
'''
|
'''
|
||||||
ExpressionValidate
|
ExpressionValidate
|
||||||
'''
|
'''
|
||||||
from __future__ import print_function
|
|
||||||
|
|
||||||
##
|
##
|
||||||
# Import Modules
|
# Import Modules
|
||||||
|
|
|
@ -32,7 +32,7 @@ from os import linesep
|
||||||
from os import walk
|
from os import walk
|
||||||
from os import environ
|
from os import environ
|
||||||
import re
|
import re
|
||||||
from UserDict import IterableUserDict
|
from collections import UserDict as IterableUserDict
|
||||||
|
|
||||||
import Logger.Log as Logger
|
import Logger.Log as Logger
|
||||||
from Logger import StringTable as ST
|
from Logger import StringTable as ST
|
||||||
|
@ -160,19 +160,23 @@ def RemoveDirectory(Directory, Recursively=False):
|
||||||
# or not
|
# or not
|
||||||
#
|
#
|
||||||
def SaveFileOnChange(File, Content, IsBinaryFile=True):
|
def SaveFileOnChange(File, Content, IsBinaryFile=True):
|
||||||
if not IsBinaryFile:
|
|
||||||
Content = Content.replace("\n", linesep)
|
|
||||||
|
|
||||||
if os.path.exists(File):
|
if os.path.exists(File):
|
||||||
try:
|
try:
|
||||||
if Content == __FileHookOpen__(File, "rb").read():
|
if isinstance(Content, bytes):
|
||||||
return False
|
if Content == __FileHookOpen__(File, "rb").read():
|
||||||
|
return False
|
||||||
|
else:
|
||||||
|
if Content == __FileHookOpen__(File, "r").read():
|
||||||
|
return False
|
||||||
except BaseException:
|
except BaseException:
|
||||||
Logger.Error(None, ToolError.FILE_OPEN_FAILURE, ExtraData=File)
|
Logger.Error(None, ToolError.FILE_OPEN_FAILURE, ExtraData=File)
|
||||||
|
|
||||||
CreateDirectory(os.path.dirname(File))
|
CreateDirectory(os.path.dirname(File))
|
||||||
try:
|
try:
|
||||||
FileFd = __FileHookOpen__(File, "wb")
|
if isinstance(Content, bytes):
|
||||||
|
FileFd = __FileHookOpen__(File, "wb")
|
||||||
|
else:
|
||||||
|
FileFd = __FileHookOpen__(File, "w")
|
||||||
FileFd.write(Content)
|
FileFd.write(Content)
|
||||||
FileFd.close()
|
FileFd.close()
|
||||||
except BaseException:
|
except BaseException:
|
||||||
|
@ -437,7 +441,7 @@ class Sdict(IterableUserDict):
|
||||||
def CommonPath(PathList):
|
def CommonPath(PathList):
|
||||||
Path1 = min(PathList).split(os.path.sep)
|
Path1 = min(PathList).split(os.path.sep)
|
||||||
Path2 = max(PathList).split(os.path.sep)
|
Path2 = max(PathList).split(os.path.sep)
|
||||||
for Index in xrange(min(len(Path1), len(Path2))):
|
for Index in range(min(len(Path1), len(Path2))):
|
||||||
if Path1[Index] != Path2[Index]:
|
if Path1[Index] != Path2[Index]:
|
||||||
return os.path.sep.join(Path1[:Index])
|
return os.path.sep.join(Path1[:Index])
|
||||||
return os.path.sep.join(Path1)
|
return os.path.sep.join(Path1)
|
||||||
|
@ -890,7 +894,7 @@ def ProcessEdkComment(LineList):
|
||||||
if FindEdkBlockComment:
|
if FindEdkBlockComment:
|
||||||
if FirstPos == -1:
|
if FirstPos == -1:
|
||||||
FirstPos = StartPos
|
FirstPos = StartPos
|
||||||
for Index in xrange(StartPos, EndPos+1):
|
for Index in range(StartPos, EndPos+1):
|
||||||
LineList[Index] = ''
|
LineList[Index] = ''
|
||||||
FindEdkBlockComment = False
|
FindEdkBlockComment = False
|
||||||
elif Line.find("//") != -1 and not Line.startswith("#"):
|
elif Line.find("//") != -1 and not Line.startswith("#"):
|
||||||
|
@ -957,7 +961,7 @@ def GetLibInstanceInfo(String, WorkSpace, LineNo):
|
||||||
FileLinesList = []
|
FileLinesList = []
|
||||||
|
|
||||||
try:
|
try:
|
||||||
FInputfile = open(FullFileName, "rb", 0)
|
FInputfile = open(FullFileName, "r")
|
||||||
try:
|
try:
|
||||||
FileLinesList = FInputfile.readlines()
|
FileLinesList = FInputfile.readlines()
|
||||||
except BaseException:
|
except BaseException:
|
||||||
|
|
|
@ -727,7 +727,7 @@ def IsValidUserId(UserId):
|
||||||
#
|
#
|
||||||
def CheckUTF16FileHeader(File):
|
def CheckUTF16FileHeader(File):
|
||||||
FileIn = open(File, 'rb').read(2)
|
FileIn = open(File, 'rb').read(2)
|
||||||
if FileIn != '\xff\xfe':
|
if FileIn != b'\xff\xfe':
|
||||||
return False
|
return False
|
||||||
|
|
||||||
return True
|
return True
|
||||||
|
|
|
@ -16,7 +16,6 @@
|
||||||
'''
|
'''
|
||||||
Parsing
|
Parsing
|
||||||
'''
|
'''
|
||||||
from __future__ import absolute_import
|
|
||||||
|
|
||||||
##
|
##
|
||||||
# Import Modules
|
# Import Modules
|
||||||
|
@ -974,7 +973,7 @@ def GenSection(SectionName, SectionDict, SplitArch=True, NeedBlankLine=False):
|
||||||
ArchList = GetSplitValueList(SectionAttrs, DataType.TAB_COMMENT_SPLIT)
|
ArchList = GetSplitValueList(SectionAttrs, DataType.TAB_COMMENT_SPLIT)
|
||||||
else:
|
else:
|
||||||
ArchList = [SectionAttrs]
|
ArchList = [SectionAttrs]
|
||||||
for Index in xrange(0, len(ArchList)):
|
for Index in range(0, len(ArchList)):
|
||||||
ArchList[Index] = ConvertArchForInstall(ArchList[Index])
|
ArchList[Index] = ConvertArchForInstall(ArchList[Index])
|
||||||
Section = '[' + SectionName + '.' + (', ' + SectionName + '.').join(ArchList) + ']'
|
Section = '[' + SectionName + '.' + (', ' + SectionName + '.').join(ArchList) + ']'
|
||||||
else:
|
else:
|
||||||
|
|
|
@ -20,7 +20,6 @@ StringUtils
|
||||||
#
|
#
|
||||||
import re
|
import re
|
||||||
import os.path
|
import os.path
|
||||||
from string import strip
|
|
||||||
import Logger.Log as Logger
|
import Logger.Log as Logger
|
||||||
import Library.DataType as DataType
|
import Library.DataType as DataType
|
||||||
from Logger.ToolError import FORMAT_INVALID
|
from Logger.ToolError import FORMAT_INVALID
|
||||||
|
@ -44,7 +43,7 @@ gMACRO_PATTERN = re.compile("\$\(([_A-Z][_A-Z0-9]*)\)", re.UNICODE)
|
||||||
#
|
#
|
||||||
#
|
#
|
||||||
def GetSplitValueList(String, SplitTag=DataType.TAB_VALUE_SPLIT, MaxSplit= -1):
|
def GetSplitValueList(String, SplitTag=DataType.TAB_VALUE_SPLIT, MaxSplit= -1):
|
||||||
return map(lambda l: l.strip(), String.split(SplitTag, MaxSplit))
|
return list(map(lambda l: l.strip(), String.split(SplitTag, MaxSplit)))
|
||||||
|
|
||||||
## MergeArches
|
## MergeArches
|
||||||
#
|
#
|
||||||
|
@ -435,7 +434,7 @@ def GetSingleValueOfKeyFromLines(Lines, Dictionary, CommentCharacter, KeySplitCh
|
||||||
#
|
#
|
||||||
LineList[1] = CleanString(LineList[1], CommentCharacter)
|
LineList[1] = CleanString(LineList[1], CommentCharacter)
|
||||||
if ValueSplitFlag:
|
if ValueSplitFlag:
|
||||||
Value = map(strip, LineList[1].split(ValueSplitCharacter))
|
Value = map(lambda x: x.strip(), LineList[1].split(ValueSplitCharacter))
|
||||||
else:
|
else:
|
||||||
Value = CleanString(LineList[1], CommentCharacter).splitlines()
|
Value = CleanString(LineList[1], CommentCharacter).splitlines()
|
||||||
|
|
||||||
|
@ -502,7 +501,7 @@ def PreCheck(FileName, FileContent, SupSectionTag):
|
||||||
#
|
#
|
||||||
# Regenerate FileContent
|
# Regenerate FileContent
|
||||||
#
|
#
|
||||||
NewFileContent = NewFileContent + Line + '\r\n'
|
NewFileContent = NewFileContent + Line + '\n'
|
||||||
|
|
||||||
if IsFailed:
|
if IsFailed:
|
||||||
Logger.Error("Parser", FORMAT_INVALID, Line=LineNo, File=FileName, RaiseError=Logger.IS_RAISE_ERROR)
|
Logger.Error("Parser", FORMAT_INVALID, Line=LineNo, File=FileName, RaiseError=Logger.IS_RAISE_ERROR)
|
||||||
|
@ -938,14 +937,14 @@ def SplitPcdEntry(String):
|
||||||
def IsMatchArch(Arch1, Arch2):
|
def IsMatchArch(Arch1, Arch2):
|
||||||
if 'COMMON' in Arch1 or 'COMMON' in Arch2:
|
if 'COMMON' in Arch1 or 'COMMON' in Arch2:
|
||||||
return True
|
return True
|
||||||
if isinstance(Arch1, basestring) and isinstance(Arch2, basestring):
|
if isinstance(Arch1, str) and isinstance(Arch2, str):
|
||||||
if Arch1 == Arch2:
|
if Arch1 == Arch2:
|
||||||
return True
|
return True
|
||||||
|
|
||||||
if isinstance(Arch1, basestring) and isinstance(Arch2, list):
|
if isinstance(Arch1, str) and isinstance(Arch2, list):
|
||||||
return Arch1 in Arch2
|
return Arch1 in Arch2
|
||||||
|
|
||||||
if isinstance(Arch2, basestring) and isinstance(Arch1, list):
|
if isinstance(Arch2, str) and isinstance(Arch1, list):
|
||||||
return Arch2 in Arch1
|
return Arch2 in Arch1
|
||||||
|
|
||||||
if isinstance(Arch1, list) and isinstance(Arch2, list):
|
if isinstance(Arch1, list) and isinstance(Arch2, list):
|
||||||
|
|
|
@ -14,7 +14,6 @@
|
||||||
"""
|
"""
|
||||||
Collect all defined strings in multiple uni files
|
Collect all defined strings in multiple uni files
|
||||||
"""
|
"""
|
||||||
from __future__ import print_function
|
|
||||||
|
|
||||||
##
|
##
|
||||||
# Import Modules
|
# Import Modules
|
||||||
|
@ -247,9 +246,9 @@ def FormatUniEntry(StrTokenName, TokenValueList, ContainerFile):
|
||||||
for SubValue in ValueList:
|
for SubValue in ValueList:
|
||||||
if SubValue.strip():
|
if SubValue.strip():
|
||||||
SubValueContent += \
|
SubValueContent += \
|
||||||
' ' * (PreFormatLength + len('#language en-US ')) + '\"%s\\n\"' % SubValue.strip() + '\r\n'
|
' ' * (PreFormatLength + len('#language en-US ')) + '\"%s\\n\"' % SubValue.strip() + '\n'
|
||||||
SubValueContent = SubValueContent[(PreFormatLength + len('#language en-US ')):SubValueContent.rfind('\\n')] \
|
SubValueContent = SubValueContent[(PreFormatLength + len('#language en-US ')):SubValueContent.rfind('\\n')] \
|
||||||
+ '\"' + '\r\n'
|
+ '\"' + '\n'
|
||||||
SubContent += ' '*PreFormatLength + '#language %-5s ' % Lang + SubValueContent
|
SubContent += ' '*PreFormatLength + '#language %-5s ' % Lang + SubValueContent
|
||||||
if SubContent:
|
if SubContent:
|
||||||
SubContent = StrTokenName + ' '*(PreFormatLength - len(StrTokenName)) + SubContent[PreFormatLength:]
|
SubContent = StrTokenName + ' '*(PreFormatLength - len(StrTokenName)) + SubContent[PreFormatLength:]
|
||||||
|
@ -291,7 +290,7 @@ class StringDefClassObject(object):
|
||||||
def UpdateValue(self, Value = None):
|
def UpdateValue(self, Value = None):
|
||||||
if Value is not None:
|
if Value is not None:
|
||||||
if self.StringValue:
|
if self.StringValue:
|
||||||
self.StringValue = self.StringValue + '\r\n' + Value
|
self.StringValue = self.StringValue + '\n' + Value
|
||||||
else:
|
else:
|
||||||
self.StringValue = Value
|
self.StringValue = Value
|
||||||
self.StringValueByteList = UniToHexList(self.StringValue)
|
self.StringValueByteList = UniToHexList(self.StringValue)
|
||||||
|
@ -465,7 +464,7 @@ class UniFileClassObject(object):
|
||||||
if not Line.startswith(DT.TAB_COMMENT_EDK1_SPLIT) and HeaderStart and not HeaderEnd:
|
if not Line.startswith(DT.TAB_COMMENT_EDK1_SPLIT) and HeaderStart and not HeaderEnd:
|
||||||
HeaderEnd = True
|
HeaderEnd = True
|
||||||
if Line.startswith(DT.TAB_COMMENT_EDK1_SPLIT) and HeaderStart and not HeaderEnd and FirstGenHeader:
|
if Line.startswith(DT.TAB_COMMENT_EDK1_SPLIT) and HeaderStart and not HeaderEnd and FirstGenHeader:
|
||||||
self.UniFileHeader += Line + '\r\n'
|
self.UniFileHeader += Line + '\n'
|
||||||
continue
|
continue
|
||||||
|
|
||||||
#
|
#
|
||||||
|
@ -511,11 +510,11 @@ class UniFileClassObject(object):
|
||||||
if FileIn[LineCount].strip().startswith('#language'):
|
if FileIn[LineCount].strip().startswith('#language'):
|
||||||
Line = Line + FileIn[LineCount]
|
Line = Line + FileIn[LineCount]
|
||||||
FileIn[LineCount-1] = Line
|
FileIn[LineCount-1] = Line
|
||||||
FileIn[LineCount] = '\r\n'
|
FileIn[LineCount] = '\n'
|
||||||
LineCount -= 1
|
LineCount -= 1
|
||||||
for Index in xrange (LineCount + 1, len (FileIn) - 1):
|
for Index in range (LineCount + 1, len (FileIn) - 1):
|
||||||
if (Index == len(FileIn) -1):
|
if (Index == len(FileIn) -1):
|
||||||
FileIn[Index] = '\r\n'
|
FileIn[Index] = '\n'
|
||||||
else:
|
else:
|
||||||
FileIn[Index] = FileIn[Index + 1]
|
FileIn[Index] = FileIn[Index + 1]
|
||||||
continue
|
continue
|
||||||
|
@ -867,12 +866,12 @@ class UniFileClassObject(object):
|
||||||
Value = Value + Lines[IndexJ].strip()[1:-1]
|
Value = Value + Lines[IndexJ].strip()[1:-1]
|
||||||
CombineToken = False
|
CombineToken = False
|
||||||
else:
|
else:
|
||||||
Value = Value + Lines[IndexJ].strip()[1:-1] + '\r\n'
|
Value = Value + Lines[IndexJ].strip()[1:-1] + '\n'
|
||||||
else:
|
else:
|
||||||
IndexI = IndexJ
|
IndexI = IndexJ
|
||||||
break
|
break
|
||||||
if Value.endswith('\r\n'):
|
if Value.endswith('\n'):
|
||||||
Value = Value[: Value.rfind('\r\n')]
|
Value = Value[: Value.rfind('\n')]
|
||||||
Language = GetLanguageCode(Language, self.IsCompatibleMode, self.File)
|
Language = GetLanguageCode(Language, self.IsCompatibleMode, self.File)
|
||||||
self.AddStringToList(Name, Language, Value)
|
self.AddStringToList(Name, Language, Value)
|
||||||
continue
|
continue
|
||||||
|
|
|
@ -42,7 +42,7 @@ MSG_USAGE_STRING = _("\n"
|
||||||
MSG_VERSION_NUMBER = _("1.1")
|
MSG_VERSION_NUMBER = _("1.1")
|
||||||
MSG_VERSION = _("UEFI Packaging Tool (UEFIPT) - Revision " + \
|
MSG_VERSION = _("UEFI Packaging Tool (UEFIPT) - Revision " + \
|
||||||
MSG_VERSION_NUMBER)
|
MSG_VERSION_NUMBER)
|
||||||
MSG_COPYRIGHT = _("Copyright (c) 2011 - 2016 Intel Corporation All Rights Reserved.")
|
MSG_COPYRIGHT = _("Copyright (c) 2011 - 2018 Intel Corporation All Rights Reserved.")
|
||||||
MSG_VERSION_COPYRIGHT = _("\n %s\n %s" % (MSG_VERSION, MSG_COPYRIGHT))
|
MSG_VERSION_COPYRIGHT = _("\n %s\n %s" % (MSG_VERSION, MSG_COPYRIGHT))
|
||||||
MSG_USAGE = _("%s [options]\n%s" % ("UPT", MSG_VERSION_COPYRIGHT))
|
MSG_USAGE = _("%s [options]\n%s" % ("UPT", MSG_VERSION_COPYRIGHT))
|
||||||
MSG_DESCRIPTION = _("The UEFIPT is used to create, " + \
|
MSG_DESCRIPTION = _("The UEFIPT is used to create, " + \
|
||||||
|
|
|
@ -136,7 +136,7 @@ def Main(Options = None):
|
||||||
# strings in your desired encoding before passing them to
|
# strings in your desired encoding before passing them to
|
||||||
# write().
|
# write().
|
||||||
#
|
#
|
||||||
FromFile = os.path.normpath(FileObject.GetURI()).encode('utf_8')
|
FromFile = os.path.normpath(FileObject.GetURI())
|
||||||
FileFullPath = mws.join(WorkspaceDir, FromFile)
|
FileFullPath = mws.join(WorkspaceDir, FromFile)
|
||||||
if FileFullPath in RePkgDict:
|
if FileFullPath in RePkgDict:
|
||||||
(DpGuid, DpVersion, DpName, Repackage) = RePkgDict[FileFullPath]
|
(DpGuid, DpVersion, DpName, Repackage) = RePkgDict[FileFullPath]
|
||||||
|
|
|
@ -620,11 +620,11 @@ class _DecPcd(_DecBase):
|
||||||
if not IsValidToken(PCD_TOKEN_PATTERN, Token):
|
if not IsValidToken(PCD_TOKEN_PATTERN, Token):
|
||||||
self._LoggerError(ST.ERR_DECPARSE_PCD_TOKEN % Token)
|
self._LoggerError(ST.ERR_DECPARSE_PCD_TOKEN % Token)
|
||||||
elif not Token.startswith('0x') and not Token.startswith('0X'):
|
elif not Token.startswith('0x') and not Token.startswith('0X'):
|
||||||
if long(Token) > 4294967295:
|
if int(Token) > 4294967295:
|
||||||
self._LoggerError(ST.ERR_DECPARSE_PCD_TOKEN_INT % Token)
|
self._LoggerError(ST.ERR_DECPARSE_PCD_TOKEN_INT % Token)
|
||||||
Token = hex(long(Token))[:-1]
|
Token = hex(int(Token))
|
||||||
|
|
||||||
IntToken = long(Token, 0)
|
IntToken = int(Token, 0)
|
||||||
if (Guid, IntToken) in self.TokenMap:
|
if (Guid, IntToken) in self.TokenMap:
|
||||||
if self.TokenMap[Guid, IntToken] != CName:
|
if self.TokenMap[Guid, IntToken] != CName:
|
||||||
self._LoggerError(ST.ERR_DECPARSE_PCD_TOKEN_UNIQUE%(Token))
|
self._LoggerError(ST.ERR_DECPARSE_PCD_TOKEN_UNIQUE%(Token))
|
||||||
|
@ -752,7 +752,7 @@ class _DecUserExtension(_DecBase):
|
||||||
class Dec(_DecBase, _DecComments):
|
class Dec(_DecBase, _DecComments):
|
||||||
def __init__(self, DecFile, Parse = True):
|
def __init__(self, DecFile, Parse = True):
|
||||||
try:
|
try:
|
||||||
Content = ConvertSpecialChar(open(DecFile, 'rb').readlines())
|
Content = ConvertSpecialChar(open(DecFile, 'r').readlines())
|
||||||
except BaseException:
|
except BaseException:
|
||||||
Logger.Error(TOOL_NAME, FILE_OPEN_FAILURE, File=DecFile,
|
Logger.Error(TOOL_NAME, FILE_OPEN_FAILURE, File=DecFile,
|
||||||
ExtraData=ST.ERR_DECPARSE_FILEOPEN % DecFile)
|
ExtraData=ST.ERR_DECPARSE_FILEOPEN % DecFile)
|
||||||
|
|
|
@ -151,7 +151,7 @@ def IsValidNumValUint8(Token):
|
||||||
else:
|
else:
|
||||||
Base = 10
|
Base = 10
|
||||||
try:
|
try:
|
||||||
TokenValue = long(Token, Base)
|
TokenValue = int(Token, Base)
|
||||||
except BaseException:
|
except BaseException:
|
||||||
Valid, Cause = IsValidLogicalExpr(Token, True)
|
Valid, Cause = IsValidLogicalExpr(Token, True)
|
||||||
if Cause:
|
if Cause:
|
||||||
|
@ -262,7 +262,7 @@ def IsValidPcdDatum(Type, Value):
|
||||||
Value = Value.lstrip('0')
|
Value = Value.lstrip('0')
|
||||||
if not Value:
|
if not Value:
|
||||||
return True, ""
|
return True, ""
|
||||||
Value = long(Value, 0)
|
Value = int(Value, 0)
|
||||||
TypeLenMap = {
|
TypeLenMap = {
|
||||||
#
|
#
|
||||||
# 0x00 - 0xff
|
# 0x00 - 0xff
|
||||||
|
|
|
@ -205,7 +205,7 @@ def GetFileLineContent(FileName, WorkSpace, LineNo, OriginalString):
|
||||||
|
|
||||||
try:
|
try:
|
||||||
FullFileName = FullFileName.replace('\\', '/')
|
FullFileName = FullFileName.replace('\\', '/')
|
||||||
Inputfile = open(FullFileName, "rb", 0)
|
Inputfile = open(FullFileName, "r")
|
||||||
try:
|
try:
|
||||||
FileLinesList = Inputfile.readlines()
|
FileLinesList = Inputfile.readlines()
|
||||||
except BaseException:
|
except BaseException:
|
||||||
|
|
|
@ -51,7 +51,7 @@ def OpenInfFile(Filename):
|
||||||
FileLinesList = []
|
FileLinesList = []
|
||||||
|
|
||||||
try:
|
try:
|
||||||
FInputfile = open(Filename, "rb", 0)
|
FInputfile = open(Filename, "r")
|
||||||
try:
|
try:
|
||||||
FileLinesList = FInputfile.readlines()
|
FileLinesList = FInputfile.readlines()
|
||||||
except BaseException:
|
except BaseException:
|
||||||
|
@ -86,7 +86,7 @@ class InfParser(InfSectionParser):
|
||||||
#
|
#
|
||||||
# Call parent class construct function
|
# Call parent class construct function
|
||||||
#
|
#
|
||||||
super(InfParser, self).__init__()
|
super().__init__()
|
||||||
|
|
||||||
self.WorkspaceDir = WorkspaceDir
|
self.WorkspaceDir = WorkspaceDir
|
||||||
self.SupArchList = DT.ARCH_LIST
|
self.SupArchList = DT.ARCH_LIST
|
||||||
|
|
|
@ -206,7 +206,7 @@ class InfSectionParser(InfDefinSectionParser,
|
||||||
if FilePath in cls.MetaFiles:
|
if FilePath in cls.MetaFiles:
|
||||||
return cls.MetaFiles[FilePath]
|
return cls.MetaFiles[FilePath]
|
||||||
else:
|
else:
|
||||||
ParserObject = super(InfSectionParser, cls).__new__(cls)
|
ParserObject = super().__new__(cls)
|
||||||
cls.MetaFiles[FilePath] = ParserObject
|
cls.MetaFiles[FilePath] = ParserObject
|
||||||
return ParserObject
|
return ParserObject
|
||||||
|
|
||||||
|
@ -227,7 +227,7 @@ class InfSectionParser(InfDefinSectionParser,
|
||||||
self.InfBuildOptionSection = InfBuildOptionsObject()
|
self.InfBuildOptionSection = InfBuildOptionsObject()
|
||||||
self.InfLibraryClassSection = InfLibraryClassObject()
|
self.InfLibraryClassSection = InfLibraryClassObject()
|
||||||
self.InfPackageSection = InfPackageObject()
|
self.InfPackageSection = InfPackageObject()
|
||||||
self.InfPcdSection = InfPcdObject(self.MetaFiles.keys()[0])
|
self.InfPcdSection = InfPcdObject(list(self.MetaFiles.keys())[0])
|
||||||
self.InfSourcesSection = InfSourcesObject()
|
self.InfSourcesSection = InfSourcesObject()
|
||||||
self.InfUserExtensionSection = InfUserExtensionObject()
|
self.InfUserExtensionSection = InfUserExtensionObject()
|
||||||
self.InfProtocolSection = InfProtocolObject()
|
self.InfProtocolSection = InfProtocolObject()
|
||||||
|
@ -455,7 +455,7 @@ class InfSectionParser(InfDefinSectionParser,
|
||||||
Arch = Match.groups(1)[0].upper()
|
Arch = Match.groups(1)[0].upper()
|
||||||
ArchList.append(Arch)
|
ArchList.append(Arch)
|
||||||
CommentSoFar = ''
|
CommentSoFar = ''
|
||||||
for Index in xrange(1, len(List)):
|
for Index in range(1, len(List)):
|
||||||
Result = ParseComment(List[Index], DT.ALL_USAGE_TOKENS, TokenDict, [], False)
|
Result = ParseComment(List[Index], DT.ALL_USAGE_TOKENS, TokenDict, [], False)
|
||||||
Usage = Result[0]
|
Usage = Result[0]
|
||||||
Type = Result[1]
|
Type = Result[1]
|
||||||
|
|
|
@ -15,7 +15,6 @@
|
||||||
'''
|
'''
|
||||||
DecPomAlignment
|
DecPomAlignment
|
||||||
'''
|
'''
|
||||||
from __future__ import print_function
|
|
||||||
|
|
||||||
##
|
##
|
||||||
# Import Modules
|
# Import Modules
|
||||||
|
|
|
@ -21,10 +21,6 @@ UPT
|
||||||
#
|
#
|
||||||
import locale
|
import locale
|
||||||
import sys
|
import sys
|
||||||
encoding = locale.getdefaultlocale()[1]
|
|
||||||
if encoding:
|
|
||||||
reload(sys)
|
|
||||||
sys.setdefaultencoding(encoding)
|
|
||||||
from Core import FileHook
|
from Core import FileHook
|
||||||
import os.path
|
import os.path
|
||||||
from sys import platform
|
from sys import platform
|
||||||
|
|
|
@ -11,7 +11,6 @@
|
||||||
# THE PROGRAM IS DISTRIBUTED UNDER THE BSD LICENSE ON AN "AS IS" BASIS,
|
# THE PROGRAM IS DISTRIBUTED UNDER THE BSD LICENSE ON AN "AS IS" BASIS,
|
||||||
# WITHOUT WARRANTIES OR REPRESENTATIONS OF ANY KIND, EITHER EXPRESS OR IMPLIED.
|
# WITHOUT WARRANTIES OR REPRESENTATIONS OF ANY KIND, EITHER EXPRESS OR IMPLIED.
|
||||||
|
|
||||||
from __future__ import print_function
|
|
||||||
import os
|
import os
|
||||||
import unittest
|
import unittest
|
||||||
|
|
||||||
|
|
|
@ -11,7 +11,6 @@
|
||||||
# THE PROGRAM IS DISTRIBUTED UNDER THE BSD LICENSE ON AN "AS IS" BASIS,
|
# THE PROGRAM IS DISTRIBUTED UNDER THE BSD LICENSE ON AN "AS IS" BASIS,
|
||||||
# WITHOUT WARRANTIES OR REPRESENTATIONS OF ANY KIND, EITHER EXPRESS OR IMPLIED.
|
# WITHOUT WARRANTIES OR REPRESENTATIONS OF ANY KIND, EITHER EXPRESS OR IMPLIED.
|
||||||
|
|
||||||
from __future__ import print_function
|
|
||||||
import os
|
import os
|
||||||
#import Object.Parser.InfObject as InfObject
|
#import Object.Parser.InfObject as InfObject
|
||||||
from Object.Parser.InfCommonObject import CurrentLine
|
from Object.Parser.InfCommonObject import CurrentLine
|
||||||
|
|
|
@ -326,7 +326,7 @@ def IniToXml(IniFile):
|
||||||
CurrentKey = ''
|
CurrentKey = ''
|
||||||
PreMap = None
|
PreMap = None
|
||||||
Map = None
|
Map = None
|
||||||
FileContent = ConvertSpecialChar(open(IniFile, 'rb').readlines())
|
FileContent = ConvertSpecialChar(open(IniFile, 'r').readlines())
|
||||||
LastIndex = 0
|
LastIndex = 0
|
||||||
for Index in range(0, len(FileContent)):
|
for Index in range(0, len(FileContent)):
|
||||||
LastIndex = Index
|
LastIndex = Index
|
||||||
|
|
|
@ -53,7 +53,7 @@ def ConvertVariableName(VariableName):
|
||||||
if SecondByte != 0:
|
if SecondByte != 0:
|
||||||
return None
|
return None
|
||||||
|
|
||||||
if FirstByte not in xrange(0x20, 0x7F):
|
if FirstByte not in range(0x20, 0x7F):
|
||||||
return None
|
return None
|
||||||
TransferedStr += ('%c')%FirstByte
|
TransferedStr += ('%c')%FirstByte
|
||||||
Index = Index + 2
|
Index = Index + 2
|
||||||
|
|
Loading…
Reference in New Issue