From f215e02bf85f68d3a6106c2a1f4f7f063f819064 Mon Sep 17 00:00:00 2001 From: Daniel Baumann Date: Thu, 11 Apr 2024 10:17:27 +0200 Subject: Adding upstream version 7.0.14-dfsg. Signed-off-by: Daniel Baumann --- .../Source/Python/UPT/Object/Parser/InfMisc.py | 142 +++++++++++++++++++++ 1 file changed, 142 insertions(+) create mode 100755 src/VBox/Devices/EFI/Firmware/BaseTools/Source/Python/UPT/Object/Parser/InfMisc.py (limited to 'src/VBox/Devices/EFI/Firmware/BaseTools/Source/Python/UPT/Object/Parser/InfMisc.py') diff --git a/src/VBox/Devices/EFI/Firmware/BaseTools/Source/Python/UPT/Object/Parser/InfMisc.py b/src/VBox/Devices/EFI/Firmware/BaseTools/Source/Python/UPT/Object/Parser/InfMisc.py new file mode 100755 index 00000000..1354ab45 --- /dev/null +++ b/src/VBox/Devices/EFI/Firmware/BaseTools/Source/Python/UPT/Object/Parser/InfMisc.py @@ -0,0 +1,142 @@ +## @file +# This file is used to define class objects of INF file miscellaneous. +# Include BootMode/HOB/Event and others. It will consumed by InfParser. +# +# Copyright (c) 2011 - 2018, Intel Corporation. All rights reserved.
+# +# SPDX-License-Identifier: BSD-2-Clause-Patent + +''' +InfMisc +''' + +import Logger.Log as Logger +from Logger import ToolError + +from Library import DataType as DT +from Object.Parser.InfCommonObject import InfSectionCommonDef +from Library.Misc import Sdict + +## +# BootModeObject +# +class InfBootModeObject(): + def __init__(self): + self.SupportedBootModes = '' + self.HelpString = '' + self.Usage = '' + + def SetSupportedBootModes(self, SupportedBootModes): + self.SupportedBootModes = SupportedBootModes + def GetSupportedBootModes(self): + return self.SupportedBootModes + + def SetHelpString(self, HelpString): + self.HelpString = HelpString + def GetHelpString(self): + return self.HelpString + + def SetUsage(self, Usage): + self.Usage = Usage + def GetUsage(self): + return self.Usage +## +# EventObject +# +class InfEventObject(): + def __init__(self): + self.EventType = '' + self.HelpString = '' + self.Usage = '' + + def SetEventType(self, EventType): + self.EventType = EventType + + def GetEventType(self): + return self.EventType + + def SetHelpString(self, HelpString): + self.HelpString = HelpString + def GetHelpString(self): + return self.HelpString + + def SetUsage(self, Usage): + self.Usage = Usage + def GetUsage(self): + return self.Usage +## +# HobObject +# +class InfHobObject(): + def __init__(self): + self.HobType = '' + self.Usage = '' + self.SupArchList = [] + self.HelpString = '' + + def SetHobType(self, HobType): + self.HobType = HobType + + def GetHobType(self): + return self.HobType + + def SetUsage(self, Usage): + self.Usage = Usage + def GetUsage(self): + return self.Usage + + def SetSupArchList(self, ArchList): + self.SupArchList = ArchList + def GetSupArchList(self): + return self.SupArchList + + def SetHelpString(self, HelpString): + self.HelpString = HelpString + def GetHelpString(self): + return self.HelpString + +## +# InfSpecialCommentObject +# +class InfSpecialCommentObject(InfSectionCommonDef): + def __init__(self): + self.SpecialComments = Sdict() + InfSectionCommonDef.__init__(self) + + def SetSpecialComments(self, SepcialSectionList = None, Type = ''): + if Type == DT.TYPE_HOB_SECTION or \ + Type == DT.TYPE_EVENT_SECTION or \ + Type == DT.TYPE_BOOTMODE_SECTION: + for Item in SepcialSectionList: + if Type in self.SpecialComments: + ObjList = self.SpecialComments[Type] + ObjList.append(Item) + self.SpecialComments[Type] = ObjList + else: + ObjList = [] + ObjList.append(Item) + self.SpecialComments[Type] = ObjList + + return True + + def GetSpecialComments(self): + return self.SpecialComments + + + +## ErrorInInf +# +# An encapsulate of Error for INF parser. +# +def ErrorInInf(Message=None, ErrorCode=None, LineInfo=None, RaiseError=True): + if ErrorCode is None: + ErrorCode = ToolError.FORMAT_INVALID + if LineInfo is None: + LineInfo = ['', -1, ''] + Logger.Error("InfParser", + ErrorCode, + Message=Message, + File=LineInfo[0], + Line=LineInfo[1], + ExtraData=LineInfo[2], + RaiseError=RaiseError) -- cgit v1.2.3