Bob, Thanks for the quick fix. I have tested this change with the Vlv2TbltDevicePkg updates that are under review that include the use of a PREBUILD script. It works when the .cache dir is not present.
Reviewed-by: Michael D Kinney <michael.d.kin...@intel.com> Mike > -----Original Message----- > From: Feng, Bob C > Sent: Thursday, July 18, 2019 7:24 PM > To: devel@edk2.groups.io > Cc: Feng, Bob C <bob.c.f...@intel.com>; Kinney, Michael > D <michael.d.kin...@intel.com>; Gao, Liming > <liming....@intel.com> > Subject: [Patch 1/1 V2] BaseTools: Create ".cache" > folder when initialize Build object > > 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.f...@intel.com> > Cc: Michael D Kinney <michael.d.kin...@intel.com> > Cc: Liming Gao <liming....@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 (#44002): https://edk2.groups.io/g/devel/message/44002 Mute This Topic: https://groups.io/mt/32522427/21656 Group Owner: devel+ow...@edk2.groups.io Unsubscribe: https://edk2.groups.io/g/devel/unsub [arch...@mail-archive.com] -=-=-=-=-=-=-=-=-=-=-=-