diff options
author | Yang Gang <yanggang@byosoft.com.cn> | 2024-12-19 14:01:12 +0800 |
---|---|---|
committer | mergify[bot] <37929162+mergify[bot]@users.noreply.github.com> | 2025-01-09 07:25:45 +0000 |
commit | 3ac092cf721010f6f457e268dcbf5be83bfab243 (patch) | |
tree | ed025b52bc1a02b3157a61147f820d34195abdd8 /BaseTools/Source/Python/Common/MultipleWorkspace.py | |
parent | 8593eca04817583c4a00e35e7890f9e056ee22f9 (diff) | |
download | edk2-3ac092cf721010f6f457e268dcbf5be83bfab243.tar.gz edk2-3ac092cf721010f6f457e268dcbf5be83bfab243.tar.bz2 edk2-3ac092cf721010f6f457e268dcbf5be83bfab243.zip |
BaseTools: Clean up os.path.normcase and os.path.normpath usage
Refer to the docs of python, `os.path.normcase(path)` function:
"Normalize the case of a pathname. On Windows, convert all characters in
the pathname to lowercase, and also convert forward slashes to backward
slashes. On other operating systems, return the path unchanged."
`os.path.normpath(path)` also convert forward slashes to backward slashes.
So call `os.path.normcase` after `os.path.normpath` just convert path to
lowercase on Windows(only).
And Windows is case-insensitive but case-preserving.
So the usage of `os.path.normcase(os.path.normpath(path))` can be
simplified to `os.path.normpath(path)`. Then we can use case-preserving
paths rather than lowercase paths in compile_commands.json file
or build log.
But this patch continue to use `os.path.normcase`
when comparing/searching paths.
Signed-off-by: Yang Gang <yanggang@byosoft.com.cn>
Diffstat (limited to 'BaseTools/Source/Python/Common/MultipleWorkspace.py')
-rw-r--r-- | BaseTools/Source/Python/Common/MultipleWorkspace.py | 2 |
1 files changed, 1 insertions, 1 deletions
diff --git a/BaseTools/Source/Python/Common/MultipleWorkspace.py b/BaseTools/Source/Python/Common/MultipleWorkspace.py index ad5d48588b..0ddb14f4b5 100644 --- a/BaseTools/Source/Python/Common/MultipleWorkspace.py +++ b/BaseTools/Source/Python/Common/MultipleWorkspace.py @@ -34,7 +34,7 @@ class MultipleWorkspace(object): #
@classmethod
def convertPackagePath(cls, Ws, Path):
- if str(os.path.normcase (Path)).startswith(Ws):
+ if str(os.path.normcase (os.path.normpath(Path))).startswith(os.path.normcase(os.path.normpath(Ws))):
return os.path.join(Ws, os.path.relpath(Path, Ws))
return Path
|