* [PATCH V2] BaseTools:Add the Judgment Method of "--exclude"
@ 2019-06-28 7:01 Fan, ZhijuX
2019-07-08 0:44 ` Liming Gao
2019-08-07 12:01 ` Liming Gao
0 siblings, 2 replies; 3+ messages in thread
From: Fan, ZhijuX @ 2019-06-28 7:01 UTC (permalink / raw)
To: devel@edk2.groups.io; +Cc: Gao, Liming, Feng, Bob C
[-- Attachment #1: Type: text/plain, Size: 2757 bytes --]
BZ: https://bugzilla.tianocore.org/show_bug.cgi?id=1944
--exclude cannot be used under certain circumstances
1.The value of the parameter USES an absolute path
2.The value of Exclude parameters is based on the value
of the Path parameter
Neither of these approaches currently works
This patch is going to fix that issue.
Cc: Liming Gao <liming.gao@intel.com>
Cc: Bob Feng <bob.c.feng@intel.com>
Signed-off-by: Zhiju.Fan <zhijux.fan@intel.com>
---
keep original behavior on
--exclude for the directory name or file name.
BaseTools/Scripts/FormatDosFiles.py | 18 +++++++++++++++++-
1 file changed, 17 insertions(+), 1 deletion(-)
diff --git a/BaseTools/Scripts/FormatDosFiles.py b/BaseTools/Scripts/FormatDosFiles.py
index d9a880f299..3150bef3c2 100644
--- a/BaseTools/Scripts/FormatDosFiles.py
+++ b/BaseTools/Scripts/FormatDosFiles.py
@@ -20,7 +20,7 @@ import copy
__prog__ = 'FormatDosFiles'
__version__ = '%s Version %s' % (__prog__, '0.10 ')
-__copyright__ = 'Copyright (c) 2018, Intel Corporation. All rights reserved.'
+__copyright__ = 'Copyright (c) 2018-2019, Intel Corporation. All rights reserved.'
__description__ = 'Convert source files to meet the EDKII C Coding Standards Specification.\n'
DEFAULT_EXT_LIST = ['.h', '.c', '.nasm', '.nasmb', '.asm', '.S', '.inf', '.dec', '.dsc', '.fdf', '.uni', '.asl', '.aslc', '.vfr', '.idf', '.txt', '.bat', '.py']
@@ -46,10 +46,26 @@ def FormatFile(FilePath, Args):
def FormatFilesInDir(DirPath, ExtList, Args):
FileList = []
+ ExcludeDir = DirPath
for DirPath, DirNames, FileNames in os.walk(DirPath):
if Args.Exclude:
DirNames[:] = [d for d in DirNames if d not in Args.Exclude]
FileNames[:] = [f for f in FileNames if f not in Args.Exclude]
+ Continue = False
+ for Path in Args.Exclude:
+ if not os.path.isdir(Path) and not os.path.isfile(Path):
+ Path = os.path.join(ExcludeDir, Path)
+ if os.path.isdir(Path) and Path.endswith(DirPath):
+ DirNames[:] = []
+ Continue = True
+ elif os.path.isfile(Path):
+ FilePaths = FileNames
+ for ItemPath in FilePaths:
+ FilePath = os.path.join(DirPath, ItemPath)
+ if Path.endswith(FilePath):
+ FileNames.remove(ItemPath)
+ if Continue:
+ continue
for FileName in [f for f in FileNames if any(f.endswith(ext) for ext in ExtList)]:
FileList.append(os.path.join(DirPath, FileName))
for File in FileList:
--
2.14.1.windows.1
[-- Attachment #2: winmail.dat --]
[-- Type: application/ms-tnef, Size: 4484 bytes --]
^ permalink raw reply related [flat|nested] 3+ messages in thread
* Re: [PATCH V2] BaseTools:Add the Judgment Method of "--exclude"
2019-06-28 7:01 [PATCH V2] BaseTools:Add the Judgment Method of "--exclude" Fan, ZhijuX
@ 2019-07-08 0:44 ` Liming Gao
2019-08-07 12:01 ` Liming Gao
1 sibling, 0 replies; 3+ messages in thread
From: Liming Gao @ 2019-07-08 0:44 UTC (permalink / raw)
To: Fan, ZhijuX, devel@edk2.groups.io; +Cc: Feng, Bob C
Zhiju:
Thanks for your fix. Can you list your test case?
Thanks
Liming
>-----Original Message-----
>From: Fan, ZhijuX
>Sent: Friday, June 28, 2019 3:01 PM
>To: devel@edk2.groups.io
>Cc: Gao, Liming <liming.gao@intel.com>; Feng, Bob C <bob.c.feng@intel.com>
>Subject: [PATCH V2] BaseTools:Add the Judgment Method of "--exclude"
>
>BZ: https://bugzilla.tianocore.org/show_bug.cgi?id=1944
>
>--exclude cannot be used under certain circumstances
>1.The value of the parameter USES an absolute path
>2.The value of Exclude parameters is based on the value
> of the Path parameter
>Neither of these approaches currently works
>
>This patch is going to fix that issue.
>
>Cc: Liming Gao <liming.gao@intel.com>
>Cc: Bob Feng <bob.c.feng@intel.com>
>Signed-off-by: Zhiju.Fan <zhijux.fan@intel.com>
>---
>keep original behavior on
>--exclude for the directory name or file name.
>
> BaseTools/Scripts/FormatDosFiles.py | 18 +++++++++++++++++-
> 1 file changed, 17 insertions(+), 1 deletion(-)
>
>diff --git a/BaseTools/Scripts/FormatDosFiles.py
>b/BaseTools/Scripts/FormatDosFiles.py
>index d9a880f299..3150bef3c2 100644
>--- a/BaseTools/Scripts/FormatDosFiles.py
>+++ b/BaseTools/Scripts/FormatDosFiles.py
>@@ -20,7 +20,7 @@ import copy
>
> __prog__ = 'FormatDosFiles'
> __version__ = '%s Version %s' % (__prog__, '0.10 ')
>-__copyright__ = 'Copyright (c) 2018, Intel Corporation. All rights reserved.'
>+__copyright__ = 'Copyright (c) 2018-2019, Intel Corporation. All rights
>reserved.'
> __description__ = 'Convert source files to meet the EDKII C Coding Standards
>Specification.\n'
> DEFAULT_EXT_LIST = ['.h', '.c', '.nasm', '.nasmb', '.asm', '.S', '.inf', '.dec', '.dsc',
>'.fdf', '.uni', '.asl', '.aslc', '.vfr', '.idf', '.txt', '.bat', '.py']
>
>@@ -46,10 +46,26 @@ def FormatFile(FilePath, Args):
> def FormatFilesInDir(DirPath, ExtList, Args):
>
> FileList = []
>+ ExcludeDir = DirPath
> for DirPath, DirNames, FileNames in os.walk(DirPath):
> if Args.Exclude:
> DirNames[:] = [d for d in DirNames if d not in Args.Exclude]
> FileNames[:] = [f for f in FileNames if f not in Args.Exclude]
>+ Continue = False
>+ for Path in Args.Exclude:
>+ if not os.path.isdir(Path) and not os.path.isfile(Path):
>+ Path = os.path.join(ExcludeDir, Path)
>+ if os.path.isdir(Path) and Path.endswith(DirPath):
>+ DirNames[:] = []
>+ Continue = True
>+ elif os.path.isfile(Path):
>+ FilePaths = FileNames
>+ for ItemPath in FilePaths:
>+ FilePath = os.path.join(DirPath, ItemPath)
>+ if Path.endswith(FilePath):
>+ FileNames.remove(ItemPath)
>+ if Continue:
>+ continue
> for FileName in [f for f in FileNames if any(f.endswith(ext) for ext in
>ExtList)]:
> FileList.append(os.path.join(DirPath, FileName))
> for File in FileList:
>--
>2.14.1.windows.1
^ permalink raw reply [flat|nested] 3+ messages in thread
* Re: [PATCH V2] BaseTools:Add the Judgment Method of "--exclude"
2019-06-28 7:01 [PATCH V2] BaseTools:Add the Judgment Method of "--exclude" Fan, ZhijuX
2019-07-08 0:44 ` Liming Gao
@ 2019-08-07 12:01 ` Liming Gao
1 sibling, 0 replies; 3+ messages in thread
From: Liming Gao @ 2019-08-07 12:01 UTC (permalink / raw)
To: Fan, ZhijuX, devel@edk2.groups.io; +Cc: Feng, Bob C
Sorry for the missing. Reviewed-by: Liming Gao <liming.gao@intel.com>
>-----Original Message-----
>From: Fan, ZhijuX
>Sent: Friday, June 28, 2019 3:01 PM
>To: devel@edk2.groups.io
>Cc: Gao, Liming <liming.gao@intel.com>; Feng, Bob C <bob.c.feng@intel.com>
>Subject: [PATCH V2] BaseTools:Add the Judgment Method of "--exclude"
>
>BZ: https://bugzilla.tianocore.org/show_bug.cgi?id=1944
>
>--exclude cannot be used under certain circumstances
>1.The value of the parameter USES an absolute path
>2.The value of Exclude parameters is based on the value
> of the Path parameter
>Neither of these approaches currently works
>
>This patch is going to fix that issue.
>
>Cc: Liming Gao <liming.gao@intel.com>
>Cc: Bob Feng <bob.c.feng@intel.com>
>Signed-off-by: Zhiju.Fan <zhijux.fan@intel.com>
>---
>keep original behavior on
>--exclude for the directory name or file name.
>
> BaseTools/Scripts/FormatDosFiles.py | 18 +++++++++++++++++-
> 1 file changed, 17 insertions(+), 1 deletion(-)
>
>diff --git a/BaseTools/Scripts/FormatDosFiles.py
>b/BaseTools/Scripts/FormatDosFiles.py
>index d9a880f299..3150bef3c2 100644
>--- a/BaseTools/Scripts/FormatDosFiles.py
>+++ b/BaseTools/Scripts/FormatDosFiles.py
>@@ -20,7 +20,7 @@ import copy
>
> __prog__ = 'FormatDosFiles'
> __version__ = '%s Version %s' % (__prog__, '0.10 ')
>-__copyright__ = 'Copyright (c) 2018, Intel Corporation. All rights reserved.'
>+__copyright__ = 'Copyright (c) 2018-2019, Intel Corporation. All rights
>reserved.'
> __description__ = 'Convert source files to meet the EDKII C Coding Standards
>Specification.\n'
> DEFAULT_EXT_LIST = ['.h', '.c', '.nasm', '.nasmb', '.asm', '.S', '.inf', '.dec', '.dsc',
>'.fdf', '.uni', '.asl', '.aslc', '.vfr', '.idf', '.txt', '.bat', '.py']
>
>@@ -46,10 +46,26 @@ def FormatFile(FilePath, Args):
> def FormatFilesInDir(DirPath, ExtList, Args):
>
> FileList = []
>+ ExcludeDir = DirPath
> for DirPath, DirNames, FileNames in os.walk(DirPath):
> if Args.Exclude:
> DirNames[:] = [d for d in DirNames if d not in Args.Exclude]
> FileNames[:] = [f for f in FileNames if f not in Args.Exclude]
>+ Continue = False
>+ for Path in Args.Exclude:
>+ if not os.path.isdir(Path) and not os.path.isfile(Path):
>+ Path = os.path.join(ExcludeDir, Path)
>+ if os.path.isdir(Path) and Path.endswith(DirPath):
>+ DirNames[:] = []
>+ Continue = True
>+ elif os.path.isfile(Path):
>+ FilePaths = FileNames
>+ for ItemPath in FilePaths:
>+ FilePath = os.path.join(DirPath, ItemPath)
>+ if Path.endswith(FilePath):
>+ FileNames.remove(ItemPath)
>+ if Continue:
>+ continue
> for FileName in [f for f in FileNames if any(f.endswith(ext) for ext in
>ExtList)]:
> FileList.append(os.path.join(DirPath, FileName))
> for File in FileList:
>--
>2.14.1.windows.1
^ permalink raw reply [flat|nested] 3+ messages in thread
end of thread, other threads:[~2019-08-07 12:01 UTC | newest]
Thread overview: 3+ messages (download: mbox.gz follow: Atom feed
-- links below jump to the message on this page --
2019-06-28 7:01 [PATCH V2] BaseTools:Add the Judgment Method of "--exclude" Fan, ZhijuX
2019-07-08 0:44 ` Liming Gao
2019-08-07 12:01 ` Liming Gao
This is a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox