]> git.proxmox.com Git - mirror_edk2.git/blobdiff - BaseTools/Source/Python/UPT/PomAdapter/DecPomAlignment.py
BaseTools: Clean up source files
[mirror_edk2.git] / BaseTools / Source / Python / UPT / PomAdapter / DecPomAlignment.py
index 941dd4a39891c347d549a6c95ac566343d44696c..5dc00affade8e8040d5c35e5f271ba2361f0d70b 100644 (file)
@@ -1,11 +1,11 @@
 ## @file DecPomAlignment.py\r
 # This file contained the adapter for convert INF parser object to POM Object\r
 #\r
-# Copyright (c) 2011 - 2016, Intel Corporation. All rights reserved.<BR>\r
+# Copyright (c) 2011 - 2018, Intel Corporation. All rights reserved.<BR>\r
 #\r
-# This program and the accompanying materials are licensed and made available \r
-# under the terms and conditions of the BSD License which accompanies this \r
-# distribution. The full text of the license may be found at \r
+# This program and the accompanying materials are licensed and made available\r
+# under the terms and conditions of the BSD License which accompanies this\r
+# distribution. The full text of the license may be found at\r
 # http://opensource.org/licenses/bsd-license.php\r
 #\r
 # THE PROGRAM IS DISTRIBUTED UNDER THE BSD LICENSE ON AN "AS IS" BASIS,\r
@@ -106,17 +106,17 @@ class DecPomAlignment(PackageObject):
         self.DecParser = None\r
         self.UniFileClassObject = None\r
         self.PcdDefaultValueDict = {}\r
-        \r
+\r
         #\r
         # Load Dec file\r
         #\r
         self.LoadDecFile(Filename)\r
-        \r
+\r
         #\r
         # Transfer to Package Object if IsToPackage is True\r
         #\r
         self.DecToPackage()\r
-    \r
+\r
     ## Load Dec file\r
     #\r
     # Load the file if it exists\r
@@ -132,13 +132,13 @@ class DecPomAlignment(PackageObject):
         self.SetFullPath(Filename)\r
         self.SetRelaPath(Path)\r
         self.SetFileName(Name)\r
-        self.SetPackagePath(GetRelativePath(Path, self.WorkspaceDir))   \r
+        self.SetPackagePath(GetRelativePath(Path, self.WorkspaceDir))\r
         self.SetCombinePath(GetRelativePath(Filename, self.WorkspaceDir))\r
-        \r
+\r
         self.DecParser = Dec(Filename)\r
-    \r
+\r
     ## Transfer to Package Object\r
-    # \r
+    #\r
     # Transfer all contents of a Dec file to a standard Package Object\r
     #\r
     def DecToPackage(self):\r
@@ -146,12 +146,12 @@ class DecPomAlignment(PackageObject):
         # Init global information for the file\r
         #\r
         ContainerFile = self.GetFullPath()\r
-        \r
+\r
         #\r
         # Generate Package Header\r
         #\r
         self.GenPackageHeader(ContainerFile)\r
-        \r
+\r
         #\r
         # Generate Includes\r
         #\r
@@ -171,28 +171,28 @@ class DecPomAlignment(PackageObject):
         # Generate Ppis\r
         #\r
         self.GenGuidProtocolPpis(TAB_PPIS, ContainerFile)\r
-        \r
+\r
         #\r
         # Generate LibraryClasses\r
         #\r
         self.GenLibraryClasses(ContainerFile)\r
-        \r
+\r
         #\r
         # Generate Pcds\r
         #\r
         self.GenPcds(ContainerFile)\r
-        \r
+\r
         #\r
-        # Generate Module File list, will be used later on to generate \r
+        # Generate Module File list, will be used later on to generate\r
         # distribution\r
         #\r
         self.GenModuleFileList(ContainerFile)\r
-        \r
+\r
         #\r
         # Generate user extensions\r
         #\r
         self.GenUserExtensions()\r
-        \r
+\r
     ## Generate user extension\r
     #\r
     #\r
@@ -231,7 +231,7 @@ class DecPomAlignment(PackageObject):
             PrivateUserExtension.SetIdentifier(DT.TAB_PRIVATE)\r
             PrivateUserExtension.SetUserID(DT.TAB_INTEL)\r
             self.SetUserExtensionList(self.GetUserExtensionList() + [PrivateUserExtension])\r
