From 3e4faa268e2fafb119fdf5f48a9fcc111f9dc62e Mon Sep 17 00:00:00 2001 From: "Carsey, Jaben" Date: Fri, 20 Apr 2018 23:51:24 +0800 Subject: BaseTools: Workspace - refactor RegEx to minimize multiple compiling Cc: Liming Gao Cc: Yonghong Zhu Contributed-under: TianoCore Contribution Agreement 1.1 Signed-off-by: Jaben Carsey Reviewed-by: Yonghong Zhu --- BaseTools/Source/Python/Workspace/DscBuildData.py | 4 +++- 1 file changed, 3 insertions(+), 1 deletion(-) (limited to 'BaseTools/Source/Python/Workspace/DscBuildData.py') diff --git a/BaseTools/Source/Python/Workspace/DscBuildData.py b/BaseTools/Source/Python/Workspace/DscBuildData.py index 7e3187fb5d..e335b3df85 100644 --- a/BaseTools/Source/Python/Workspace/DscBuildData.py +++ b/BaseTools/Source/Python/Workspace/DscBuildData.py @@ -89,6 +89,8 @@ MAKEROOT ?= $(EDK_TOOLS_PATH)/Source/C LIBS = -lCommon ''' +variablePattern = re.compile(r'[\t\s]*0[xX][a-fA-F0-9]+$') + ## regular expressions for finding decimal and hex numbers Pattern = re.compile('^[1-9]\d*|0$') HexPattern = re.compile(r'0[xX][0-9a-fA-F]+$') @@ -2415,7 +2417,7 @@ class DscBuildData(PlatformBuildClassObject): if VariableOffset.isdigit(): if int(VariableOffset, 10) > 0xFFFF: ExceedMax = True - elif re.match(r'[\t\s]*0[xX][a-fA-F0-9]+$', VariableOffset): + elif variablePattern.match(VariableOffset): if int(VariableOffset, 16) > 0xFFFF: ExceedMax = True # For Offset written in "A.B" -- cgit v1.2.3