BaseTools/Source/Python/Common/InfClassObject.py:
authorjljusten <jljusten@7335b38e-4728-0410-8992-fb3ffe349368>
Mon, 11 Feb 2008 22:17:25 +0000 (22:17 +0000)
committerjljusten <jljusten@7335b38e-4728-0410-8992-fb3ffe349368>
Mon, 11 Feb 2008 22:17:25 +0000 (22:17 +0000)
  Convert backslashes (\) found in .inf files to forward
  slashes (/).  The python os.path.normpath does not do
  this convertion (only the reverse, and only if on
  Windows).

  Without this change, a .inf file using backslashes will
  not build under Linux.

  It should be noted that it is still recommend that .inf
  files utilize forward slashes for paths, rather than
  backslashes.

git-svn-id: https://buildtools.tianocore.org/svn/buildtools/trunk/BaseTools@997 7335b38e-4728-0410-8992-fb3ffe349368

Source/Python/Common/InfClassObject.py

index ef542dd..ad8b158 100755 (executable)
@@ -626,6 +626,7 @@ class Inf(InfObject):
                 List = GetSplitValueList(ItemNew)\r
                 if len(List) < 5 or len(List) > 9:\r
                     RaiseParserError(Item, 'Sources', File, '<Filename>[|<Family>[|<TagName>[|<ToolCode>[|<PcdFeatureFlag>]]]]')\r
+                List[0] = List[0].replace('\\', '/')\r
                 List[0] = NormPath(List[0], self._Macro)\r
                 CheckFileExist(self.Identification.FileRelativePath, List[0], File, 'Sources', Item)\r
                 CheckPcdTokenInfo(List[4], 'Sources', File)\r