-            \r
+\r
     ## Generate miscellaneous files on DEC file\r
     #\r
     #\r
@@ -249,23 +249,23 @@ class DecPomAlignment(PackageObject):
                     FileObj.SetURI(FileName)\r
                     MiscFileObj.SetFileList(MiscFileObj.GetFileList()+[FileObj])\r
                 else:\r
-                    Logger.Error("InfParser", \r
+                    Logger.Error("InfParser",\r
                                  FORMAT_INVALID,\r
                                  ST.ERR_INF_PARSER_FILE_NOT_EXIST_OR_NAME_INVALID%(Line),\r
                                  File=self.GetFileName(),\r
-                                 ExtraData=Line)   \r
-        self.SetMiscFileList(self.GetMiscFileList()+[MiscFileObj]) \r
-        \r
+                                 ExtraData=Line)\r
+        self.SetMiscFileList(self.GetMiscFileList()+[MiscFileObj])\r
+\r
     ## Generate Package Header\r
     #\r
     # Gen Package Header of Dec as <Key> = <Value>\r
     #\r
-    # @param ContainerFile: The Dec file full path \r
+    # @param ContainerFile: The Dec file full path\r
     #\r
     def GenPackageHeader(self, ContainerFile):\r
         Logger.Debug(2, "Generate PackageHeader ...")\r
         DefinesDict = {}\r
-        \r
+\r
         #\r
         # Update all defines item in database\r
         #\r
@@ -293,12 +293,12 @@ class DecPomAlignment(PackageObject):
             UniFileClassObject([PathClass(os.path.join(DefObj.GetPackagePath(), DefObj.GetPackageUniFile()))])\r
         else:\r
             self.UniFileClassObject = None\r
-     \r
+\r
         if DefinesDict:\r
             UserExtension = UserExtensionObject()\r
             UserExtension.SetDefinesDict(DefinesDict)\r
             UserExtension.SetIdentifier('DefineModifiers')\r
-            UserExtension.SetUserID('EDK2')  \r
+            UserExtension.SetUserID('EDK2')\r
             self.SetUserExtensionList(\r
                 self.GetUserExtensionList() + [UserExtension]\r
             )\r
@@ -321,7 +321,7 @@ class DecPomAlignment(PackageObject):
             self.SetCopyright(('', Copyright))\r
         if License:\r
             self.SetLicense(('', License))\r
-    \r
+\r
         #\r
         # Get Binary header information\r
         #\r
@@ -329,7 +329,7 @@ class DecPomAlignment(PackageObject):
             Abstract, Description, Copyright, License = \\r
                 ParseHeaderCommentSection(self.DecParser.BinaryHeadComment,\r
                                       ContainerFile, True)\r
