public inbox for devel@edk2.groups.io
 help / color / mirror / Atom feed
* [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