* [Patch] Revert "BaseTools: Improve GetDependencyList function"
@ 2019-09-20 6:00 Liming Gao
2019-09-20 10:30 ` [edk2-devel] " Bob Feng
0 siblings, 1 reply; 2+ messages in thread
From: Liming Gao @ 2019-09-20 6:00 UTC (permalink / raw)
To: devel; +Cc: Bob Feng
This reverts commit bc9e4194cf3edaf9524c83098ba3f72008c70190.
This change causes the dependent header files are missing in Makefile.
It makes the incremental build not work. So, revert this change.
Cc: Bob Feng<bob.c.feng@Intel.com>
Signed-off-by: Liming Gao <liming.gao@intel.com>
---
BaseTools/Source/Python/AutoGen/GenMake.py | 29 +++++++++++++----------------
1 file changed, 13 insertions(+), 16 deletions(-)
diff --git a/BaseTools/Source/Python/AutoGen/GenMake.py b/BaseTools/Source/Python/AutoGen/GenMake.py
index 940136248f..2fe0e78bec 100755
--- a/BaseTools/Source/Python/AutoGen/GenMake.py
+++ b/BaseTools/Source/Python/AutoGen/GenMake.py
@@ -1696,25 +1696,22 @@ def GetDependencyList(AutoGenObject, FileCache, File, ForceList, SearchPathList)
CurrentFileDependencyList = DepDb[F]
else:
try:
- with open(F.Path, 'rb') as Fd:
- FileContent = Fd.read(1)
- Fd.seek(0)
- if not FileContent:
- continue
- if FileContent[0] == 0xff or FileContent[0] == 0xfe:
- FileContent2 = Fd.read()
- FileContent2 = FileContent2.decode('utf-16')
- IncludedFileList = gIncludePattern.findall(FileContent2)
- else:
- FileLines = Fd.readlines()
- FileContent2 = [line for line in FileLines if str(line).lstrip("#\t ")[:8] == "include "]
- simpleFileContent="".join(FileContent2)
-
- IncludedFileList = gIncludePattern.findall(simpleFileContent)
+ Fd = open(F.Path, 'rb')
+ FileContent = Fd.read()
+ Fd.close()
except BaseException as X:
EdkLogger.error("build", FILE_OPEN_FAILURE, ExtraData=F.Path + "\n\t" + str(X))
- if not FileContent:
+ if len(FileContent) == 0:
+ continue
+ try:
+ if FileContent[0] == 0xff or FileContent[0] == 0xfe:
+ FileContent = FileContent.decode('utf-16')
+ else:
+ FileContent = FileContent.decode()
+ except:
+ # The file is not txt file. for example .mcb file
continue
+ IncludedFileList = gIncludePattern.findall(FileContent)
for Inc in IncludedFileList:
Inc = Inc.strip()
--
2.13.0.windows.1
^ permalink raw reply related [flat|nested] 2+ messages in thread
* Re: [edk2-devel] [Patch] Revert "BaseTools: Improve GetDependencyList function"
2019-09-20 6:00 [Patch] Revert "BaseTools: Improve GetDependencyList function" Liming Gao
@ 2019-09-20 10:30 ` Bob Feng
0 siblings, 0 replies; 2+ messages in thread
From: Bob Feng @ 2019-09-20 10:30 UTC (permalink / raw)
To: devel@edk2.groups.io, Gao, Liming
I agree.
Reviewed-by: Bob Feng<bob.c.feng@Intel.com>
-----Original Message-----
From: devel@edk2.groups.io [mailto:devel@edk2.groups.io] On Behalf Of Liming Gao
Sent: Friday, September 20, 2019 2:00 PM
To: devel@edk2.groups.io
Cc: Feng, Bob C <bob.c.feng@intel.com>
Subject: [edk2-devel] [Patch] Revert "BaseTools: Improve GetDependencyList function"
This reverts commit bc9e4194cf3edaf9524c83098ba3f72008c70190.
This change causes the dependent header files are missing in Makefile.
It makes the incremental build not work. So, revert this change.
Cc: Bob Feng<bob.c.feng@Intel.com>
Signed-off-by: Liming Gao <liming.gao@intel.com>
---
BaseTools/Source/Python/AutoGen/GenMake.py | 29 +++++++++++++----------------
1 file changed, 13 insertions(+), 16 deletions(-)
diff --git a/BaseTools/Source/Python/AutoGen/GenMake.py b/BaseTools/Source/Python/AutoGen/GenMake.py
index 940136248f..2fe0e78bec 100755
--- a/BaseTools/Source/Python/AutoGen/GenMake.py
+++ b/BaseTools/Source/Python/AutoGen/GenMake.py
@@ -1696,25 +1696,22 @@ def GetDependencyList(AutoGenObject, FileCache, File, ForceList, SearchPathList)
CurrentFileDependencyList = DepDb[F]
else:
try:
- with open(F.Path, 'rb') as Fd:
- FileContent = Fd.read(1)
- Fd.seek(0)
- if not FileContent:
- continue
- if FileContent[0] == 0xff or FileContent[0] == 0xfe:
- FileContent2 = Fd.read()
- FileContent2 = FileContent2.decode('utf-16')
- IncludedFileList = gIncludePattern.findall(FileContent2)
- else:
- FileLines = Fd.readlines()
- FileContent2 = [line for line in FileLines if str(line).lstrip("#\t ")[:8] == "include "]
- simpleFileContent="".join(FileContent2)
-
- IncludedFileList = gIncludePattern.findall(simpleFileContent)
+ Fd = open(F.Path, 'rb')
+ FileContent = Fd.read()
+ Fd.close()
except BaseException as X:
EdkLogger.error("build", FILE_OPEN_FAILURE, ExtraData=F.Path + "\n\t" + str(X))
- if not FileContent:
+ if len(FileContent) == 0:
+ continue
+ try:
+ if FileContent[0] == 0xff or FileContent[0] == 0xfe:
+ FileContent = FileContent.decode('utf-16')
+ else:
+ FileContent = FileContent.decode()
+ except:
+ # The file is not txt file. for example .mcb file
continue
+ IncludedFileList = gIncludePattern.findall(FileContent)
for Inc in IncludedFileList:
Inc = Inc.strip()
--
2.13.0.windows.1
^ permalink raw reply related [flat|nested] 2+ messages in thread
end of thread, other threads:[~2019-09-20 10:30 UTC | newest]
Thread overview: 2+ messages (download: mbox.gz follow: Atom feed
-- links below jump to the message on this page --
2019-09-20 6:00 [Patch] Revert "BaseTools: Improve GetDependencyList function" Liming Gao
2019-09-20 10:30 ` [edk2-devel] " Bob Feng
This is a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox