import Common.GlobalData as GlobalData\r
from GenFds.FdfParser import *\r
from CommonDataClass.CommonClass import SkuInfoClass\r
-from Workspace.BuildClassObject import *\r
from GenPatchPcdTable.GenPatchPcdTable import parsePcdInfoFromMapFile\r
import Common.VpdInfoFile as VpdInfoFile\r
from .GenPcdDb import CreatePcdDatabaseCode\r
gEfiVarStoreGuidPattern = re.compile("\s*guid\s*=\s*({.*?{.*?}\s*})")\r
\r
## Mapping Makefile type\r
-gMakeTypeMap = {"MSFT":"nmake", "GCC":"gmake"}\r
+gMakeTypeMap = {TAB_COMPILER_MSFT:"nmake", "GCC":"gmake"}\r
\r
\r
## Build rule configuration file\r
for Inf in self._AsBuildInfList:\r
InfClass = PathClass(NormPath(Inf), GlobalData.gWorkspace, self.Arch)\r
M = self.BuildDatabase[InfClass, self.Arch, self.BuildTarget, self.ToolChain]\r
- if not M.IsSupportedArch:\r
+ if not M.IsBinaryModule:\r
continue\r
self._AsBuildModuleList.append(InfClass)\r
# get library/modules for build\r
# If a module INF in FDF but not in current arch's DSC module list, it must be module (either binary or source)\r
# for different Arch. PCDs in source module for different Arch is already added before, so skip the source module here.\r
# For binary module, if in current arch, we need to list the PCDs into database.\r
- if not M.IsSupportedArch:\r
+ if not M.IsBinaryModule:\r
continue\r
# Override the module PCD setting by platform setting\r
ModulePcdList = self.ApplyPcdSetting(M, M.Pcds)\r
continue\r
pcd.SkuInfoList[SkuName] = copy.deepcopy(pcd.SkuInfoList[TAB_DEFAULT])\r
pcd.SkuInfoList[SkuName].SkuId = SkuId\r
+ pcd.SkuInfoList[SkuName].SkuIdName = SkuName\r
self.AllPcdList = self._NonDynamicPcdList + self._DynamicPcdList\r
\r
def FixVpdOffset(self, VpdFile ):\r
or not ToolDefinition[TAB_TOD_DEFINES_FAMILY][self.ToolChain]:\r
EdkLogger.verbose("No tool chain family found in configuration for %s. Default to MSFT." \\r
% self.ToolChain)\r
- self._ToolChainFamily = "MSFT"\r
+ self._ToolChainFamily = TAB_COMPILER_MSFT\r
else:\r
self._ToolChainFamily = ToolDefinition[TAB_TOD_DEFINES_FAMILY][self.ToolChain]\r
return self._ToolChainFamily\r
or not ToolDefinition[TAB_TOD_DEFINES_BUILDRULEFAMILY][self.ToolChain]:\r
EdkLogger.verbose("No tool chain family found in configuration for %s. Default to MSFT." \\r
% self.ToolChain)\r
- self._BuildRuleFamily = "MSFT"\r
+ self._BuildRuleFamily = TAB_COMPILER_MSFT\r
else:\r
self._BuildRuleFamily = ToolDefinition[TAB_TOD_DEFINES_BUILDRULEFAMILY][self.ToolChain]\r
return self._BuildRuleFamily\r
# Regular expression for finding Include Directories, the difference between MSFT and INTEL/GCC/RVCT\r
# is the former use /I , the Latter used -I to specify include directories\r
#\r
- if self.PlatformInfo.ToolChainFamily in ('MSFT'):\r
+ if self.PlatformInfo.ToolChainFamily in (TAB_COMPILER_MSFT):\r
BuildOptIncludeRegEx = gBuildOptIncludePatternMsft\r
elif self.PlatformInfo.ToolChainFamily in ('INTEL', 'GCC', 'RVCT'):\r
BuildOptIncludeRegEx = gBuildOptIncludePatternOther\r