# read one line a time\r
Line = From.readline()\r
# empty string means "end"\r
- if Line != None and Line != "":\r
+ if Line is not None and Line != "":\r
To(Line.rstrip())\r
else:\r
break\r
self.DscPcdDefault[(TokenCName, TokenSpaceGuidCName)] = DscDefaultValue\r
\r
def GenerateReport(self, File, ModulePcdSet):\r
- if self.ConditionalPcds:\r
- self.GenerateReportDetail(File, ModulePcdSet, 1)\r
- if self.UnusedPcds:\r
- self.GenerateReportDetail(File, ModulePcdSet, 2)\r
+ if not ModulePcdSet:\r
+ if self.ConditionalPcds:\r
+ self.GenerateReportDetail(File, ModulePcdSet, 1)\r
+ if self.UnusedPcds:\r
+ self.GenerateReportDetail(File, ModulePcdSet, 2)\r
self.GenerateReportDetail(File, ModulePcdSet)\r
\r
##\r
elif ReportSubType == 2:\r
PcdDict = self.UnusedPcds\r
\r
- if ModulePcdSet == None:\r
+ if not ModulePcdSet:\r
FileWrite(File, gSectionStart)\r
if ReportSubType == 1:\r
FileWrite(File, "Conditional Directives used by the build system")\r
PcdValue = DecDefaultValue\r
if DscDefaultValue:\r
PcdValue = DscDefaultValue\r
- if ModulePcdSet != None:\r
+ if ModulePcdSet is not None:\r
if (Pcd.TokenCName, Pcd.TokenSpaceGuidCName, Type) not in ModulePcdSet:\r
continue\r
InfDefault, PcdValue = ModulePcdSet[Pcd.TokenCName, Pcd.TokenSpaceGuidCName, Type]\r
+ Pcd.DefaultValue = PcdValue\r
if InfDefault == "":\r
InfDefault = None\r
\r
if GlobalData.BuildOptionPcd:\r
for pcd in GlobalData.BuildOptionPcd:\r
if (Pcd.TokenSpaceGuidCName, Pcd.TokenCName) == (pcd[0], pcd[1]):\r
- PcdValue = pcd[2]\r
+ if pcd[2]:\r
+ continue\r
+ PcdValue = pcd[3]\r
Pcd.DefaultValue = PcdValue\r
BuildOptionMatch = True\r
break\r
\r
if First:\r
- if ModulePcdSet == None:\r
+ if ModulePcdSet is None:\r
FileWrite(File, "")\r
FileWrite(File, Key)\r
First = False\r
\r
if Pcd.DatumType in ('UINT8', 'UINT16', 'UINT32', 'UINT64'):\r
PcdValueNumber = int(PcdValue.strip(), 0)\r
- if DecDefaultValue == None:\r
+ if DecDefaultValue is None:\r
DecMatch = True\r
else:\r
DecDefaultValueNumber = int(DecDefaultValue.strip(), 0)\r
DecMatch = (DecDefaultValueNumber == PcdValueNumber)\r
\r
- if InfDefaultValue == None:\r
+ if InfDefaultValue is None:\r
InfMatch = True\r
else:\r
InfDefaultValueNumber = int(InfDefaultValue.strip(), 0)\r
InfMatch = (InfDefaultValueNumber == PcdValueNumber)\r
\r
- if DscDefaultValue == None:\r
+ if DscDefaultValue is None:\r
DscMatch = True\r
else:\r
DscDefaultValueNumber = int(DscDefaultValue.strip(), 0)\r
DscMatch = (DscDefaultValueNumber == PcdValueNumber)\r
else:\r
- if DecDefaultValue == None:\r
+ if DecDefaultValue is None:\r
DecMatch = True\r
else:\r
DecMatch = (DecDefaultValue.strip() == PcdValue.strip())\r
\r
- if InfDefaultValue == None:\r
+ if InfDefaultValue is None:\r
InfMatch = True\r
else:\r
InfMatch = (InfDefaultValue.strip() == PcdValue.strip())\r
\r
- if DscDefaultValue == None:\r
+ if DscDefaultValue is None:\r
DscMatch = True\r
else:\r
DscMatch = (DscDefaultValue.strip() == PcdValue.strip())\r
else:\r
self.PrintPcdValue(File, Pcd, PcdTokenCName, TypeName, IsStructure, DscMatch, DscDefaultValBak, InfMatch, InfDefaultValue, DecMatch, DecDefaultValue, '*M')\r
\r
- if ModulePcdSet == None:\r
+ if ModulePcdSet is None:\r
if IsStructure:\r
continue\r
if not TypeName in ('PATCH', 'FLAG', 'FIXED'):\r
else:\r
FileWrite(File, ' *M %-*s = %s' % (self.MaxLen + 19, ModulePath, ModuleDefault.strip()))\r
\r
- if ModulePcdSet == None:\r
+ if ModulePcdSet is None:\r
FileWrite(File, gSectionEnd)\r
else:\r
if not ReportSubType and ModulePcdSet:\r
return HasDscOverride\r
\r
def PrintPcdDefault(self, File, Pcd, IsStructure, DscMatch, DscDefaultValue, InfMatch, InfDefaultValue, DecMatch, DecDefaultValue):\r
- if not DscMatch and DscDefaultValue != None:\r
+ if not DscMatch and DscDefaultValue is not None:\r
Value = DscDefaultValue.strip()\r
IsByteArray, ArrayList = ByteArrayForamt(Value)\r
if IsByteArray:\r
FileWrite(File, '%s' % (Array))\r
else:\r
FileWrite(File, ' %*s = %s' % (self.MaxLen + 19, 'DSC DEFAULT', Value))\r
- if not InfMatch and InfDefaultValue != None:\r
+ if not InfMatch and InfDefaultValue is not None:\r
Value = InfDefaultValue.strip()\r
IsByteArray, ArrayList = ByteArrayForamt(Value)\r
if IsByteArray:\r
else:\r
FileWrite(File, ' %*s = %s' % (self.MaxLen + 19, 'INF DEFAULT', Value))\r
\r
- if not DecMatch and DecDefaultValue != None:\r
+ if not DecMatch and DecDefaultValue is not None:\r
Value = DecDefaultValue.strip()\r
IsByteArray, ArrayList = ByteArrayForamt(Value)\r
if IsByteArray:\r
self.FvInfo = {}\r
self._GuidsDb = {}\r
self._FvDir = Wa.FvDir\r
+ self._WorkspaceDir = Wa.WorkspaceDir\r
\r
#\r
# If the input FdRegion is not a firmware volume,\r
FvTotalSize = 0\r
FvTakenSize = 0\r
FvFreeSize = 0\r
- if not os.path.isfile(FvName):\r
- FvReportFileName = os.path.join(self._FvDir, FvName + ".Fv.txt")\r
+ if FvName.upper().endswith('.FV'):\r
+ FileExt = FvName + ".txt"\r
else:\r
- if FvName.upper().endswith('.FV'):\r
- FvReportFileName = FvName + ".txt"\r
- else:\r
- FvReportFileName = FvName + ".Fv.txt"\r
+ FileExt = FvName + ".Fv.txt"\r
+\r
+ if not os.path.isfile(FileExt):\r
+ FvReportFileName = mws.join(self._WorkspaceDir, FileExt)\r
+ if not os.path.isfile(FvReportFileName):\r
+ FvReportFileName = os.path.join(self._FvDir, FileExt)\r
try:\r
#\r
# Collect size info in the firmware volume.\r
self.PcdReport = PcdReport(Wa)\r
\r
self.FdReportList = []\r
- if "FLASH" in ReportType and Wa.FdfProfile and MaList == None:\r
+ if "FLASH" in ReportType and Wa.FdfProfile and MaList is None:\r
for Fd in Wa.FdfProfile.FdDict:\r
self.FdReportList.append(FdReport(Wa.FdfProfile.FdDict[Fd], Wa))\r
\r
self.DepexParser = DepexParser(Wa)\r
\r
self.ModuleReportList = []\r
- if MaList != None:\r
+ if MaList is not None:\r
self._IsModuleBuild = True\r
for Ma in MaList:\r
self.ModuleReportList.append(ModuleReport(Ma, ReportType))\r
ModuleAutoGenList = []\r
for ModuleKey in Pa.Platform.Modules:\r
ModuleAutoGenList.append(Pa.Platform.Modules[ModuleKey].M)\r
- if GlobalData.gFdfParser != None:\r
+ if GlobalData.gFdfParser is not None:\r
if Pa.Arch in GlobalData.gFdfParser.Profile.InfDict:\r
INFList = GlobalData.gFdfParser.Profile.InfDict[Pa.Arch]\r
for InfName in INFList:\r
InfClass = PathClass(NormPath(InfName), Wa.WorkspaceDir, Pa.Arch)\r
Ma = ModuleAutoGen(Wa, InfClass, Pa.BuildTarget, Pa.ToolChain, Pa.Arch, Wa.MetaFile)\r
- if Ma == None:\r
+ if Ma is None:\r
continue\r
if Ma not in ModuleAutoGenList:\r
ModuleAutoGenList.append(Ma)\r