[edk2-devel] [Patch 1/1 V2] BaseTools: Create ".cache" folder when initialize Build object

Bob Feng bob.c.feng at intel.com
Fri Jul 19 02:24:10 UTC 2019


BZ: https://bugzilla.tianocore.org/show_bug.cgi?id=1986

Create "Conf/.cache" folder as early as possible
so that the later code do need to check
if it exits and then create it.

Signed-off-by: Bob Feng <bob.c.feng at intel.com>
Cc: Michael D Kinney <michael.d.kinney at intel.com>
Cc: Liming Gao <liming.gao at intel.com>
---
V2: Remove the ".cache" creation action in other place.
 BaseTools/Source/Python/Common/Misc.py | 7 +------
 BaseTools/Source/Python/build/build.py | 3 ++-
 2 files changed, 3 insertions(+), 7 deletions(-)

diff --git a/BaseTools/Source/Python/Common/Misc.py b/BaseTools/Source/Python/Common/Misc.py
index 9a63463913d0..27dbdace4252 100644
--- a/BaseTools/Source/Python/Common/Misc.py
+++ b/BaseTools/Source/Python/Common/Misc.py
@@ -244,17 +244,12 @@ def ProcessDuplicatedInf(Path, BaseName, Workspace):
     if '.' in Filename:
         Filename = BaseName + Path.BaseName + Filename[Filename.rfind('.'):]
     else:
         Filename = BaseName + Path.BaseName
 
-    #
-    # If -N is specified on command line, cache is disabled
-    # The directory has to be created
-    #
     DbDir = os.path.split(GlobalData.gDatabasePath)[0]
-    if not os.path.exists(DbDir):
-        os.makedirs(DbDir)
+
     #
     # A temporary INF is copied to database path which must have write permission
     # The temporary will be removed at the end of build
     # In case of name conflict, the file name is
     # FILE_GUIDBaseName (0D1B936F-68F3-4589-AFCC-FB8B7AEBC836module.inf)
diff --git a/BaseTools/Source/Python/build/build.py b/BaseTools/Source/Python/build/build.py
index d6006b651f77..6bc528974db1 100644
--- a/BaseTools/Source/Python/build/build.py
+++ b/BaseTools/Source/Python/build/build.py
@@ -771,11 +771,12 @@ class Build():
             else:
                 # Get standard WORKSPACE/Conf use the absolute path to the WORKSPACE/Conf
                 ConfDirectoryPath = mws.join(self.WorkspaceDir, 'Conf')
         GlobalData.gConfDirectory = ConfDirectoryPath
         GlobalData.gDatabasePath = os.path.normpath(os.path.join(ConfDirectoryPath, GlobalData.gDatabasePath))
-
+        if not os.path.exists(os.path.join(GlobalData.gConfDirectory, '.cache')):
+            os.makedirs(os.path.join(GlobalData.gConfDirectory, '.cache'))
         self.Db = WorkspaceDatabase()
         self.BuildDatabase = self.Db.BuildObject
         self.Platform = None
         self.ToolChainFamily = None
         self.LoadFixAddress = 0
-- 
2.20.1.windows.1


-=-=-=-=-=-=-=-=-=-=-=-
Groups.io Links: You receive all messages sent to this group.

View/Reply Online (#43994): https://edk2.groups.io/g/devel/message/43994
Mute This Topic: https://groups.io/mt/32522427/1813853
Group Owner: devel+owner at edk2.groups.io
Unsubscribe: https://edk2.groups.io/g/devel/unsub  [edk2-devel-archive at redhat.com]
-=-=-=-=-=-=-=-=-=-=-=-




More information about the edk2-devel-archive mailing list