## @file\r
# This file is used to be the main entrance of EOT tool\r
#\r
-# Copyright (c) 2008 - 2014, Intel Corporation. All rights reserved.<BR>\r
+# Copyright (c) 2008 - 2018, Intel Corporation. All rights reserved.<BR>\r
# This program and the accompanying materials\r
# are licensed and made available under the terms and conditions of the BSD License\r
# which accompanies this distribution. The full text of the license may be found at\r
from InfParserLite import *\r
import c\r
import Database\r
-from FvImage import *\r
from array import array\r
from Report import Report\r
-from Common.Misc import ParseConsoleLog\r
from Common.BuildVersion import gBUILD_VERSION\r
from Parser import ConvertGuid\r
from Common.LongFilePathSupport import OpenLongFilePath as open\r
\r
+## MultipleFv() class\r
+#\r
+# A class for Multiple FV\r
+#\r
+class MultipleFv(FirmwareVolume):\r
+ def __init__(self, FvList):\r
+ FirmwareVolume.__init__(self)\r
+ self.BasicInfo = []\r
+ for FvPath in FvList:\r
+ FvName = os.path.splitext(os.path.split(FvPath)[1])[0]\r
+ Fd = open(FvPath, 'rb')\r
+ Buf = array('B')\r
+ try:\r
+ Buf.fromfile(Fd, os.path.getsize(FvPath))\r
+ except EOFError:\r
+ pass\r
+\r
+ Fv = FirmwareVolume(FvName)\r
+ Fv.frombuffer(Buf, 0, len(Buf))\r
+\r
+ self.BasicInfo.append([Fv.Name, Fv.FileSystemGuid, Fv.Size])\r
+ self.FfsDict.append(Fv.FfsDict) \r
+\r
## Class Eot\r
#\r
# This class is used to define Eot main entrance\r
GuidMacro2 = ''\r
GuidValue = ''\r
\r
- # Find value for hardcode guid macro\r
- if GuidName in EotGlobalData.gGuidMacroDict:\r
- GuidMacro = EotGlobalData.gGuidMacroDict[GuidName][0]\r
- GuidValue = EotGlobalData.gGuidMacroDict[GuidName][1]\r
- SqlCommand = """update Report set GuidMacro = '%s', GuidValue = '%s' where GuidName = '%s'""" %(GuidMacro, GuidValue, GuidName)\r
- EotGlobalData.gDb.TblReport.Exec(SqlCommand)\r
- continue\r
-\r
# Find guid value defined in Dec file\r
if GuidName in EotGlobalData.gGuidDict:\r
GuidValue = EotGlobalData.gGuidDict[GuidName]\r