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