]> git.proxmox.com Git - mirror_edk2.git/blobdiff - BaseTools/Source/Python/Workspace/DscBuildData.py
BaseTools: Workspace - refactor RegEx to minimize multiple compiling
[mirror_edk2.git] / BaseTools / Source / Python / Workspace / DscBuildData.py
index 7e3187fb5d2d82720dd353d1f27371c3cdad1528..e335b3df85af8980cba337b8000463ab062bae00 100644 (file)
@@ -89,6 +89,8 @@ MAKEROOT ?= $(EDK_TOOLS_PATH)/Source/C
 LIBS = -lCommon\r
 '''\r
 \r
+variablePattern = re.compile(r'[\t\s]*0[xX][a-fA-F0-9]+$')\r
+\r
 ## regular expressions for finding decimal and hex numbers\r
 Pattern = re.compile('^[1-9]\d*|0$')\r
 HexPattern = re.compile(r'0[xX][0-9a-fA-F]+$')\r
@@ -2415,7 +2417,7 @@ class DscBuildData(PlatformBuildClassObject):
             if VariableOffset.isdigit():\r
                 if int(VariableOffset, 10) > 0xFFFF:\r
                     ExceedMax = True\r
-            elif re.match(r'[\t\s]*0[xX][a-fA-F0-9]+$', VariableOffset):\r
+            elif variablePattern.match(VariableOffset):\r
                 if int(VariableOffset, 16) > 0xFFFF:\r
                     ExceedMax = True\r
             # For Offset written in "A.B"\r