def _GenLibraryClasses(self): Logger.Debug(2, "Generate %s ..." % DT.TAB_LIBRARY_CLASSES) if not GlobalData.gIS_BINARY_INF: # # Get all LibraryClasses # LibClassObj = self.Parser.InfLibraryClassSection.LibraryClasses Keys = LibClassObj.keys() for Key in Keys: LibraryClassData = LibClassObj[Key] for Item in LibraryClassData: LibraryClass = CommonObject.LibraryClassObject() LibraryClass.SetUsage(DT.USAGE_ITEM_CONSUMES) LibraryClass.SetLibraryClass(Item.GetLibName()) LibraryClass.SetRecommendedInstance(None) LibraryClass.SetFeatureFlag(Item.GetFeatureFlagExp()) LibraryClass.SetSupArchList( ConvertArchList(Item.GetSupArchList())) LibraryClass.SetSupModuleList(Item.GetSupModuleList()) HelpStringObj = Item.GetHelpString() if HelpStringObj != None: CommentString = GetHelpStringByRemoveHashKey( HelpStringObj.HeaderComments + HelpStringObj.TailComments) HelpTextHeaderObj = CommonObject.TextObject() HelpTextHeaderObj.SetString(CommentString) LibraryClass.SetHelpTextList([HelpTextHeaderObj]) self.SetLibraryClassList(self.GetLibraryClassList() + [LibraryClass])
def _GenModuleHeaderLibClass(self, DefineObj, ArchList): LibraryList = DefineObj.GetLibraryClass() for LibraryItem in LibraryList: Lib = CommonObject.LibraryClassObject() Lib.SetLibraryClass(LibraryItem.GetLibraryName()) Lib.SetUsage(DT.USAGE_ITEM_PRODUCES) SupModuleList = LibraryItem.GetTypes() self.LibModuleTypeList += SupModuleList Lib.SetSupModuleList(SupModuleList) Lib.SetSupArchList(ArchList) self.SetLibraryClassList(self.GetLibraryClassList() + [Lib]) self.SetIsLibrary(True) self.SetIsLibraryModList(self.GetIsLibraryModList() + SupModuleList)