1. Add a recovery mode for UPT failure 2. Add UNI file support 3. Add binary file header support 4. Add support for PCD error message 5. Add support for replace 6. Format generated INF/DEC files 7. Update dependency check 8. Other minor fixes Contributed-under: TianoCore Contribution Agreement 1.0 Signed-off-by: Hess Chen <hesheng.chen@intel.com> Reviewed-by: Gao, Liming <liming.gao@intel.com> git-svn-id: https://svn.code.sf.net/p/edk2/code/trunk/edk2@15896 6f19259b-4bc3-4df7-8a09-765794883524
199 lines
5.5 KiB
Python
199 lines
5.5 KiB
Python
## @file
|
|
# This file is used to define a class object to describe a package
|
|
#
|
|
# Copyright (c) 2011 - 2014, Intel Corporation. All rights reserved.<BR>
|
|
#
|
|
# This program and the accompanying materials are licensed and made available
|
|
# under the terms and conditions of the BSD License which accompanies this
|
|
# distribution. The full text of the license may be found at
|
|
# http://opensource.org/licenses/bsd-license.php
|
|
#
|
|
# THE PROGRAM IS DISTRIBUTED UNDER THE BSD LICENSE ON AN "AS IS" BASIS,
|
|
# WITHOUT WARRANTIES OR REPRESENTATIONS OF ANY KIND, EITHER EXPRESS OR IMPLIED.
|
|
|
|
'''
|
|
PackageObject
|
|
'''
|
|
|
|
##
|
|
# Import Modules
|
|
#
|
|
from Object.POM.CommonObject import CommonPropertiesObject
|
|
from Object.POM.CommonObject import IdentificationObject
|
|
from Object.POM.CommonObject import CommonHeaderObject
|
|
from Object.POM.CommonObject import BinaryHeaderObject
|
|
from Library.Misc import Sdict
|
|
|
|
## StandardIncludeFileObject
|
|
#
|
|
class StandardIncludeFileObject(CommonPropertiesObject):
|
|
def __init__(self):
|
|
CommonPropertiesObject.__init__(self)
|
|
self.IncludeFile = ''
|
|
|
|
def SetIncludeFile(self, IncludeFile):
|
|
self.IncludeFile = IncludeFile
|
|
|
|
def GetIncludeFile(self):
|
|
return self.IncludeFile
|
|
|
|
## PackageIncludeFileObject
|
|
#
|
|
class PackageIncludeFileObject(StandardIncludeFileObject):
|
|
pass
|
|
|
|
##
|
|
# PackageObject
|
|
#
|
|
class PackageObject(IdentificationObject, CommonHeaderObject, BinaryHeaderObject):
|
|
def __init__(self):
|
|
IdentificationObject.__init__(self)
|
|
CommonHeaderObject.__init__(self)
|
|
BinaryHeaderObject.__init__(self)
|
|
#
|
|
# LibraryClassObject
|
|
#
|
|
self.LibraryClassList = []
|
|
#
|
|
# FileObject
|
|
#
|
|
self.IncludePathList = []
|
|
#
|
|
# StandardIncludeFileObject
|
|
#
|
|
self.StandardIncludeFileList = []
|
|
#
|
|
# PackageIncludeFileObject
|
|
#
|
|
self.PackageIncludeFileList = []
|
|
#
|
|
# Include and Arch List, item is (IncludePath, SupArchList-List of Arch), used during install package
|
|
#
|
|
self.IncludeArchList = []
|
|
#
|
|
# ProtocolObject
|
|
#
|
|
self.ProtocolList = []
|
|
#
|
|
# PpiObject
|
|
#
|
|
self.PpiList = []
|
|
#
|
|
# GuidObject
|
|
#
|
|
self.GuidList = []
|
|
#
|
|
# (PcdObject, PcdErrorObject)
|
|
#
|
|
self.PcdList = []
|
|
#
|
|
# {(PcdTokenSpaceGuidCName, PcdErrroNumber): PcdErrorMessageList}
|
|
#
|
|
self.PcdErrorCommentDict = {}
|
|
#
|
|
# UserExtensionObject
|
|
#
|
|
self.UserExtensionList = []
|
|
#
|
|
# MiscFileObject
|
|
#
|
|
self.MiscFileList = []
|
|
self.ModuleDict = Sdict()
|
|
#
|
|
# ClonedRecordObject
|
|
#
|
|
self.ClonedFromList = []
|
|
#
|
|
# string object
|
|
#
|
|
self.ModuleFileList = []
|
|
|
|
self.PcdChecks = []
|
|
|
|
self.UNIFlag = False
|
|
|
|
def SetLibraryClassList(self, LibraryClassList):
|
|
self.LibraryClassList = LibraryClassList
|
|
|
|
def GetLibraryClassList(self):
|
|
return self.LibraryClassList
|
|
|
|
def SetIncludePathList(self, IncludePathList):
|
|
self.IncludePathList = IncludePathList
|
|
|
|
def GetIncludePathList(self):
|
|
return self.IncludePathList
|
|
|
|
def SetIncludeArchList(self, IncludeArchList):
|
|
self.IncludeArchList = IncludeArchList
|
|
|
|
def GetIncludeArchList(self):
|
|
return self.IncludeArchList
|
|
|
|
def SetStandardIncludeFileList(self, StandardIncludeFileList):
|
|
self.StandardIncludeFileList = StandardIncludeFileList
|
|
|
|
def GetStandardIncludeFileList(self):
|
|
return self.StandardIncludeFileList
|
|
|
|
def SetPackageIncludeFileList(self, PackageIncludeFileList):
|
|
self.PackageIncludeFileList = PackageIncludeFileList
|
|
|
|
def GetPackageIncludeFileList(self):
|
|
return self.PackageIncludeFileList
|
|
|
|
def SetProtocolList(self, ProtocolList):
|
|
self.ProtocolList = ProtocolList
|
|
|
|
def GetProtocolList(self):
|
|
return self.ProtocolList
|
|
|
|
def SetPpiList(self, PpiList):
|
|
self.PpiList = PpiList
|
|
|
|
def GetPpiList(self):
|
|
return self.PpiList
|
|
|
|
def SetGuidList(self, GuidList):
|
|
self.GuidList = GuidList
|
|
|
|
def GetGuidList(self):
|
|
return self.GuidList
|
|
|
|
def SetPcdList(self, PcdList):
|
|
self.PcdList = PcdList
|
|
|
|
def GetPcdList(self):
|
|
return self.PcdList
|
|
|
|
def SetUserExtensionList(self, UserExtensionList):
|
|
self.UserExtensionList = UserExtensionList
|
|
|
|
def GetUserExtensionList(self):
|
|
return self.UserExtensionList
|
|
|
|
def SetMiscFileList(self, MiscFileList):
|
|
self.MiscFileList = MiscFileList
|
|
|
|
def GetMiscFileList(self):
|
|
return self.MiscFileList
|
|
|
|
def SetModuleDict(self, ModuleDict):
|
|
self.ModuleDict = ModuleDict
|
|
|
|
def GetModuleDict(self):
|
|
return self.ModuleDict
|
|
|
|
def SetClonedFromList(self, ClonedFromList):
|
|
self.ClonedFromList = ClonedFromList
|
|
|
|
def GetClonedFromList(self):
|
|
return self.ClonedFromList
|
|
|
|
def SetModuleFileList(self, ModuleFileList):
|
|
self.ModuleFileList = ModuleFileList
|
|
|
|
def GetModuleFileList(self):
|
|
return self.ModuleFileList
|
|
|