from Common.Misc import SaveFileOnChange\r
from Common.Misc import GuidStructureByteArrayToGuidString\r
from Common.Misc import GuidStructureStringToGuidString\r
-from Common.InfClassObject import gComponentType2ModuleType\r
from Common.BuildToolError import FILE_WRITE_FAILURE\r
from Common.BuildToolError import CODE_ERROR\r
from Common.BuildToolError import COMMAND_FAILURE\r
import collections\r
from Common.Expression import *\r
\r
+gComponentType2ModuleType = {\r
+ "LIBRARY" : "BASE",\r
+ "SECURITY_CORE" : "SEC",\r
+ "PEI_CORE" : "PEI_CORE",\r
+ "COMBINED_PEIM_DRIVER" : "PEIM",\r
+ "PIC_PEIM" : "PEIM",\r
+ "RELOCATABLE_PEIM" : "PEIM",\r
+ "PE32_PEIM" : "PEIM",\r
+ "BS_DRIVER" : "DXE_DRIVER",\r
+ "RT_DRIVER" : "DXE_RUNTIME_DRIVER",\r
+ "SAL_RT_DRIVER" : "DXE_SAL_DRIVER",\r
+ "APPLICATION" : "UEFI_APPLICATION",\r
+ "LOGO" : "BASE",\r
+}\r
+\r
## Pattern to extract contents in EDK DXS files\r
gDxsDependencyPattern = re.compile(r"DEPENDENCY_START(.+)DEPENDENCY_END", re.DOTALL)\r
\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 is None:\r
+ if not ModulePcdSet:\r
FileWrite(File, gSectionStart)\r
if ReportSubType == 1:\r
FileWrite(File, "Conditional Directives used by the build system")\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