-                \r
+\r
             if not Abstract  or not Description or not Copyright or not License:\r
                 Logger.Error('MkPkg',\r
                              FORMAT_INVALID,\r
@@ -343,7 +343,7 @@ class DecPomAlignment(PackageObject):
 \r
         BinaryAbstractList = []\r
         BinaryDescriptionList = []\r
-        \r
+\r
         #Get Binary header from UNI file\r
         # Initialize the UniStrDict dictionary, top keys are language codes\r
         UniStrDict = {}\r
@@ -359,7 +359,7 @@ class DecPomAlignment(PackageObject):
                     if StringDefClassObject.StringName == TAB_DEC_BINARY_DESCRIPTION:\r
                         if (Lang, ConvertSpecialUnicodes(StringDefClassObject.StringValue)) \\r
                         not in self.GetBinaryHeaderDescription():\r
-                            BinaryDescriptionList.append((Lang, \r
+                            BinaryDescriptionList.append((Lang,\r
                                                           ConvertSpecialUnicodes(StringDefClassObject.StringValue)))\r
         #Combine Binary header from DEC file and UNI file\r
         BinaryAbstractList = self.GetBinaryHeaderAbstract() + BinaryAbstractList\r
@@ -376,13 +376,13 @@ class DecPomAlignment(PackageObject):
             BinaryUserExtension.SetIdentifier(TAB_BINARY_HEADER_IDENTIFIER)\r
             BinaryUserExtension.SetUserID(TAB_BINARY_HEADER_USERID)\r
             self.SetUserExtensionList(self.GetUserExtensionList() + [BinaryUserExtension])\r
-            \r
-            \r
+\r
+\r
     ## GenIncludes\r
     #\r
     # Gen Includes of Dec\r
-    # \r
-    # @param ContainerFile: The Dec file full path \r
+    #\r
+    # @param ContainerFile: The Dec file full path\r
     #\r
     def GenIncludes(self, ContainerFile):\r
         if ContainerFile:\r
@@ -402,17 +402,17 @@ class DecPomAlignment(PackageObject):
                     IncludesDict[IncludePath] = IncludesDict[IncludePath] + Item.GetArchList()\r
             else:\r
                 IncludesDict[IncludePath] = Item.GetArchList()\r
-                        \r
-        # \r
+\r
+        #\r
         # get the  standardIncludeFileList(industry), packageIncludeFileList\r
-        # (others) for PackageObject  \r
-        # \r
+        # (others) for PackageObject\r
+        #\r
         PackagePath = os.path.split(self.GetFullPath())[0]\r
         IncludePathList = \\r
             sorted([os.path.normpath(Path) + sep for Path in IncludesDict.keys()])\r
-        \r
+\r
         #\r
-        # get a non-overlap set of include path, IncludePathList should be \r
+        # get a non-overlap set of include path, IncludePathList should be\r
         # sorted, and path should be end with path seperator '\'\r
         #\r
         NonOverLapList = []\r
@@ -429,7 +429,7 @@ class DecPomAlignment(PackageObject):
         #\r
         for IndexN in range (0, len(IncludePathList)):\r
             IncludePathList[IndexN] = os.path.normpath(IncludePathList[IndexN])\r
-        IncludePathList.sort()            \r
+        IncludePathList.sort()\r
         IncludePathList.reverse()\r
         #\r
         # save the include path list for later usage\r
@@ -437,7 +437,7 @@ class DecPomAlignment(PackageObject):
         self.SetIncludePathList(IncludePathList)\r
         StandardIncludeFileList = []\r
         PackageIncludeFileList = []\r
-        \r
+\r
         IncludeFileList = []\r
         for Path in NonOverLapList:\r
             FileList = GetFiles(os.path.join(PackagePath, Path), ['CVS', '.svn'], False)\r
@@ -445,9 +445,9 @@ class DecPomAlignment(PackageObject):
         for Includefile in IncludeFileList:\r
             ExtName = os.path.splitext(Includefile)[1]\r
             if ExtName.upper() == '.DEC' and self.CheckMulDec:\r
-                Logger.Error('MkPkg', \r
+                Logger.Error('MkPkg',\r
                              UPT_MUL_DEC_ERROR,\r
-                             ST.ERR_MUL_DEC_ERROR%(os.path.dirname(ContainerFile), \r
+                             ST.ERR_MUL_DEC_ERROR%(os.path.dirname(ContainerFile),\r
                                                    os.path.basename(ContainerFile),\r
                                                    Includefile))\r
 \r
@@ -462,15 +462,15 @@ class DecPomAlignment(PackageObject):
             if Includefile.find('IndustryStandard') != -1:\r
                 StandardIncludeFileList.append(Include)\r
             else:\r
-                PackageIncludeFileList.append(Include)            \r
-    \r
+                PackageIncludeFileList.append(Include)\r
+\r
         self.SetStandardIncludeFileList(StandardIncludeFileList)\r
 \r
         #\r
         # put include path into the PackageIncludeFileList\r
         #\r
         PackagePathList = []\r
-        IncObj = self.DecParser.GetIncludeSectionObject()        \r
+        IncObj = self.DecParser.GetIncludeSectionObject()\r
         for Item in IncObj.GetAllIncludes():\r
             IncludePath = Item.File\r
             Include = IncludeObject()\r
@@ -478,13 +478,13 @@ class DecPomAlignment(PackageObject):
             Include.SetSupArchList(Item.GetArchList())\r
             PackagePathList.append(Include)\r
         self.SetPackageIncludeFileList(PackagePathList + PackageIncludeFileList)\r
-    \r
+\r
     ## GenPpis\r
     #\r
     # Gen Ppis of Dec\r
     # <CName>=<GuidValue>\r
     #\r
-    # @param ContainerFile: The Dec file full path \r
+    # @param ContainerFile: The Dec file full path\r
     #\r
     def GenGuidProtocolPpis(self, Type, ContainerFile):\r
         if ContainerFile:\r
@@ -504,7 +504,7 @@ class DecPomAlignment(PackageObject):
             Factory = CreateGuidObject\r
         elif Type == TAB_PROTOCOLS:\r
             Obj = self.DecParser.GetProtocolSectionObject()\r
-            \r
+\r
             def CreateProtocolObject():\r
                 return ProtocolObject()\r
             Factory = CreateProtocolObject\r
@@ -519,9 +519,9 @@ class DecPomAlignment(PackageObject):
             # Should not be here\r
             #\r
             return\r
-        \r
+\r
         DeclarationsList = []\r
-        \r
+\r
         #\r
         # Go through each arch\r
         #\r
@@ -530,7 +530,7 @@ class DecPomAlignment(PackageObject):
             Value = Item.GuidString\r
             HelpTxt = ParseGenericComment(Item.GetHeadComment() + \\r
                                           Item.GetTailComment())\r
-            \r
+\r
             ListObject = Factory()\r
             ListObject.SetCName(Name)\r
             ListObject.SetGuid(Value)\r
@@ -539,10 +539,10 @@ class DecPomAlignment(PackageObject):
                 if self.UniFileClassObject:\r
                     HelpTxt.SetLang(TAB_LANGUAGE_EN_X)\r
                 ListObject.SetHelpTextList([HelpTxt])\r
-            \r
+\r
             DeclarationsList.append(ListObject)\r
 \r
-        #    \r
+        #\r
         #GuidTypeList is abstracted from help\r
         #\r
         if Type == TAB_GUIDS:\r
@@ -551,20 +551,20 @@ class DecPomAlignment(PackageObject):
             self.SetProtocolList(self.GetProtocolList() + DeclarationsList)\r
         elif Type == TAB_PPIS:\r
             self.SetPpiList(self.GetPpiList() + DeclarationsList)\r
-    \r
+\r
     ## GenLibraryClasses\r
     #\r
     # Gen LibraryClasses of Dec\r
     # <CName>=<GuidValue>\r
     #\r
-    # @param ContainerFile: The Dec file full path \r
+    # @param ContainerFile: The Dec file full path\r
     #\r
     def GenLibraryClasses(self, ContainerFile):\r
         if ContainerFile:\r
             pass\r
         Logger.Debug(2, "Generate %s ..." % TAB_LIBRARY_CLASSES)\r
         LibraryClassDeclarations = []\r
-        \r
+\r
         LibObj = self.DecParser.GetLibraryClassSectionObject()\r
         for Item in LibObj.GetAllLibraryclasses():\r
             LibraryClass = LibraryClassObject()\r
@@ -578,44 +578,44 @@ class DecPomAlignment(PackageObject):
                     HelpTxt.SetLang(TAB_LANGUAGE_EN_X)\r
                 LibraryClass.SetHelpTextList([HelpTxt])\r
             LibraryClassDeclarations.append(LibraryClass)\r
-        \r
+\r
         self.SetLibraryClassList(self.GetLibraryClassList() + \\r
                                  LibraryClassDeclarations)\r
-    \r
+\r
     ## GenPcds\r
     #\r
     # Gen Pcds of Dec\r
     # <TokenSpcCName>.<TokenCName>|<Value>|<DatumType>|<Token>\r
     #\r
-    # @param ContainerFile: The Dec file full path \r
+    # @param ContainerFile: The Dec file full path\r
     #\r
     def GenPcds(self, ContainerFile):\r
         Logger.Debug(2, "Generate %s ..." % TAB_PCDS)\r
         PcdObj = self.DecParser.GetPcdSectionObject()\r
         #\r
         # Get all Pcds\r
-        #        \r
+        #\r
         PcdDeclarations = []\r
         IterList = [\r
             (TAB_PCDS_FIXED_AT_BUILD_NULL,      'FixedPcd'),\r
-            (TAB_PCDS_PATCHABLE_IN_MODULE_NULL, 'PatchPcd'), \r
+            (TAB_PCDS_PATCHABLE_IN_MODULE_NULL, 'PatchPcd'),\r
             (TAB_PCDS_FEATURE_FLAG_NULL,        'FeaturePcd'),\r
-            (TAB_PCDS_DYNAMIC_EX_NULL,          'PcdEx'), \r
+            (TAB_PCDS_DYNAMIC_EX_NULL,          'PcdEx'),\r
             (TAB_PCDS_DYNAMIC_NULL,             'Pcd')]\r
-        \r
+\r
         PromptStrList = []\r
         HelpStrList = []\r
         PcdErrStrList = []\r
         # Initialize UniStrDict dictionary, top keys are language codes\r
         UniStrDict = {}\r
         StrList = []\r
-        \r
+\r
         Language = ''\r
         if self.UniFileClassObject:\r
             Language = TAB_LANGUAGE_EN_X\r
         else:\r
             Language = TAB_LANGUAGE_EN_US\r
-            \r
+\r
         if self.UniFileClassObject:\r
             UniStrDict = self.UniFileClassObject.OrderedStringList\r
             for Lang in UniStrDict:\r
@@ -652,7 +652,7 @@ class DecPomAlignment(PackageObject):
                         self.DecParser.GetDefineSectionMacro()\r
                         )\r
                 PcdDeclaration.SetSupArchList(Item.GetArchListOfType(PcdType))\r
-                \r
+\r
                 #\r
                 # Get PCD error message from PCD error comment section in DEC file\r
                 #\r
@@ -662,7 +662,7 @@ class DecPomAlignment(PackageObject):
                         Key = (PcdDeclaration.GetTokenSpaceGuidCName(), PcdErr.GetErrorNumber())\r
                         PcdErr.SetErrorMessageList(PcdErr.GetErrorMessageList() + \\r
                                                       [(Language, self.DecParser.PcdErrorCommentDict[Key])])\r
-                \r
+\r
                 for Index in range(0, len(PromptStrList)):\r
                     StrNameList = PromptStrList[Index][1].split('_')\r
                     if StrNameList[1].lower() == Item.TokenSpaceGuidCName.lower() and \\r
@@ -676,7 +676,7 @@ class DecPomAlignment(PackageObject):
                                 break\r
                         else:\r
                             PcdDeclaration.SetPromptList(PcdDeclaration.GetPromptList() + [TxtObj])\r
-                        \r
+\r
                 for Index in range(0, len(HelpStrList)):\r
                     StrNameList = HelpStrList[Index][1].split('_')\r
                     if StrNameList[1].lower() == Item.TokenSpaceGuidCName.lower() and \\r
@@ -703,7 +703,7 @@ class DecPomAlignment(PackageObject):
                                 (PcdErrStrList[Index][0], PcdErrStrList[Index][2]) not in PcdErr.GetErrorMessageList():\r
                                 PcdErr.SetErrorMessageList(PcdErr.GetErrorMessageList() + \\r
                                                             [(PcdErrStrList[Index][0], PcdErrStrList[Index][2])])\r
-                              \r
+\r
                 #\r
                 # Check to prevent missing error message if a Pcd has the error code.\r
                 #\r
@@ -715,12 +715,12 @@ class DecPomAlignment(PackageObject):
                                          ST.ERR_DECPARSE_PCD_UNMATCHED_ERRORCODE % PcdErr.GetErrorNumber(),\r
                                          ContainerFile,\r
                                          PcdErr.GetLineNum(),\r
-                                         PcdErr.GetFileLine())                        \r
-                    \r
+                                         PcdErr.GetFileLine())\r
+\r
                 PcdDeclarations.append(PcdDeclaration)\r
         self.SetPcdList(self.GetPcdList() + PcdDeclarations)\r
         self.CheckPcdValue()\r
-        \r
+\r
     ##\r
     # Get error message via language\r
     # @param ErrorMessageList: Error message tuple list the language and its message\r
@@ -741,17 +741,17 @@ class DecPomAlignment(PackageObject):
                 return ErrorMessageList[0][1]\r
             except IndexError:\r
                 return ''\r
-        return ''    \r
-        \r
+        return ''\r
+\r
     ##\r
     # Replace the strings for Python eval function.\r
-    # @param ReplaceValue: The string that needs to be replaced. \r
-    # @return: The string was replaced, then eval function is always making out it.     \r
+    # @param ReplaceValue: The string that needs to be replaced.\r
+    # @return: The string was replaced, then eval function is always making out it.\r
     def ReplaceForEval(self, ReplaceValue, IsRange=False, IsExpr=False):\r
         if self.FullPath:\r
             pass\r
         #\r
-        # deal with "NOT EQ", "NOT LT", "NOT GT", "NOT LE", "NOT GE", "NOT NOT" \r
+        # deal with "NOT EQ", "NOT LT", "NOT GT", "NOT LE", "NOT GE", "NOT NOT"\r
         #\r
         NOTNOT_Pattern = '[\t\s]*NOT[\t\s]+NOT[\t\s]*'\r
         NOTGE_Pattern = '[\t\s]*NOT[\t\s]+GE[\t\s]*'\r
@@ -765,7 +765,7 @@ class DecPomAlignment(PackageObject):
         ReplaceValue = re.compile(NOTLE_Pattern).sub('x > ', ReplaceValue)\r
         ReplaceValue = re.compile(NOTGE_Pattern).sub('x < ', ReplaceValue)\r
         ReplaceValue = re.compile(NOTEQ_Pattern).sub('x != ', ReplaceValue)\r
-        \r
+\r
         if IsRange:\r
             ReplaceValue = ReplaceValue.replace('EQ', 'x ==')\r
             ReplaceValue = ReplaceValue.replace('LT', 'x <')\r
@@ -779,9 +779,9 @@ class DecPomAlignment(PackageObject):
             ReplaceValue = ReplaceValue.replace('LT', '<')\r
             ReplaceValue = ReplaceValue.replace('LE', '<=')\r
             ReplaceValue = ReplaceValue.replace('GT', '>')\r
-            ReplaceValue = ReplaceValue.replace('GE', '>=')  \r
-            ReplaceValue = ReplaceValue.replace('XOR', '^')  \r
-            \r
+            ReplaceValue = ReplaceValue.replace('GE', '>=')\r
+            ReplaceValue = ReplaceValue.replace('XOR', '^')\r
+\r
         ReplaceValue = ReplaceValue.replace('AND', 'and')\r
         ReplaceValue = ReplaceValue.replace('&&', ' and ')\r
         ReplaceValue = ReplaceValue.replace('xor', '^')\r
@@ -789,7 +789,7 @@ class DecPomAlignment(PackageObject):
         ReplaceValue = ReplaceValue.replace('||', ' or ')\r
         ReplaceValue = ReplaceValue.replace('NOT', 'not')\r
         if ReplaceValue.find('!') >= 0 and ReplaceValue[ReplaceValue.index('!') + 1] != '=':\r
-            ReplaceValue = ReplaceValue.replace('!', ' not ')        \r
+            ReplaceValue = ReplaceValue.replace('!', ' not ')\r
         if '.' in ReplaceValue:\r
             Pattern = '[a-zA-Z0-9]{1,}\.[a-zA-Z0-9]{1,}'\r
             MatchedList = re.findall(Pattern, ReplaceValue)\r
@@ -797,7 +797,7 @@ class DecPomAlignment(PackageObject):
                 if MatchedItem not in self.PcdDefaultValueDict:\r
                     Logger.Error("Dec File Parser", FORMAT_INVALID, Message=ST.ERR_DECPARSE_PCD_NODEFINED % MatchedItem,\r
                                      File=self.FullPath)\r
-                    \r
+\r
                 ReplaceValue = ReplaceValue.replace(MatchedItem, self.PcdDefaultValueDict[MatchedItem])\r
 \r
         return ReplaceValue\r
@@ -809,7 +809,7 @@ class DecPomAlignment(PackageObject):
         for Pcd in self.GetPcdList():\r
             self.PcdDefaultValueDict[TAB_SPLIT.join((Pcd.GetTokenSpaceGuidCName(), Pcd.GetCName())).strip()] = \\r
             Pcd.GetDefaultValue()\r
-        \r
+\r
         for Pcd in self.GetPcdList():\r
             ValidationExpressions = []\r
             PcdGuidName = TAB_SPLIT.join((Pcd.GetTokenSpaceGuidCName(), Pcd.GetCName()))\r
@@ -825,20 +825,20 @@ class DecPomAlignment(PackageObject):
                     if QuotedMatchedObj:\r
                         MatchedStr = QuotedMatchedObj.group().strip()\r
                         if MatchedStr.startswith('L'):\r
-                            Expression = Expression.replace(MatchedStr, MatchedStr[1:].strip())  \r
+                            Expression = Expression.replace(MatchedStr, MatchedStr[1:].strip())\r
 \r
                     Expression = self.ReplaceForEval(Expression, IsExpr=True)\r
                     Expression = Expression.replace(PcdGuidName, 'x')\r
                     Message = self.GetEnErrorMessage(Valid.GetErrorMessageList())\r
-                    ValidationExpressions.append((Expression, Message))                   \r
-                \r
+                    ValidationExpressions.append((Expression, Message))\r
+\r
                 ValidList = Valid.GetValidValue()\r
                 if ValidList:\r
                     ValidValue = 'x in %s' % [eval(v) for v in ValidList.split(' ') if v]\r
                     Message = self.GetEnErrorMessage(Valid.GetErrorMessageList())\r
                     ValidationExpressions.append((ValidValue, Message))\r
-                    \r
-                ValidValueRange = Valid.GetValidValueRange()                \r
+\r
+                ValidValueRange = Valid.GetValidValueRange()\r
                 if ValidValueRange:\r
                     ValidValueRange = self.ReplaceForEval(ValidValueRange, IsRange=True)\r
                     if ValidValueRange.find('-') >= 0:\r
@@ -848,7 +848,7 @@ class DecPomAlignment(PackageObject):
                         ValidValueRange = 'x %s' % ValidValueRange\r
                     Message = self.GetEnErrorMessage(Valid.GetErrorMessageList())\r
                     ValidationExpressions.append((ValidValueRange, Message))\r
-                    \r
+\r
             DefaultValue = self.PcdDefaultValueDict[PcdGuidName.strip()]\r
             #\r
             # Delete the 'L' prefix of a quoted string, this operation is for eval()\r
@@ -859,7 +859,7 @@ class DecPomAlignment(PackageObject):
                 MatchedStr = QuotedMatchedObj.group().strip()\r
                 if MatchedStr.startswith('L'):\r
                     DefaultValue = DefaultValue.replace(MatchedStr, MatchedStr[1:].strip())\r
-                    \r
+\r
             try:\r
                 DefaultValue = eval(DefaultValue.replace('TRUE', 'True').replace('true', 'True')\r
                                         .replace('FALSE', 'False').replace('false', 'False'))\r
@@ -877,11 +877,11 @@ class DecPomAlignment(PackageObject):
 \r
     ## GenModuleFileList\r
     #\r
-    def GenModuleFileList(self, ContainerFile):        \r
+    def GenModuleFileList(self, ContainerFile):\r
         ModuleFileList = []\r
         ContainerFileName = os.path.basename(ContainerFile)\r
         ContainerFilePath = os.path.dirname(ContainerFile)\r
-        for Item in GetFiles(ContainerFilePath, \r
+        for Item in GetFiles(ContainerFilePath,\r
                         ['CVS', '.svn'] + self.GetIncludePathList(), False):\r
             ExtName = os.path.splitext(Item)[1]\r
             if ExtName.lower() == '.inf':\r
@@ -889,14 +889,14 @@ class DecPomAlignment(PackageObject):
             elif ExtName.upper() == '.DEC' and self.CheckMulDec:\r
                 if Item == ContainerFileName:\r
                     continue\r
-                Logger.Error('MkPkg', \r
+                Logger.Error('MkPkg',\r
                              UPT_MUL_DEC_ERROR,\r
-                             ST.ERR_MUL_DEC_ERROR%(ContainerFilePath, \r
-                                                   ContainerFileName, \r
+                             ST.ERR_MUL_DEC_ERROR%(ContainerFilePath,\r
+                                                   ContainerFileName,\r
                                                    Item))\r
-                \r
+\r
         self.SetModuleFileList(ModuleFileList)\r
-    \r
+\r
     ## Show detailed information of Package\r
     #\r
     # Print all members and their values of Package class\r
@@ -906,7 +906,7 @@ class DecPomAlignment(PackageObject):
         print('\nBaseName =', self.GetBaseName())\r
         print('\nVersion =', self.GetVersion())\r
         print('\nGuid =', self.GetGuid())\r
-        \r
+\r
         print('\nStandardIncludes = %d ' \\r
             % len(self.GetStandardIncludeFileList()), end=' ')\r
         for Item in self.GetStandardIncludeFileList():\r
@@ -915,7 +915,7 @@ class DecPomAlignment(PackageObject):
             % len(self.GetPackageIncludeFileList()), end=' ')\r
         for Item in self.GetPackageIncludeFileList():\r
             print(Item.GetFilePath(), '  ', Item.GetSupArchList())\r
-             \r
+\r
         print('\nGuids =', self.GetGuidList())\r
         for Item in self.GetGuidList():\r
             print(Item.GetCName(), Item.GetGuid(), Item.GetSupArchList())\r
@@ -937,7 +937,7 @@ class DecPomAlignment(PackageObject):
                 'ValidUsage=', Item.GetValidUsage(), \\r
                 'SupArchList', Item.GetSupArchList(), \\r
                 'Token=', Item.GetToken(), 'DatumType=', Item.GetDatumType())\r
\r
+\r
         for Item in self.GetMiscFileList():\r
             print(Item.GetName())\r
             for FileObjectItem in Item.GetFileList():\r
@@ -947,11 +947,11 @@ class DecPomAlignment(PackageObject):
 ## GenPcdDeclaration\r
 #\r
 # @param ContainerFile:   File name of the DEC file\r
-# @param PcdInfo:         Pcd information, of format (TokenGuidCName, \r
-#                         TokenName, Value, DatumType, Token, Type, \r
+# @param PcdInfo:         Pcd information, of format (TokenGuidCName,\r
+#                         TokenName, Value, DatumType, Token, Type,\r
 #                         GenericComment, TailComment, Arch)\r
-# @param Language: The language of HelpText, Prompt \r
-# \r
+# @param Language: The language of HelpText, Prompt\r
+#\r
 def GenPcdDeclaration(ContainerFile, PcdInfo, Language, MacroReplaceDict):\r
     HelpStr = ''\r
     PromptStr = ''\r
@@ -973,28 +973,28 @@ def GenPcdDeclaration(ContainerFile, PcdInfo, Language, MacroReplaceDict):
 \r
     SupArchList = [Arch]\r
     Pcd.SetSupArchList(SupArchList)\r
-    \r
+\r
     if GenericComment:\r
-        HelpStr, PcdErrList, PromptStr = ParseDecPcdGenericComment(GenericComment, \r
-                                                                   ContainerFile, \r
-                                                                   TokenGuidCName, \r
+        HelpStr, PcdErrList, PromptStr = ParseDecPcdGenericComment(GenericComment,\r
+                                                                   ContainerFile,\r
+                                                                   TokenGuidCName,\r
                                                                    TokenName,\r
                                                                    MacroReplaceDict)\r
         if PcdErrList:\r
             Pcd.SetPcdErrorsList(PcdErrList)\r
 \r
     if TailComment:\r
-        SupModuleList, TailHelpStr = ParseDecPcdTailComment(TailComment, \r
+        SupModuleList, TailHelpStr = ParseDecPcdTailComment(TailComment,\r
                                                         ContainerFile)\r
         if SupModuleList:\r
             Pcd.SetSupModuleList(SupModuleList)\r
-    \r
+\r
     if HelpStr and (not HelpStr.endswith('\n')) and TailHelpStr:\r
         HelpStr += '\n'\r
     HelpStr += TailHelpStr\r
     if HelpStr:\r
         HelpTxtObj = TextObject()\r
-        HelpTxtObj.SetLang(Language)   \r
+        HelpTxtObj.SetLang(Language)\r
         HelpTxtObj.SetString(HelpStr)\r
         Pcd.SetHelpTextList([HelpTxtObj])\r
     if PromptStr:\r