I see lots of 'MSFT' throughout code and this can reduce them.
Cc: Bob Feng <Bob.c.Feng@intel.com>
Cc: Yonghong Zhu <yonghong.zhu@intel.com>
Cc: Liming Gao <liming.gao@intel.com>
Contributed-under: TianoCore Contribution Agreement 1.1
Signed-off-by: Jaben Carsey <jaben.carsey@intel.com>
Reviewed-by: Yonghong Zhu <yonghong.zhu@intel.com>
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
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
# @param LineIndex The line number from which the parsing will begin\r
# @param SupportedFamily The list of supported tool chain families\r
#\r
- def __init__(self, File=None, Content=None, LineIndex=0, SupportedFamily=["MSFT", "INTEL", "GCC", "RVCT"]):\r
+ def __init__(self, File=None, Content=None, LineIndex=0, SupportedFamily=[TAB_COMPILER_MSFT, "INTEL", "GCC", "RVCT"]):\r
self.RuleFile = File\r
# Read build rules from file if it's not none\r
if File is not None:\r
EdkLogger.Initialize()\r
if len(sys.argv) > 1:\r
Br = BuildRule(sys.argv[1])\r
- print(str(Br[".c", SUP_MODULE_DXE_DRIVER, "IA32", "MSFT"][1]))\r
+ print(str(Br[".c", SUP_MODULE_DXE_DRIVER, "IA32", TAB_COMPILER_MSFT][1]))\r
print()\r
print(str(Br[".c", SUP_MODULE_DXE_DRIVER, "IA32", "INTEL"][1]))\r
print()\r
print(str(Br[".c", SUP_MODULE_DXE_DRIVER, "IA32", "GCC"][1]))\r
print()\r
- print(str(Br[".ac", "ACPI_TABLE", "IA32", "MSFT"][1]))\r
+ print(str(Br[".ac", "ACPI_TABLE", "IA32", TAB_COMPILER_MSFT][1]))\r
print()\r
print(str(Br[".h", "ACPI_TABLE", "IA32", "INTEL"][1]))\r
print()\r
- print(str(Br[".ac", "ACPI_TABLE", "IA32", "MSFT"][1]))\r
+ print(str(Br[".ac", "ACPI_TABLE", "IA32", TAB_COMPILER_MSFT][1]))\r
print()\r
print(str(Br[".s", SUP_MODULE_SEC, "IPF", "COMMON"][1]))\r
print()\r
from .BuildEngine import *\r
import Common.GlobalData as GlobalData\r
from collections import OrderedDict\r
+from Common.DataType import TAB_COMPILER_MSFT\r
\r
## Regular expression for finding header file inclusions\r
gIncludePattern = re.compile(r"^[ \t]*#?[ \t]*include(?:[ \t]*(?:\\(?:\r\n|\r|\n))*[ \t]*)*(?:\(?[\"<]?[ \t]*)([-\w.\\/() \t]+)(?:[ \t]*[\">]?\)?)", re.MULTILINE | re.UNICODE | re.IGNORECASE)\r
"gmake" : "include"\r
}\r
\r
- _INC_FLAG_ = {"MSFT" : "/I", "GCC" : "-I", "INTEL" : "-I", "RVCT" : "-I"}\r
+ _INC_FLAG_ = {TAB_COMPILER_MSFT : "/I", "GCC" : "-I", "INTEL" : "-I", "RVCT" : "-I"}\r
\r
## Constructor of BuildFile\r
#\r
1:'=B',\r
0:'=B',\r
16:""}\r
+\r
+TAB_COMPILER_MSFT = 'MSFT'\r
\ No newline at end of file
\r
## Override parent's method since we'll do all macro replacements in parser\r
def _GetMacros(self):\r
- Macros = dict( [('ARCH', 'IA32'), ('FAMILY', 'MSFT'), ('TOOL_CHAIN_TAG', 'VS2008x86'), ('TARGET', 'DEBUG')])\r
+ Macros = dict( [('ARCH', 'IA32'), ('FAMILY', TAB_COMPILER_MSFT), ('TOOL_CHAIN_TAG', 'VS2008x86'), ('TARGET', 'DEBUG')])\r
Macros.update(self._FileLocalMacros)\r
Macros.update(self._GetApplicableSectionMacro())\r
Macros.update(GlobalData.gEdkGlobal)\r
FixedLoadAddress = False\r
PlatformName = ''\r
\r
- BuildRuleFamily = "MSFT"\r
- ToolChainFamily = "MSFT"\r
+ BuildRuleFamily = DataType.TAB_COMPILER_MSFT\r
+ ToolChainFamily = DataType.TAB_COMPILER_MSFT\r
__BuildRuleDatabase = None\r
GuidToolDefinition = {}\r
FfsCmdDict = {}\r
self.Modules.append(Module)\r
\r
def _GetToolChainFamily(self):\r
- self._ToolChainFamily = "MSFT"\r
+ self._ToolChainFamily = TAB_COMPILER_MSFT\r
BuildConfigurationFile = os.path.normpath(os.path.join(GlobalData.gConfDirectory, "target.txt"))\r
if os.path.isfile(BuildConfigurationFile) == True:\r
TargetTxt = TargetTxtClassObject()\r
if TAB_TOD_DEFINES_FAMILY not in ToolDefinition \\r
or self._Toolchain not in ToolDefinition[TAB_TOD_DEFINES_FAMILY] \\r
or not ToolDefinition[TAB_TOD_DEFINES_FAMILY][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
if self._CustomMakefile is None:\r
self._CustomMakefile = {}\r
if len(TokenList) < 2:\r
- self._CustomMakefile['MSFT'] = TokenList[0]\r
+ self._CustomMakefile[TAB_COMPILER_MSFT] = TokenList[0]\r
self._CustomMakefile['GCC'] = TokenList[0]\r
else:\r
- if TokenList[0] not in ['MSFT', 'GCC']:\r
+ if TokenList[0] not in [TAB_COMPILER_MSFT, 'GCC']:\r
EdkLogger.error("build", FORMAT_NOT_SUPPORTED,\r
"No supported family [%s]" % TokenList[0],\r
File=self.MetaFile, Line=Record[-1])\r
else:\r
Tool = ToolList[0]\r
ToolChain = "*_*_*_%s_FLAGS" % Tool\r
- ToolChainFamily = 'MSFT' # Edk.x only support MSFT tool chain\r
+ # Edk.x only support MSFT tool chain\r
# ignore not replaced macros in value\r
ValueList = GetSplitList(' ' + Value, '/D')\r
Dummy = ValueList[0]\r
continue\r
Dummy = Dummy + ' /D ' + ValueList[Index]\r
Value = Dummy.strip()\r
- if (ToolChainFamily, ToolChain) not in self._BuildOptions:\r
- self._BuildOptions[ToolChainFamily, ToolChain] = Value\r
+ if (TAB_COMPILER_MSFT, ToolChain) not in self._BuildOptions:\r
+ self._BuildOptions[TAB_COMPILER_MSFT, ToolChain] = Value\r
else:\r
- OptionString = self._BuildOptions[ToolChainFamily, ToolChain]\r
- self._BuildOptions[ToolChainFamily, ToolChain] = OptionString + " " + Value\r
+ OptionString = self._BuildOptions[TAB_COMPILER_MSFT, ToolChain]\r
+ self._BuildOptions[TAB_COMPILER_MSFT, ToolChain] = OptionString + " " + Value\r
# set _Header to non-None in order to avoid database re-querying\r
self._Header_ = 'DUMMY'\r
\r
if TAB_TOD_DEFINES_FAMILY not in ToolDefinition or Tool not in ToolDefinition[TAB_TOD_DEFINES_FAMILY] \\r
or not ToolDefinition[TAB_TOD_DEFINES_FAMILY][Tool]:\r
EdkLogger.warn("build", "No tool chain family found in configuration for %s. Default to MSFT." % Tool)\r
- ToolChainFamily.append("MSFT")\r
+ ToolChainFamily.append(TAB_COMPILER_MSFT)\r
else:\r
ToolChainFamily.append(ToolDefinition[TAB_TOD_DEFINES_FAMILY][Tool])\r
self.ToolChainFamily = ToolChainFamily\r